[Модуль] Charts (charts)

Разработка дополнительных модулей, подключение различных приложений.

Модератор: immortal

Аватара пользователя
sergejey
Site Admin
Сообщения: 4286
Зарегистрирован: Пн сен 05, 2011 6:48 pm
Откуда: Минск, Беларусь
Контактная информация:

[Модуль] Charts (charts)

Сообщение sergejey »

В маркет добавлен новый модуль Charts. Модуль предназначен для построения графиков на базе библиотеки HighCharts.
Собственно, в том или ином виде графики были всегда и всегда были нарекания по их работе. Это очередная попытка навести с ними порядок.

Итак, после установки модуля, в разделе Объекты появляется новый пункт Charts:
Изображение

В этом разделе можно создавать такие сущности, как график, задавая ему название (опционально под-название) и определяя лимит времени для выборки данных:
Изображение

После создания графика, можно перейти в раздел данных, где добавляются непосредственно данные:
Изображение

Для каждого элемента данных задаётся название, единица измерения, связанное свойство, а так же приоритет вывода (чем выше, тем раньше идёт).

Собственно, после добавления данных результат можно сразу видеть под настройками:
Изображение

Там же идёт небольшая подсказка с кодом, который можно вставить в пункт меню (тип HTML), на домашнюю страницу либо в сцену.
Пример вызова: [#module name="charts" id="1" width="100%" height="400" interval="3600"#] (кроме id все параметры не обязательны)
width -- ширина графика (может быть в процентах и в пикселях)
height -- высота графика
interval --период обновления графика (в секундах)

По возможностям:
* После вставки кода вывода графика всегда можно вернуться и поменять его параметры
* Поддерживается тёмная/светлая тема оформления
* Два (пока) типа графиков -- линия и столбцы
* Если подключаемые свойства имеют одинаковое название (например Room1.temp и Room2.temp), то данные будут выводится в масштабе одной шкалы, иначе для каждого свойства своя шкала (как в примере выше)

В будущем планируется добавить другие типы графиков, в том числе не только исторические, но и "одномоментные" (типа спидометра и т.д.)

Пример дополнительных значений (цвет шкалы)
ещё пример доп значений (цвет шкалы)
Некоторые индикаторы не модуля
Ещё индикаторы

Сергей Джейгало, разработчик MajorDoMo
Идеи, ошибки -- за предложениями по исправлению и развитию слежу только здесь!
Профиль Connect -- информация, сотрудничество, услуги
Molostov
Сообщения: 53
Зарегистрирован: Пт янв 17, 2014 1:47 am
Откуда: Карпинск, Свердловская область

Re: Модуль Charts

Сообщение Molostov »

Попробовал на одном графике показать температуру внутри и снаружи. Внутри показывает правильно, а у наружней температуры игнорирует минусовое значение, показывает как плюсовое.
Вложения
Реальная уличная температура
Реальная уличная температура
temp2.PNG (11.94 КБ) 32770 просмотров
temp.PNG
temp.PNG (160.43 КБ) 32770 просмотров
Аватара пользователя
sergejey
Site Admin
Сообщения: 4286
Зарегистрирован: Пн сен 05, 2011 6:48 pm
Откуда: Минск, Беларусь
Контактная информация:

Re: Модуль Charts

Сообщение sergejey »

Буду разбираться, ещё не до конца отлажен процесс )

update: кажется понял -- модуль решил, что это разные единицы и сделал две шкалы, причём не понятно почему правая шкала отображается без значений, хотя, скорее всего, там должны быть отрицательные. Внесу изменения, чтобы проверялись не только названия свойств, но и заданная единица измерения -- если она одинаковая, то будет одна шкала.

Сергей Джейгало, разработчик MajorDoMo
Идеи, ошибки -- за предложениями по исправлению и развитию слежу только здесь!
Профиль Connect -- информация, сотрудничество, услуги
Аватара пользователя
sergejey
Site Admin
Сообщения: 4286
Зарегистрирован: Пн сен 05, 2011 6:48 pm
Откуда: Минск, Беларусь
Контактная информация:

Re: Модуль Charts

Сообщение sergejey »

Внёс исправления:
* Если заданы одинаковые единицы измерения, то будет одна шкала, даже если название свойств разное
* Добавил тип графика Area
* Включил возможность увеличения отрезка графика (нажать и перетянуть мышью через интересуемую область)
* Исправил проблему со сдвигом времени в последней точке (в примерах горизонтальная линия в конце графика)

Сергей Джейгало, разработчик MajorDoMo
Идеи, ошибки -- за предложениями по исправлению и развитию слежу только здесь!
Профиль Connect -- информация, сотрудничество, услуги
olehs
Сообщения: 1115
Зарегистрирован: Вс июн 14, 2015 11:08 am

Re: Модуль Charts

Сообщение olehs »

Сергей, а как поменять тему на светлую?
И еще хотелось бы иметь возможность убрать точки.
Вообще настроек у HighChart много, можно как-то к ним доступ получать?
olehs
Сообщения: 1115
Зарегистрирован: Вс июн 14, 2015 11:08 am

Re: Модуль Charts

Сообщение olehs »

А, я понял... тема зависит от темы МЖД, верно?
Аватара пользователя
sergejey
Site Admin
Сообщения: 4286
Зарегистрирован: Пн сен 05, 2011 6:48 pm
Откуда: Минск, Беларусь
Контактная информация:

Re: Модуль Charts

Сообщение sergejey »

olehs писал(а):Сергей, а как поменять тему на светлую?
И еще хотелось бы иметь возможность убрать точки.
Вообще настроек у HighChart много, можно как-то к ним доступ получать?
Да, тема зависит от общей темы системы (тёмная/светлая).
Доступ к настройкам... ну надо подумать. Я не хотел бы усложнять интерфейс большим количеством настроек, так что пока вопрос открытый.
Точки можно убрать, если поставить тип графика Area.

P.S. один из вариантов тонкой настройки это перенести файл .\templates\charts\action_usual.html в .\templates_alt\charts\ , но я пока не рекомендовал бы, т.к. модуль ещё в разработке и основной шаблон будет дорабатываться.

Сергей Джейгало, разработчик MajorDoMo
Идеи, ошибки -- за предложениями по исправлению и развитию слежу только здесь!
Профиль Connect -- информация, сотрудничество, услуги
olehs
Сообщения: 1115
Зарегистрирован: Вс июн 14, 2015 11:08 am

Re: Модуль Charts

Сообщение olehs »

sergejey писал(а): Доступ к настройкам... ну надо подумать. Я не хотел бы усложнять интерфейс большим количеством настроек, так что пока вопрос открытый.
Могу предложить вариант, не перегружающий настройками, но он скорее для гиков )

В настройки вынести вызов кода/скрипта. Код/скрипт должны вернуть JSON-объект с нужными настройками. Этот объект "смерджить" с объектом инициализации Highcharts.Chart
Molostov
Сообщения: 53
Зарегистрирован: Пт янв 17, 2014 1:47 am
Откуда: Карпинск, Свердловская область

Re: Модуль Charts

Сообщение Molostov »

Попробовал снова. Оставил вообще только один график - уличную температуру. Всё равно шкала в плюсе, по крайней мере, визуально. Всё это время температура отрицательная.
Вложения
temp.PNG
temp.PNG (103.35 КБ) 32661 просмотр
Аватара пользователя
sergejey
Site Admin
Сообщения: 4286
Зарегистрирован: Пн сен 05, 2011 6:48 pm
Откуда: Минск, Беларусь
Контактная информация:

Re: Модуль Charts

Сообщение sergejey »

Molostov писал(а):Попробовал снова. Оставил вообще только один график - уличную температуру. Всё равно шкала в плюсе, по крайней мере, визуально. Всё это время температура отрицательная.
Нашёл ошибку с отрицательными значениями -- исправил

Сергей Джейгало, разработчик MajorDoMo
Идеи, ошибки -- за предложениями по исправлению и развитию слежу только здесь!
Профиль Connect -- информация, сотрудничество, услуги
Ответить