Skip to content
  • Home
  • Recent
  • Tags
  • 0 Unread 0
  • Categories
  • Unreplied
  • Popular
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Русский
  3. ioBroker
  4. ioBroker драйвера
  5. Драйвер Flot

NEWS

  • Monatsrückblick Januar/Februar 2026 ist online!
    BluefoxB
    Bluefox
    17
    1
    515

  • Jahresrückblick 2025 – unser neuer Blogbeitrag ist online! ✨
    BluefoxB
    Bluefox
    17
    1
    5.3k

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    13
    1
    1.4k

Драйвер Flot

Scheduled Pinned Locked Moved ioBroker драйвера
54 Posts 11 Posters 16.0k Views
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • A Offline
    A Offline
    andrey99986
    wrote on last edited by
    #33

    Есть показания электросчётчика по таррифам T1,T2 в БД iobroker sql, пишутся каждый час.

    Чтобы вытащить статистику потребления по суткам сделал sql запрос:

    SELECT 
     DATE(t1.eventdate) as date, 
     round(MAX(t1.val)-MIN(t1.val),2) as rashod_T1, 
     round(MAX(t2.val)-MIN(t2.val),2) as rashod_T2, 
     ( round(MAX(t1.val)-MIN(t1.val),2) + round(MAX(t2.val)-MIN(t2.val),2) ) as Total_rashod 
     FROM (SELECT val, DATE_ADD(FROM_UNIXTIME(ts/1000), interval -315619200 second) as eventdate from iobroker.ts_number  where id=9) t1 
     LEFT JOIN (SELECT val, DATE_ADD(FROM_UNIXTIME(ts/1000), interval -315619200 second) as eventdate from iobroker.ts_number  where id=10) t2
     ON (t1.eventdate=t2.eventdate)
     GROUP BY DATE(t1.eventdate);
    

    Я так понимаю прямого способа sql-запрос отобразить в flot-е невозможно…

    И чтобы построить график:

    1. Способ: надо каждые сутки например записывать в БД то что выводит sql-запрос в свойствах нового объекта в БД.

    2. Способ: обмануть flot - скриптом записать данные, сформированные из запроса напрямую с id нового объекта в БД.

    Это гемор какой-то... Может всё таки разработчики добавят возможность строить график по произвольному sql-запросу?

    1 Reply Last reply
    0
    • BluefoxB Offline
      BluefoxB Offline
      Bluefox
      wrote on last edited by
      #34

      > Может всё таки разработчики
      Проблема в одной и

      1 Reply Last reply
      0
      • A Offline
        A Offline
        andrey99986
        wrote on last edited by
        #35

        Как должна работать настройка в "Входные-данные"-"Ещё"-"Сглаживание" ?

        Установил параметр в 10, по логике должно брать среднее из 10 соседних значений (+-5) (линейно или более сложно используя вес).

        У меня вот такая картинка выходит. Думаю что при "сглаживании" в новом графике не должны превышаться исходные реальные максимальные значения.

        Красная линия - исходные данные.

        Зелёная линия - те же данные со сглаживанием "10".
        1444_flot.png

        1 Reply Last reply
        0
        • V Offline
          V Offline
          VictorS
          wrote on last edited by
          #36

          Доброго дня,

          сподобился тут построить графики потребления электричества и воды по суткам и месяцам. Даже не мог представить что это есть большая проблема :(

          Исторически данные есть в виде: время/показания.

          Но для нужных графиков мне нужно взять дельту от показания за сутки 0:00 текущих суток, и 0:00 предыдущих и так далее.

          И как это реализовать при помощи flot?

          update: увидел что тема подымалась уже…

          видимо при помощи flot - никак. но вот тут https://iobroker.biz:8080/ в одном из примеров вроде видел подобные графики когда то.. а сейчас не могу найти…

          1 Reply Last reply
          0
          • BluefoxB Offline
            BluefoxB Offline
            Bluefox
            wrote on last edited by
            #37

            А так?
            48_2017-01-26_22_10_25-flot_edit.png
            48_2017-01-26_22_10_57-flot_edit.png

            1 Reply Last reply
            0
            • BluefoxB Offline
              BluefoxB Offline
              Bluefox
              wrote on last edited by
              #38

              @andrey99986:

              Как должна работать настройка в "Входные-данные"-"Ещё"-"Сглаживание" ?

              Установил параметр в 10, по логике должно брать среднее из 10 соседних значений (+-5) (линейно или более сложно используя вес).

              У меня вот такая картинка выходит. Думаю что при "сглаживании" в новом графике не должны превышаться исходные реальные максимальные значения.

              Красная линия - исходные данные.

              Зелёная линия - те же данные со сглаживанием "10". `
              Очень интересно:

              Используется вот этот алгоритм. https://github.com/ioBroker/ioBroker.fl … ta.js#L713

              Сейчас вижу ошибку, но она возможна только если попадаются null значения.

              Обновил на гите алгоритм.

              1 Reply Last reply
              0
              • A Offline
                A Offline
                andrey99986
                wrote on last edited by
                #39

                @Bluefox:

                @andrey99986:

                Как должна работать настройка в "Входные-данные"-"Ещё"-"Сглаживание" ?

                Установил параметр в 10, по логике должно брать среднее из 10 соседних значений (+-5) (линейно или более сложно используя вес).

                У меня вот такая картинка выходит. Думаю что при "сглаживании" в новом графике не должны превышаться исходные реальные максимальные значения.

                Красная линия - исходные данные.

                Зелёная линия - те же данные со сглаживанием "10". `
                Очень интересно:

                Используется вот этот алгоритм. https://github.com/ioBroker/ioBroker.fl … ta.js#L713

                Сейчас вижу ошибку, но она возможна только если попадаются null значения.

                Обновил на гите алгоритм. `
                Спасибо, вроде заработало когда поставил "Игнорировать null".

                1 Reply Last reply
                0
                • V Offline
                  V Offline
                  VictorS
                  wrote on last edited by
                  #40

                  @Bluefox:

                  А так? `

                  немного не так. сдвиг оси x в один день с одновременным изменением интервала выборки вместо now -> end of day приводит к тому что показываются данные за предыдущие сутки. никакого вычитания значений не происходит.

                  1 Reply Last reply
                  0
                  • BluefoxB Offline
                    BluefoxB Offline
                    Bluefox
                    wrote on last edited by
                    #41

                    @VictorS:

                    @Bluefox:

                    А так? `

                    немного не так. сдвиг оси x в один день с одновременным изменением интервала выборки вместо now -> end of day приводит к тому что показываются данные за предыдущие сутки. никакого вычитания значений не происходит. `
                    вычитания??

                    Это же не excel :)

                    Тебе нужны influxdb + graphite. Я именно из-за этого встроил influxDB.

                    1 Reply Last reply
                    0
                    • V Offline
                      V Offline
                      VictorS
                      wrote on last edited by
                      #42

                      @Bluefox:

                      @VictorS:

                      @Bluefox:

                      А так? `

                      немного не так. сдвиг оси x в один день с одновременным изменением интервала выборки вместо now -> end of day приводит к тому что показываются данные за предыдущие сутки. никакого вычитания значений не происходит. `
                      вычитания??

                      Это же не excel :)

                      Тебе нужны influxdb + graphite. Я именно из-за этого встроил influxDB. `

                      ну под вычитанием я имел ввиду разницу между показаниями начала суток предудущего и текущего дня. Иначе в чем смысл твокго совета сдвинуть X-axis на сутки?

                      насчет influxdb + graphite - ты имел ввиду наверное influxdb + grafana? ибо и influxdb и graphite - это по сути time series DB, плюс в последней есть инструменты по визуализации..

                      очень интересные инструменты, надо изучить… кстати я так понимаю что именно DB подобные influxdb идеальная база для IOB, так как в любой db он хранит информацию как time series. ее вообще по умолчанию включить можно было бы...

                      кстати, а flot будет тянуть данные из influxdb без проблем?

                      1 Reply Last reply
                      0
                      • BluefoxB Offline
                        BluefoxB Offline
                        Bluefox
                        wrote on last edited by
                        #43

                        @VictorS:

                        @Bluefox:

                        @VictorS:

                        немного не так. сдвиг оси x в один день с одновременным изменением интервала выборки вместо now -> end of day приводит к тому что показываются данные за предыдущие сутки. никакого вычитания значений не происходит. `
                        вычитания??

                        Это же не excel :)

                        Тебе нужны influxdb + graphite. Я именно из-за этого встроил influxDB. `

                        ну под вычитанием я имел ввиду разницу между показаниями начала суток предудущего и текущего дня. Иначе в чем смысл твокго совета сдвинуть X-axis на сутки?

                        насчет influxdb + graphite - ты имел ввиду наверное influxdb + grafana? ибо и influxdb и graphite - это по сути time series DB, плюс в последней есть инструменты по визуализации..

                        очень интересные инструменты, надо изучить… кстати я так понимаю что именно DB подобные influxdb идеальная база для IOB, так как в любой db он хранит информацию как time series. ее вообще по умолчанию включить можно было бы...

                        кстати, а flot будет тянуть данные из influxdb без проблем? `
                        я имел ввиду именно graphite. Т.к. grafana такого не может. (Не могла 2 года назад. Сейчас не знаю).

                        InfluxDB надо инсталлировать. Ты бы знал, сколько проблем просто с node.js. Люди ничего не могут и не хотят знать. А ты предлагаешь их заставить ставить ещё базу данных :?

                        1 Reply Last reply
                        0
                        • F Offline
                          F Offline
                          Freemen
                          wrote on last edited by
                          #44

                          Почему то не могу построить график данных с точностью до сотых. В sql данные точность до сотых, на графике целые. Где эти настройки? Описание драйвера и его настройка прочитал, но есть ли такая настройка и где она так и не понял :cry: . Тыкните носом плиз..

                          1 Reply Last reply
                          0
                          • BluefoxB Offline
                            BluefoxB Offline
                            Bluefox
                            wrote on last edited by
                            #45

                            @Freemen:

                            Почему то не могу построить график данных с точностью до сотых. В sql данные точность до сотых, на графике целые. Где эти настройки? Описание драйвера и его настройка прочитал, но есть ли такая настройка и где она так и не понял :cry: . Тыкните носом плиз.. `
                            48_2017-03-25_07_02_41-flot_edit.png

                            1 Reply Last reply
                            0
                            • F Offline
                              F Offline
                              Freemen
                              wrote on last edited by
                              #46

                              @Bluefox:

                              @Freemen:

                              Почему то не могу построить график данных с точностью до сотых. В sql данные точность до сотых, на графике целые. Где эти настройки? Описание драйвера и его настройка прочитал, но есть ли такая настройка и где она так и не понял :cry: . Тыкните носом плиз..
                              Самое первое что делал, так это. Не помогает.

                              1 Reply Last reply
                              0
                              • BluefoxB Offline
                                BluefoxB Offline
                                Bluefox
                                wrote on last edited by
                                #47

                                @Freemen:

                                @Bluefox:

                                @Freemen:

                                Почему то не могу построить график данных с точностью до сотых. В sql данные точность до сотых, на графике целые. Где эти настройки? Описание драйвера и его настройка прочитал, но есть ли такая настройка и где она так и не понял :cry: . Тыкните носом плиз..
                                Самое первое что делал, так это. Не помогает. `
                                А что ты там написал?
                                48_2017-03-25_16_21_26-flot_edit.png

                                1 Reply Last reply
                                0
                                • F Offline
                                  F Offline
                                  Freemen
                                  wrote on last edited by
                                  #48

                                  Ну поставил, 2 знака после запятой :roll:. Если есть время можно посмотреть:

                                  https://drive.google.com/open?id=0BwZuz … zN6azBiS3M

                                  На вэб страничке устройства графики рисуются с thingspeak.com. В брокере имею целочисленные показания

                                  1 Reply Last reply
                                  0
                                  • BluefoxB Offline
                                    BluefoxB Offline
                                    Bluefox
                                    wrote on last edited by
                                    #49

                                    @Freemen:

                                    Ну поставил, 2 знака после запятой :roll:. Если есть время можно посмотреть:

                                    https://drive.google.com/open?id=0BwZuz … zN6azBiS3M

                                    На вэб страничке устройства графики рисуются с thingspeak.com. В брокере имею целочисленные показания `
                                    У тебя значения "25._75". Там пробел в значении и поэтому оно интерпретируется, как

                                    parseFloat("25. 75") => 25.0

                                    1 Reply Last reply
                                    0
                                    • F Offline
                                      F Offline
                                      Freemen
                                      wrote on last edited by
                                      #50

                                      @Bluefox:

                                      @Freemen:

                                      Ну поставил, 2 знака после запятой :roll:. Если есть время можно посмотреть:

                                      https://drive.google.com/open?id=0BwZuz … zN6azBiS3M

                                      На вэб страничке устройства графики рисуются с thingspeak.com. В брокере имею целочисленные показания `
                                      У тебя значения "25._75". Там пробел в значении и поэтому оно интерпретируется, как

                                      parseFloat("25. 75") => 25.0 `
                                      Да действительно. Огромное спасибо. А то на голове волос почти не осталось, так я в другом месте два дня рвал :lol: .

                                      Все из за sprintf(). Пришлось ее применить потому что думаю всем известна проблема форматного вывода float в ESP :cry:.

                                      1 Reply Last reply
                                      0
                                      • Y Offline
                                        Y Offline
                                        yopopol
                                        wrote on last edited by
                                        #51

                                        всем привет.

                                        подскажите пожалуйста как сделать свой график для каждой переменной?

                                        есть три переменные,приходят по MQTT. Но у меня получается только все три воткнуть на один график,переплетение линий и воспринимается не очень нормально.

                                        как сделать,чтобы для каждой переменной был собственный график (поле с графиком)?

                                        1 Reply Last reply
                                        0
                                        • B Offline
                                          B Offline
                                          bondrogeen
                                          wrote on last edited by
                                          #52

                                          @yopopol:

                                          всем привет.

                                          подскажите пожалуйста как сделать свой график для каждой переменной?

                                          есть три переменные,приходят по MQTT. Но у меня получается только все три воткнуть на один график,переплетение линий и воспринимается не очень нормально.

                                          как сделать,чтобы для каждой переменной был собственный график (поле с графиком)? `

                                          Так и делай для каждой переменной свой график.

                                          ссылка генерируется с параметрами своя.

                                          Потом просто копируешь ссылку и вставляешь в vis

                                          1 Reply Last reply
                                          0
                                          Reply
                                          • Reply as topic
                                          Log in to reply
                                          • Oldest to Newest
                                          • Newest to Oldest
                                          • Most Votes


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          597

                                          Online

                                          32.7k

                                          Users

                                          82.5k

                                          Topics

                                          1.3m

                                          Posts
                                          Community
                                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                                          ioBroker Community 2014-2025
                                          logo
                                          • Login

                                          • Don't have an account? Register

                                          • Login or register to search.
                                          • First post
                                            Last post
                                          0
                                          • Home
                                          • Recent
                                          • Tags
                                          • Unread 0
                                          • Categories
                                          • Unreplied
                                          • Popular
                                          • GitHub
                                          • Docu
                                          • Hilfe