Как сделать интерактивный график. Увеличить фрагмент диаграммы. Динамические диапазоны

Программирование Прочее Немов Сергей 28.08.2024

Как сделать интерактивный, масштабируемый график? Увеличить фрагмент диаграммы? В этом тексте приведено несколько методов создания интерактивного масштабируемого графика. Обратная связь, комментарии и предложения приветствуются.

Эта публикация продолжает серию заметок о цифровых инструментах low-code и no-code (https://2lead.ru/blog/program/low-code ), для широкого круга пользователей. Решения, которые вы можете применить в работе/бизнесе. Технологии быстро меняются, поэтому особое внимание я уделяю именно сути и логике решений, принципам работы.


1. Масштабируемая диаграмма. Excel

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

Например, на графике ниже отлично видна общая тенденция изменения стоимость конкретной акции и всего пакета на отрезке с 1-ой по 500-ую сессию.

Но что, если на совете директоров, где Вы презентуете этот замечательный график, захотят посмотреть, что происходило в период с 40-й по 150-ую сессии? А потом с 345-й по 388-ую? Это будет фиаско. И дело не в отсутствии горизонтальной оси :) Будь она на месте, всё равно никак бы нам не помогла. Но что же делать? Строить десятки графиков под возможные запросы и показывать их по мере необходимости? Вариант для ярых мазохистов. А вот если бы можно было в несколько кликов увеличить масштаб графика и сдвигать его вправо/влево - это был бы отличный выход! На наше счастье, такая задача вполне решаема. Нужно будет обычные ряды данных на диаграмме заменить на созданные динамические диапазоны. А вот размер и положение динамического диапазона будет подбираться исходя из значений, выбранных на полосе прокрутки.

ФайлПример_Масштабируемая_диаграмма.xlsx

Разберем методику пошагово. Подробнее по ссылке https://dzen.ru/a/WsccEqk29GDAJxie


2. Интерактивная визуализация данных при помощи Plotly: строим красивые графики с Express и Cufflinks. Python

Если Вы все еще используете Matplotlib для создания графиков в Python, самое время взглянуть на мир с высоты альтернативной библиотеки интерактивной визуализации.

Plotly позволяет создавать красивые, интерактивные, экспортируемые графики с помощью всего нескольких строк кода. Однако без карты подъем в гору Plotly может быть медленным и мучительным.

Вот камни преткновения, которые могут появиться на пути авантюристов, решивших покорить эту гору:

- непонятная начальная настройка для работы оффлайн без аккаунта;

- неимоверное количество строк кода;

- устаревшая документация;

- множество различных инструментов Plotly, в которых можно заблудиться (Dash, Express, Chart Studio и Cufflinks).

В этой статье указано, как начать работу в оффлайн-режиме, как создавать графики, а потом их корректировать, куда обратиться за помощью и какими инструментами пользоваться.

Plotly

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

Подробнее по ссылке https://habr.com/ru/companies/skillfactory/articles/506974/


3. Построение графиков с помощью plotly.express. Увеличить фрагмент графика. Python

Plotly Express - это простой в использовании высокоуровневый интерфейс для Plotly, который работает с различными типами данных и позволяет создавать простые в оформлении изображения. С помощью px.line каждая точка данных представляется в виде вершины (местоположение которой указано в столбцах x и y) полилинии в двумерном пространстве. 

import plotly.express as px

df = px.data.gapminder().query("country=='Canada'")
fig = px.line(df, x="year", y="lifeExp", title='Life expectancy in Canada')
fig.show()

Подробнее по ссылке https://plotly.com/python/line-charts


Если суть инструмента вам понятна, но возникли сложности в реализации – целесообразно привлечь соответствующего ИТ-специалиста.


Мы используем cookie, чтобы предоставить вам наилучшие возможности на нашем сайте. Нажав OK, вы соглашаетесь с нашей политикой использования файлов cookie. OK