CloudX
Components
Documentation

Графики для систем мониторинга

Charts — архитектура компонентов, состояния взаимодействия и документация
Дашборд мониторинга Kafka с графиками сетевого трафика и загрузки CPU, кольцевой диаграммой и тепловой картой
Пример применения компонентов в интерфейсе мониторинга Kafka. Числа на экране относятся к содержимому интерфейса, а не к результатам проекта.

Задача.

Работа посвящена набору графиков для интерфейсов мониторинга: временным рядам, сравнению категорий, долям, текущим значениям и истории состояний. За разными способами отображения данных стоит общая структура компонентов и правила их настройки.
Я разработал архитектуру компонентов, визуальное оформление графиков, состояния взаимодействия и документацию. Цвета, шрифты и размеры текста унаследованы из дизайн-системы компании.

Общая основа.

Для линейных и столбчатых графиков я использовал ChartArea — основу с осями, сеткой, легендой и областью отображения данных. Содержимое графика меняется отдельно от его окружения.
Левую и правую оси, подписи и легенду можно включать по необходимости. Настройки сетки и подписей позволяют собирать разные представления внутри одной структуры, а не создавать окружение каждого графика заново.
Линейный график мониторинга с несколькими цветными рядами данных и плавными ступенчатыми изменениями значений
Линейный график мониторинга с двумя рядами данных, координатной сеткой и легендой под графиком
Два примера ChartArea: отличаются содержимым, сеткой и наличием легенды. Общая основа сохраняется.

Разные данные — разные представления.

Линии показывают изменение показателей во времени. Группированные столбцы сопоставляют категории, а накопительные — показывают их вклад в общее значение. Круговые диаграммы описывают состав целого; индикаторы и числовые виджеты — текущее значение.
В кейсе я показываю несколько характерных вариантов. Важен не полный каталог графиков, а различие задач, которые они представляют.
СРАВНЕНИЕ КАТЕГОРИЙ
Столбчатая диаграмма загрузки CPU 1 и CPU 2 с попарным сравнением значений во времени
ВКЛАД В ОБЩЕЕ ЗНАЧЕНИЕ
Столбчатая диаграмма загрузки CPU с накоплением, цветными сегментами и легендой процессоров
Группировка сохраняет отдельные значения. Накопление показывает вклад частей в общую величину.
СОСТАВ ЦЕЛОГО
Кольцевая диаграмма распределения по шести категориям с цветовой легендой и процентными долями
ТЕКУЩИЕ ЗНАЧЕНИЕ
Кольцевой индикатор CPU 1 со значением 167,6 МВт
ЗНАЧЕНИЕ НА ШКАЛЕ
Полукруглый индикатор CPU 2 со значением 67%

Работа с данными.

Для временных рядов я предусмотрел состояние с подсказкой: дата, время и значения нескольких серий привязаны к одной позиции на графике. Выделение диапазона отдельно показывает участок, с которым работает пользователь.
В документации описал переход от выделенного диапазона к увеличению выбранного периода. На этих макетах показаны исходное состояние, подсказка и само выделение.

Обзор данных

Несколько серий в общей временной шкале.
Линейный график с тремя рядами данных на общей временной шкале с 15:20 до 16:00

Значения в выбранной точке

Подсказка связывает позицию на графике с датой и значениями.
Линейный график с подсказкой, показывающей дату, время и значения трёх серий в выбранной точке

Выделение периода

Подсветка обозначает выбранный диапазон; следующий шаг описан в документации.
Линейный график с тремя рядами данных и выделенным временным диапазоном с 15:30 до 15:40

История состояний.

Для истории состояний я разработал матричное представление: строки соответствуют сервисам, столбцы — временным участкам. Цвет ячейки показывает состояние, а подсказка раскрывает название сервиса, время и статус.
Матрица состояний сервисов во времени с цветовой индикацией статусов и подсказкой: email-gateway — «Всё в порядке» в 03:00

Настройка компонента.

Документацию построил вокруг устройства компонента, его поведения и вариантов. Отдельно описал сборку графика: настройку рабочей области, размещение содержимого и использование готового шаблона.
В примерах показано, как управлять подписями и сеткой, а для слоёв графического содержимого задавать масштабирование через Constraints. Это инструкция по подготовке макета, а не демонстрация адаптивной версии продукта.

Настроить основу

Настройка подписей осей компонента графика в Figma: управление видимостью, текстом и параметрами подписей
Количество подписей и элементы окружения настраиваются внутри компонента.

Разместить содержимое

Настройка масштабирования содержимого графика в Figma: Constraints — Scale по горизонтали и вертикали
Графическое содержимое размещается в рабочей области; внутренним слоям задаётся Scale.

Собрать график

Собранный график Network In с двумя рядами данных, временной шкалой, подписями осей, сеткой и легендой
Готовый пример объединяет данные, оси, сетку и легенду.

Границы настройки.

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

Что получилось.

Система включает общую основу для прямоугольных графиков, круговые диаграммы, индикаторы, числовые виджеты и историю состояний. Для компонентов подготовлены варианты, состояния взаимодействия и инструкции по настройке.
Набор компонентов для систем мониторинга: линейные и столбчатые графики, диаграммы с накоплением и числовой виджет