[Модуль] Charts (charts)
Модератор: immortal
- sergejey
- Site Admin
- Сообщения: 4286
- Зарегистрирован: Пн сен 05, 2011 6:48 pm
- Откуда: Минск, Беларусь
- Благодарил (а): 76 раз
- Поблагодарили: 1559 раз
- Контактная информация:
[Модуль] Charts (charts)
В маркет добавлен новый модуль Charts. Модуль предназначен для построения графиков на базе библиотеки HighCharts.
Собственно, в том или ином виде графики были всегда и всегда были нарекания по их работе. Это очередная попытка навести с ними порядок.
Итак, после установки модуля, в разделе Объекты появляется новый пункт Charts:
В этом разделе можно создавать такие сущности, как график, задавая ему название (опционально под-название) и определяя лимит времени для выборки данных:
После создания графика, можно перейти в раздел данных, где добавляются непосредственно данные:
Для каждого элемента данных задаётся название, единица измерения, связанное свойство, а так же приоритет вывода (чем выше, тем раньше идёт).
Собственно, после добавления данных результат можно сразу видеть под настройками:
Там же идёт небольшая подсказка с кодом, который можно вставить в пункт меню (тип HTML), на домашнюю страницу либо в сцену.
Пример вызова: [#module name="charts" id="1" width="100%" height="400" interval="3600"#] (кроме id все параметры не обязательны)
width -- ширина графика (может быть в процентах и в пикселях)
height -- высота графика
interval --период обновления графика (в секундах)
По возможностям:
* После вставки кода вывода графика всегда можно вернуться и поменять его параметры
* Поддерживается тёмная/светлая тема оформления
* Два (пока) типа графиков -- линия и столбцы
* Если подключаемые свойства имеют одинаковое название (например Room1.temp и Room2.temp), то данные будут выводится в масштабе одной шкалы, иначе для каждого свойства своя шкала (как в примере выше)
В будущем планируется добавить другие типы графиков, в том числе не только исторические, но и "одномоментные" (типа спидометра и т.д.)
Пример дополнительных значений (цвет шкалы)
ещё пример доп значений (цвет шкалы)
Некоторые индикаторы не модуля
Ещё индикаторы
Собственно, в том или ином виде графики были всегда и всегда были нарекания по их работе. Это очередная попытка навести с ними порядок.
Итак, после установки модуля, в разделе Объекты появляется новый пункт Charts:
В этом разделе можно создавать такие сущности, как график, задавая ему название (опционально под-название) и определяя лимит времени для выборки данных:
После создания графика, можно перейти в раздел данных, где добавляются непосредственно данные:
Для каждого элемента данных задаётся название, единица измерения, связанное свойство, а так же приоритет вывода (чем выше, тем раньше идёт).
Собственно, после добавления данных результат можно сразу видеть под настройками:
Там же идёт небольшая подсказка с кодом, который можно вставить в пункт меню (тип HTML), на домашнюю страницу либо в сцену.
Пример вызова: [#module name="charts" id="1" width="100%" height="400" interval="3600"#] (кроме id все параметры не обязательны)
width -- ширина графика (может быть в процентах и в пикселях)
height -- высота графика
interval --период обновления графика (в секундах)
По возможностям:
* После вставки кода вывода графика всегда можно вернуться и поменять его параметры
* Поддерживается тёмная/светлая тема оформления
* Два (пока) типа графиков -- линия и столбцы
* Если подключаемые свойства имеют одинаковое название (например Room1.temp и Room2.temp), то данные будут выводится в масштабе одной шкалы, иначе для каждого свойства своя шкала (как в примере выше)
В будущем планируется добавить другие типы графиков, в том числе не только исторические, но и "одномоментные" (типа спидометра и т.д.)
Пример дополнительных значений (цвет шкалы)
ещё пример доп значений (цвет шкалы)
Некоторые индикаторы не модуля
Ещё индикаторы
- За это сообщение автора sergejey поблагодарили (всего 11):
- Amarok (Сб мар 05, 2016 10:03 am) • olehs (Сб мар 05, 2016 12:56 pm) • Alien (Вс мар 06, 2016 10:50 am) • Molostov (Вс мар 06, 2016 9:51 pm) • ipz (Вс мар 06, 2016 11:01 pm) • skysilver (Вт мар 08, 2016 1:27 pm) • Otto (Чт апр 07, 2016 8:48 pm) • consul (Вт фев 06, 2018 3:50 pm) • AlexL (Ср май 23, 2018 10:09 am) • Мазур (Ср ноя 20, 2019 7:25 pm) и ещё один
- Рейтинг: 12.79%
Сергей Джейгало, разработчик MajorDoMo
Идеи, ошибки -- за предложениями по исправлению и развитию слежу только здесь!
Профиль Connect -- информация, сотрудничество, услуги
-
- Сообщения: 52
- Зарегистрирован: Пт янв 17, 2014 1:47 am
- Откуда: Карпинск, Свердловская область
- Благодарил (а): 135 раз
- Поблагодарили: 13 раз
Re: Модуль Charts
Попробовал на одном графике показать температуру внутри и снаружи. Внутри показывает правильно, а у наружней температуры игнорирует минусовое значение, показывает как плюсовое.
- Вложения
-
- Реальная уличная температура
- temp2.PNG (11.94 КБ) 29744 просмотра
-
- temp.PNG (160.43 КБ) 29744 просмотра
- Рейтинг: 1.16%
- sergejey
- Site Admin
- Сообщения: 4286
- Зарегистрирован: Пн сен 05, 2011 6:48 pm
- Откуда: Минск, Беларусь
- Благодарил (а): 76 раз
- Поблагодарили: 1559 раз
- Контактная информация:
Re: Модуль Charts
Буду разбираться, ещё не до конца отлажен процесс )
update: кажется понял -- модуль решил, что это разные единицы и сделал две шкалы, причём не понятно почему правая шкала отображается без значений, хотя, скорее всего, там должны быть отрицательные. Внесу изменения, чтобы проверялись не только названия свойств, но и заданная единица измерения -- если она одинаковая, то будет одна шкала.
update: кажется понял -- модуль решил, что это разные единицы и сделал две шкалы, причём не понятно почему правая шкала отображается без значений, хотя, скорее всего, там должны быть отрицательные. Внесу изменения, чтобы проверялись не только названия свойств, но и заданная единица измерения -- если она одинаковая, то будет одна шкала.
Сергей Джейгало, разработчик MajorDoMo
Идеи, ошибки -- за предложениями по исправлению и развитию слежу только здесь!
Профиль Connect -- информация, сотрудничество, услуги
- sergejey
- Site Admin
- Сообщения: 4286
- Зарегистрирован: Пн сен 05, 2011 6:48 pm
- Откуда: Минск, Беларусь
- Благодарил (а): 76 раз
- Поблагодарили: 1559 раз
- Контактная информация:
Re: Модуль Charts
Внёс исправления:
* Если заданы одинаковые единицы измерения, то будет одна шкала, даже если название свойств разное
* Добавил тип графика Area
* Включил возможность увеличения отрезка графика (нажать и перетянуть мышью через интересуемую область)
* Исправил проблему со сдвигом времени в последней точке (в примерах горизонтальная линия в конце графика)
* Если заданы одинаковые единицы измерения, то будет одна шкала, даже если название свойств разное
* Добавил тип графика Area
* Включил возможность увеличения отрезка графика (нажать и перетянуть мышью через интересуемую область)
* Исправил проблему со сдвигом времени в последней точке (в примерах горизонтальная линия в конце графика)
- Рейтинг: 1.16%
Сергей Джейгало, разработчик MajorDoMo
Идеи, ошибки -- за предложениями по исправлению и развитию слежу только здесь!
Профиль Connect -- информация, сотрудничество, услуги
-
- Сообщения: 1115
- Зарегистрирован: Вс июн 14, 2015 11:08 am
- Благодарил (а): 85 раз
- Поблагодарили: 342 раза
Re: Модуль Charts
Сергей, а как поменять тему на светлую?
И еще хотелось бы иметь возможность убрать точки.
Вообще настроек у HighChart много, можно как-то к ним доступ получать?
И еще хотелось бы иметь возможность убрать точки.
Вообще настроек у HighChart много, можно как-то к ним доступ получать?
- sergejey
- Site Admin
- Сообщения: 4286
- Зарегистрирован: Пн сен 05, 2011 6:48 pm
- Откуда: Минск, Беларусь
- Благодарил (а): 76 раз
- Поблагодарили: 1559 раз
- Контактная информация:
Re: Модуль Charts
Да, тема зависит от общей темы системы (тёмная/светлая).olehs писал(а):Сергей, а как поменять тему на светлую?
И еще хотелось бы иметь возможность убрать точки.
Вообще настроек у HighChart много, можно как-то к ним доступ получать?
Доступ к настройкам... ну надо подумать. Я не хотел бы усложнять интерфейс большим количеством настроек, так что пока вопрос открытый.
Точки можно убрать, если поставить тип графика Area.
P.S. один из вариантов тонкой настройки это перенести файл .\templates\charts\action_usual.html в .\templates_alt\charts\ , но я пока не рекомендовал бы, т.к. модуль ещё в разработке и основной шаблон будет дорабатываться.
Сергей Джейгало, разработчик MajorDoMo
Идеи, ошибки -- за предложениями по исправлению и развитию слежу только здесь!
Профиль Connect -- информация, сотрудничество, услуги
-
- Сообщения: 1115
- Зарегистрирован: Вс июн 14, 2015 11:08 am
- Благодарил (а): 85 раз
- Поблагодарили: 342 раза
Re: Модуль Charts
Могу предложить вариант, не перегружающий настройками, но он скорее для гиков )sergejey писал(а): Доступ к настройкам... ну надо подумать. Я не хотел бы усложнять интерфейс большим количеством настроек, так что пока вопрос открытый.
В настройки вынести вызов кода/скрипта. Код/скрипт должны вернуть JSON-объект с нужными настройками. Этот объект "смерджить" с объектом инициализации Highcharts.Chart
-
- Сообщения: 52
- Зарегистрирован: Пт янв 17, 2014 1:47 am
- Откуда: Карпинск, Свердловская область
- Благодарил (а): 135 раз
- Поблагодарили: 13 раз
Re: Модуль Charts
Попробовал снова. Оставил вообще только один график - уличную температуру. Всё равно шкала в плюсе, по крайней мере, визуально. Всё это время температура отрицательная.
- Вложения
-
- temp.PNG (103.35 КБ) 29635 просмотров
- Рейтинг: 1.16%
- sergejey
- Site Admin
- Сообщения: 4286
- Зарегистрирован: Пн сен 05, 2011 6:48 pm
- Откуда: Минск, Беларусь
- Благодарил (а): 76 раз
- Поблагодарили: 1559 раз
- Контактная информация:
Re: Модуль Charts
Нашёл ошибку с отрицательными значениями -- исправилMolostov писал(а):Попробовал снова. Оставил вообще только один график - уличную температуру. Всё равно шкала в плюсе, по крайней мере, визуально. Всё это время температура отрицательная.
- Рейтинг: 1.16%
Сергей Джейгало, разработчик MajorDoMo
Идеи, ошибки -- за предложениями по исправлению и развитию слежу только здесь!
Профиль Connect -- информация, сотрудничество, услуги