Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Русский
    3. ioBroker
    4. ioBroker драйвера
    5. Драйвер Flot

    NEWS

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    Драйвер Flot

    This topic has been deleted. Only users with topic management privileges can see it.
    • A
      andrey99986 last edited by

      Есть показания электросчётчика по таррифам 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 Reply Quote 0
      • Bluefox
        Bluefox last edited by

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

        1 Reply Last reply Reply Quote 0
        • A
          andrey99986 last edited by

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

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

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

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

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

          1 Reply Last reply Reply Quote 0
          • V
            VictorS last edited by

            Доброго дня,

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

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

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

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

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

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

            1 Reply Last reply Reply Quote 0
            • Bluefox
              Bluefox last edited by

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

              1 Reply Last reply Reply Quote 0
              • Bluefox
                Bluefox last edited by

                @andrey99986:

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

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

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

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

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

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

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

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

                1 Reply Last reply Reply Quote 0
                • A
                  andrey99986 last edited by

                  @Bluefox:

                  @andrey99986:

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

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

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

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

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

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

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

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

                  1 Reply Last reply Reply Quote 0
                  • V
                    VictorS last edited by

                    @Bluefox:

                    А так? `

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

                    1 Reply Last reply Reply Quote 0
                    • Bluefox
                      Bluefox last edited by

                      @VictorS:

                      @Bluefox:

                      А так? `

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

                      Это же не excel 🙂

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

                      1 Reply Last reply Reply Quote 0
                      • V
                        VictorS last edited by

                        @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 Reply Quote 0
                        • Bluefox
                          Bluefox last edited by

                          @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 Reply Quote 0
                          • F
                            Freemen last edited by

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

                            1 Reply Last reply Reply Quote 0
                            • Bluefox
                              Bluefox last edited by

                              @Freemen:

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

                              1 Reply Last reply Reply Quote 0
                              • F
                                Freemen last edited by

                                @Bluefox:

                                @Freemen:

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

                                1 Reply Last reply Reply Quote 0
                                • Bluefox
                                  Bluefox last edited by

                                  @Freemen:

                                  @Bluefox:

                                  @Freemen:

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

                                  1 Reply Last reply Reply Quote 0
                                  • F
                                    Freemen last edited by

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

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

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

                                    1 Reply Last reply Reply Quote 0
                                    • Bluefox
                                      Bluefox last edited by

                                      @Freemen:

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

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

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

                                      parseFloat("25. 75") => 25.0

                                      1 Reply Last reply Reply Quote 0
                                      • F
                                        Freemen last edited by

                                        @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 😢.

                                        1 Reply Last reply Reply Quote 0
                                        • Y
                                          yopopol last edited by

                                          всем привет.

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

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

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

                                          1 Reply Last reply Reply Quote 0
                                          • B
                                            bondrogeen last edited by

                                            @yopopol:

                                            всем привет.

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

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

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

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

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

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

                                            1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            897
                                            Online

                                            31.9k
                                            Users

                                            80.1k
                                            Topics

                                            1.3m
                                            Posts

                                            11
                                            54
                                            14166
                                            Loading More Posts
                                            • Oldest to Newest
                                            • Newest to Oldest
                                            • Most Votes
                                            Reply
                                            • Reply as topic
                                            Log in to reply
                                            Community
                                            Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                                            The ioBroker Community 2014-2023
                                            logo