Графическая визуализация данных на графиках
Основная функция Исходного кода – графическая визуализация данных на графиках. На основе готового дизайна требуется разработать React компонент с использованием библиотеки lightweightcharts. Компонент принимает на вход массив данных для отображения индикаторов.
В компоненте должна быть возможность переключения между типами оси ординат: линейной, логарифмической и процентной. Помимо этого, необходима возможность изменения типа графика, переключение между линей, линией с закрашенной под ней областью и барами.
Должна быть возможность отображения нескольких линий определённых цветов на одном графике с лейблами по оси абсцисс, в которых будет указано сокращённое название биржи.
Для каждой биржи должна быть возможность отображения неограниченного количества линий.
На оси абсцисс также должен отображаться лейбл со значением времени, прошедшем с момента начала отсчёта выбранного временного интервала.
В зависимости от выбранного индикатора в контейнере должно находится две или более независимые области с графиками с синхронизированным скроллом по оси ординат. Высота графиков должна регулироваться пользователем путём перетаскивание границы между графиками вверх или вниз.
Во всех контейнерах должны быть подсказки (tooltip), в которых отображается значения по оси абсцисс и ординат, которые определяются на основании текущего положения курсора.
Необходимо также написать функцию для обновления данных на графике в реальном времени (все данные приходят на сокет).
Исполнителю предоставляется готовый дизайн в Figma всех описанных элементов.