Возможности
- до 12 серий на одном виджете;
- линии, области, столбцы и точки;
- временной, точечный, круговой, кольцевой и радиальный вид;
- левая и правая оси Y с независимыми диапазонами;
- агрегация больших объёмов исторических данных;
- произвольный период до одного года;
- сравнение текущего периода с прошлым;
- масштабирование, перемещение и обзорная полоса brush;
- цветовые пороги, подписи точек, минимум и максимум;
- горизонтальные, вертикальные и точечные аннотации;
- настраиваемое периодическое обновление без постоянного потока данных.
Добавление на рабочее поле
- Перейдите на нужное рабочее поле.
- Включите режим редактирования.
- Нажмите кнопку «Добавить иконку».
- В окне «Выберите что нужно» найдите раздел «Продвинутые виджеты».
Нажмите на карточку «Расширенный график». Новый виджет появится на рабочем поле. Переместите его в нужное место и при необходимости измените ширину и высоту.
Откройте панель «Свойства» виджета. Все параметры имеют всплывающие пояснения: наведите указатель мыши на название настройки.
Быстрая настройка первого графика
В разделе «Период и обновление» укажите, сколько данных нужно показать. Для первого запуска удобно выбрать 24 часа и обновление 1 минута.
- Нажмите «Добавить серию».
- Введите понятное название, например «Температура».
- Выберите тип источника: устройство рабочего поля или узел Node-RED.
- Выберите источник.
- Выберите параметр, например
temperature.
Сразу после выбора параметра RealIoT проверит базу исторических данных:
- «Исторические данные найдены» — серия может быть построена;
- «Исторические данные не найдены» — сначала настройте запись параметра в историю и дождитесь хотя бы одного значения;
- «Не удалось проверить историю» — проверка временно недоступна; текст ошибки укажет причину.
Для обычного временного графика оставьте тип серии «Линия», форму «Плавная», агрегацию «Среднее» и подходящий интервал агрегации.
Источники данных
| Источник | Когда использовать | Что требуется |
|---|---|---|
| Устройства | Физические и виртуальные устройства, добавленные в текущее рабочее пространство. | Устройство должно иметь Device SN, а выбранный параметр должен записываться в историю. |
| Узлы Node-RED | Виртуальные датчики, числа, переключатели и термостаты, созданные в Node-RED. | Узел должен относиться к этому рабочему пространству и записывать параметр в историю. |
Что такое агрегация
Устройство может записывать значения очень часто. Например, при записи каждые 10 секунд за сутки получится 8640 точек. Показывать их все не всегда полезно и создаёт лишнюю нагрузку. Агрегация объединяет измерения внутри последовательных временных интервалов и создаёт одну итоговую точку на каждый интервал.
Пример: выбраны агрегация «Среднее» и интервал 5 минут. RealIoT берёт все значения с 10:00 до 10:05 и вычисляет одну среднюю точку, затем повторяет расчёт для 10:05–10:10 и так далее.
| Агрегация | Результат для каждого интервала | Применение |
|---|---|---|
| Без агрегации | Все исходные точки без объединения. | Короткие периоды и редкие измерения. |
| Среднее | Среднее арифметическое всех значений. | Температура, влажность, напряжение и другие плавно меняющиеся величины. |
| Минимум | Наименьшее значение. | Контроль минимальной температуры, давления или уровня. |
| Максимум | Наибольшее значение. | Поиск пиков мощности, температуры или нагрузки. |
| Последнее | Последнее значение по времени. | Состояние параметра к концу интервала. |
| Первое | Первое значение по времени. | Состояние параметра в начале интервала. |
| Сумма | Сумма всех значений. | Импульсы, порции, объёмы и другие интервальные величины. |
| Медиана | Срединное значение упорядоченного набора. | Данные с редкими выбросами, которые не должны искажать результат. |
| Диапазон max − min | Разница между максимумом и минимумом. | Оценка колебаний внутри интервала. |
| Разность last − first | Разница между последним и первым значением. | Изменение накопительного счётчика за интервал. |
Интервал агрегации
Интервал агрегации определяет размер временной группы для одной итоговой точки. Меньший интервал даёт больше деталей, но создаёт больше точек и повышает нагрузку.
| Период графика | Рекомендуемый интервал |
|---|---|
| До 1 часа | Без агрегации или 30 секунд – 1 минута |
| До 24 часов | 1–5 минут |
| До 7 дней | 15 минут – 1 час |
| До 1 месяца | 1–6 часов |
| Несколько месяцев | 6 часов – 1 день |
Типы графиков и серий
Общий тип графика
| Тип | Назначение |
|---|---|
| Временной график | Показывает изменение параметров во времени. Поддерживает линии, области, столбцы и точки. |
| Точечный график | Показывает отдельные измерения без обязательного соединения линией. |
| Круговая диаграмма | Сравнивает последние значения нескольких серий как доли круга. |
| Кольцевая диаграмма | То же сравнение долей с пустым центром. |
| Радиальные шкалы | Показывают последние значения относительно заданных Min radial и Max radial. |
Тип отдельной серии
- Линия — универсальное отображение непрерывных измерений.
- Область — линия с цветной заливкой под ней.
- Столбцы — удобны для сумм, расхода и значений по интервалам.
- Точки — показывают отдельные измерения без соединения.
Период и сравнение
Привязка периода
- Последний период — отсчитывается назад от текущего момента.
- От начала — начинается с начала выбранной календарной единицы.
- До конца — заканчивается в конце выбранной календарной единицы.
Смещение периода сдвигает весь график. Например, период 1 день со смещением −1 день показывает предыдущие сутки.
Сравнение с прошлым периодом
Смещение задаётся отдельно для каждой серии. Чтобы сравнить текущую температуру с прошлой неделей:
- создайте первую серию без смещения;
- создайте вторую серию с тем же источником и параметром;
- задайте второй серии смещение 1 неделя;
- выберите другой цвет и понятное название, например «Прошлая неделя».
Обе серии будут совмещены на одной временной шкале. В подсказке над точкой сравниваемой серии отображается фактическое исходное время записи.
Вертикальные оси Y
Две оси позволяют совместить параметры с разными диапазонами и единицами. Например, температуру можно назначить левой оси, а мощность — правой.
| Режим границы | Поведение |
|---|---|
| Авто | Граница рассчитывается по данным. |
| Мягкая граница | Указанное значение используется как желательная граница, но данные могут расширить шкалу. |
| Фиксированная | Шкала строго ограничивается указанным значением. |
Параметр «Выравнивать к кратному» округляет автоматически рассчитанные границы. Например, значение 10 создаёт деления с удобными границами 0, 10, 20 и так далее.
Преобразование и заполнение значений
- Множитель умножает исходное значение. Например, 0,001 переводит ватты в киловатты.
- Смещение значения прибавляется после множителя.
- Инвертировать значение меняет знак числа.
- Заполнение исходных пропусков обрабатывает запись без числового значения.
- Заполнение пустых интервалов обрабатывает интервал, в котором не было записей.
- Продлевать последнее значение продолжает линию до текущего времени или конца графика.
Заголовок и легенда
- Показывать заголовок — выводит название над графиком.
- Значения в заголовке — выводит последние значения выбранных серий.
- Цветные значения — применяет цвет серии или порога.
- Заголовок поверх графика — не уменьшает область построения.
- Показывать легенду — выводит список серий. Нажатием на элемент легенды серию можно скрыть или вернуть.
- Время обновления — показывает момент последной успешной загрузки.
Масштабирование, перемещение и brush
- Масштабирование — изменение диапазона колёсиком мыши или жестом.
- Перемещение — горизонтальный сдвиг увеличенного участка.
- Обзор периода (brush) — небольшая полоса под основным графиком. Проведите по ней, чтобы выбрать нужный временной участок.
- Сбросить масштаб — возвращает исходный диапазон.
Для каждой серии можно отдельно указать, должна ли она отображаться в основной области, заголовке, легенде и обзорной полосе.
Цветовые пороги
Порог меняет цвет серии, когда значение достигает указанного уровня. Пороги сортируются по возрастанию, а для текущего значения применяется последний достигнутый порог.
Пример для температуры:
- 0 °C — синий;
- 18 °C — зелёный;
- 28 °C — оранжевый;
- 35 °C — красный.
Аннотации
| Тип | Назначение |
|---|---|
| Горизонтальная линия | Отмечает важное значение Y: норму, предел или аварийный уровень. |
| Вертикальная линия | Отмечает момент времени: запуск оборудования, событие или изменение режима. |
| Точка | Отмечает конкретное сочетание времени и значения. |
Для аннотации задаются цвет, подпись и ось Y. Аннотацию можно временно скрыть, не удаляя её настройки.
Круговые и радиальные виды
Круговая и кольцевая диаграммы используют последние доступные значения серий. Радиальные шкалы дополнительно требуют диапазон:
- Min radial соответствует 0% шкалы;
- Max radial соответствует 100% шкалы.
Например, для влажности обычно подходят Min radial = 0 и Max radial = 100.
Рекомендации по производительности
RealIoT рассчитан на работу на Raspberry Pi, поэтому настройки графика имеют ограничения по объёму данных.
- для длительных периодов увеличивайте интервал агрегации;
- не используйте режим «Без агрегации» для месяцев частых измерений;
- не включайте подписи точек на плотных графиках;
- используйте обновление раз в 1–5 минут, если более частые данные не нужны;
- разделяйте несвязанные показатели между несколькими виджетами;
- включайте кэширование до обновления, чтобы не загружать одинаковые данные повторно;
- для годового периода используйте интервал не меньше нескольких часов.
Решение проблем
График не появился
- Проверьте, включена ли серия.
- Проверьте, выбран ли источник и параметр.
- Посмотрите результат автоматической проверки истории под полем «Параметр».
- Убедитесь, что серия включена параметром «Показывать на графике».
- Проверьте выбранный период.
История есть, но за выбранный период данных нет
Увеличьте период графика или уберите смещение периода. Автоматическая проверка истории ищет последнюю запись за всё доступное время, а сам график загружает только выбранный диапазон.
Появилось сообщение о слишком большом количестве точек
Увеличьте интервал агрегации, выберите агрегацию вместо исходных данных либо уменьшите период.
Линия имеет разрывы
В указанные моменты данных не было. Если это соответствует смыслу параметра, выберите заполнение «Последним» или «Нулём». Не заполняйте пропуски, если важно видеть реальные перерывы связи.
Одна серия почти не видна рядом с другой
Назначьте серии с другим диапазоном правую ось Y и настройте её границы независимо.
Сравниваемая серия показывает другие даты в подсказке
Это ожидаемо: серия сдвинута на текущую шкалу для визуального сравнения, а подсказка показывает фактическое время исходной исторической записи.