• Система автоматизации с открытым исходным кодом на базе esp8266/esp32 микроконтроллеров и приложения IoT Manager. Наша группа в Telegram

Выдача данных в HighCharts сохраненные раннее в SPIFFS данные в формате *.CSV

IgSel

New member
Здравствуйте! Подскажите, пожалуйста, начинающему, как выдавать ранее сохраненные данные на график (работал по ссылке выдачи на экран значений температуры и пр.). Дело в том, что при повторном вызове HTML страницы графики рисуются заново. Мне нужно, чтобы выводились массивом в график сохраненные ранее, а к ним уже динамически добавлялись новые. Работать с SPIFFS и сохранять там данные в CSV вроде научился...Где можно найти готовые решения или подсказки? Спасибо!
 

pvvx

Активный участник сообщества
Google "Js dynamic chart"
Или запросить код у ChatGPT под ваши условия. Нефиг теребить людей на ваши игрушки.
 

Ildarmustafin86

Active member
А как вы хотите к сохранённым данным динамически добавлять данные? Их ведь все равно придётся сохранять, иначе при перезагрузке страницы они пропадут
 

IgSel

New member
Новые данные. Нарисовал график из старых + отобразил новые(если они появились) потом сохранил их со старыми и так до следующего захода. У роботов, кстати спросил. Отвечают. Вежливо, кстати.
 

enjoynering

Well-known member
Нарисовал график из старых + отобразил новые(если они появились) потом сохранил их со старыми и так до следующего захода.
сложно. я просто дописываю новые в конец файла (для этого у LittleFS есть специальная команда). время храню в секундах (с Jan-01-1970). Остальные данные (float) пакую в uint32. итого хватает 450КБ для записи температуры и влажности плюс время с дискретностью каждые 30 минут. вместо HighCharts использую бесплатный dygraphs
 

Ildarmustafin86

Active member
сложно. я просто дописываю новые в конец файла (для этого у LittleFS есть специальная команда). время храню в секундах (с Jan-01-1970). Остальные данные (float) пакую в uint32. итого хватает 450КБ для записи температуры и влажности плюс время с дискретностью каждые 30 минут. вместо HighCharts использую бесплатный dygraphs
У вас все данные хранятся в одном csv файле? Разделение по месяцам не делаете?
 

pvvx

Активный участник сообщества
У роботов, кстати спросил. Отвечают. Вежливо, кстати.
Они как раз спецы именно в написании js для таких приложений. Могут и полный Chart написать, т.к. нескончаемых примеров от "кожаных мешков" по данной тематике в них больше всего было напихано в процессе "обучения".
 

enjoynering

Well-known member
У вас все данные хранятся в одном csv файле? Разделение по месяцам не делаете?
Нет не делаю. Имхо все это дожно делаться на строне клиента (комп, смарт) с помощью JavaScript.

Мне пока хватает зума в dygraphs:

dygraphs_full.jpg
dygraphs_zoom.jpg


Как уже говорил время храню в секундах (с Jan-01-1970). Остальные данные (float) пакую в uint32. Итого 450КБ хватает на год записи температуры, влажности и времени с дискретностью каждые 30 минут.

raw_data.jpg
 

Ildarmustafin86

Active member
Я думал перейти с json на csv. Но пока отказался, так как месяц данных в json весят 4 кб, в csv - 16 кб. Интервал записи - каждый час.
 

enjoynering

Well-known member
у меня просто текстовый файл. формат сморите картинку выше (тупо время и данные через запятую). на JS написан GET запрос и парсер. потом скармливаю массив dygraphs
 
Сверху Снизу