Какая есть утилита для просмотра временных рядов?
Здравствуйте.
У меня есть некоторый набор значений (показания датчиков к примеру) на интервале времени в виде таблиц "время;значение".
Если интервал маленький, то все можно смотреть в том же екселе. А если большой, то уже все совсем неудобно.
Посоветуйте какую-нибудь программу (желательно под линукс), где можно смотреть такие ряды, менять зум и ходить по графикам туда-сюда.
УПД: А если программа сможет считать всякие мин-макс-отклонение, то вообще будет огонь
Дополнительно:
Но ведь реально все это есть в экселе.
Обертка над всем этим ввиде pandastable dataexplore https://pandastable-readthedocs-io.translate.goog/...
DataExplore https://dmnfarrell-github-io.translate.goog/pandas...
pandastable dataexplore https://www.google.com/search?sca_upv=1&sca_upv=1&...
Минимумы, максимумы - элементарно
раскрашиваются ячейки в цветовую карту https://github-com.translate.goog/dmnfarrell/panda...
Ексель или дельфи/с# все ещё лучше этого
это не утилиты
Ответы:
Ставите PostgresSQL + расширение TimescaleDB, заливаете туда все свои данные, далее ставите Grafana, в ней добавляете БД как источник данных, настраиваете себе дашборады и радуетесь жизни.
UPD: или более простое решение - использовать веб решение в виде HTML странички с JS скриптами и грфической библиотекой типа visjs для тайм-лайн графика, а можно даже взять NWJS с нодой и её плюшками.
- В таком виде будет проще написать на Дельфи, с# или ещё что программу, которая все это делать будет. Набор данных меняюнся и не очень сподручно каждый раз затаскивать их в базу
- А что мешает сразу в БД писать? Как раз таки проще написать какой-нибудь скрипт, который ваши данные сразу в БД отправит. Ставится и настраивается такая простая связка за полчаса-час. Если не спешить - максимум за вечер. Документации и инструкций - полно.
- VoidVolker, лень в основном. А ещё внезапное осознание, что там надо миллион функций.
- VoidVolker, это все разовое. В смысле мы сейчас померили, посмотрели на графики и дельты между и все. Завтра сменились данные (эксперимент закончен) и схема (данные другие)
- Тогда, можно использовать обычную хтмл страничку с графиком visjs.
- VoidVolker, а хтмл это интересно, не думал в эту сторону
- Просто потому что JS достаточно простой ЯП, а с помощью HTML и CSS можно легко и просто нарисовать любой UI. Это самое просто решение - а обычная хтмл страничка и локально открытая прекрасно будет работать. Можно даже сделать чуть лучше использовать NWJS и писать основной код на ноде, с доступом к ФС, системным вызовам и всей остальной экосистемой, а всю графику рисовать в visjs.
Есть, еще, конечно варианты типа питон плюс Matplotlib какой-нибудь - там нужный вам результат тоже можно достичь, но несколько более сложным путем - но на сколько, я не знаю, т.к. не использовал. - VoidVolker, не не, вы не поняли. Я просто не думал в эту сторону. А против хтмл/js я ничего не имею. Сгенерировать страничку-это же просто.
А питон и матплотлиб не даст нужной интерактивности
Спасибо за совет :)
- Да понял, я понял сразу, это я просто дополнил предыдущий комментарий ) Тогда, дополню ответ.
Опишите проблему, и специалист поможет с настройкой, исправлением ошибки или доработкой сайта. Подберём понятный план работ без лишней переписки.
Пока нет других ответов. Будьте первым, кто поможет автору.
Ответить на вопрос
Для просмотра временных рядов существует множество утилит и инструментов, которые могут помочь в анализе и визуализации данных. Одним из популярных и мощных инструментов для работы с временными рядами является библиотека Python под названием Pandas.
Pandas предоставляет удобные структуры данных, такие как DataFrame, которые позволяют легко загружать, обрабатывать и анализировать временные ряды. Для визуализации данных временных рядов можно использовать библиотеку Matplotlib, которая позволяет строить графики и диаграммы.
Пример использования Pandas для работы с временными рядами:
import pandas as pd # Создание временного ряда dates = pd.date_range('2022-01-01', periods=10) data = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9] # Создание DataFrame df = pd.DataFrame(data, index=dates, columns=['Values']) print(df)
Для визуализации временных рядов с помощью Matplotlib можно использовать следующий код:
import matplotlib.pyplot as plt # Построение графика plt.plot(df.index, df['Values']) plt.xlabel('Date') plt.ylabel('Value') plt.title('Time Series Data') plt.show()
Кроме Pandas и Matplotlib, также существуют специализированные инструменты для анализа временных рядов, такие как Prophet от Facebook или ARIMA модели. Выбор конкретной утилиты зависит от поставленных задач и требований к анализу данных.