Ankündigung

Einklappen
Keine Ankündigung bisher.

Highstock Chart für "Charts in Schick" :)

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

    #16
    Übrigens:
    die grafana Graphen sind auch super.
    Und man hat ein GUI um sie zu erstellen...

    Kommentar


      #17
      Da fehlt mir leider die Zeit für Auch ist weder python noch javascript mein Bereich. Bzgl. grafana...am besten am highstocks gefällt mir die Möglichkeit des schnellen Durchschauen langer Zeiträume bzw. die Auswahl Tag/Monat/Jahr etc. Gibt es das bei grafana auch? Ich möchte ungern mehrere Charts untereinander..

      Kommentar


        #18
        https://play.grafana.org/ Da kannst alles ausprobieren, lexxmm

        Kommentar


          #19
          Ich habe die Highstock-Ansicht eben committed. Diese kann aktiviert werden, indem in plot.period der Parameter zoom auf 'advanced' gesetzt wird.
          Die Doku ist bereits angepasst und um ein Beispiel erweitert.
          Eigentlich waren dazu nur etwa drei Zeilen Code notwendig, weil einfach Highstock anstelle Highcharts verwendet werden muss.
          Zusätzlich habe ich aber die Buttons zum Anwählen des Zeitbereichs dynamisch gemacht, damit sie zu dem gewählten Bereich passen, standardmässig wären diese fix. Die Texte sind ins Deutsche und Französische übersetzt.

          Dies ist entgegen meiner früheren Aussagen ohne Änderung an SHNG implementiert. Rein Visu-seitig funktioniert das auch mit 50000 Datensätzen recht flüssig (ok, auf einem etwas älteren Tablet lädt die Seite dann ein paar Sekunden).

          Allerdings gibt es ein Problem bei der Übertragung vieler Daten von SHNG zur sV. Bis etwas über 3650 Datensätzen (das sind z.B. 10 pro Tag für den Zeitraum eines Jahres) läuft es bei mir stabil. Geht ich darüber, treffen die Daten nur noch manchmal bei der Visu ein.
          Es liegt ziemlich sicher nicht am Code der sV, denn es wird in den Dev Tools von Chrome im Websocket gar keine Antwort angezeigt.
          In SHNG läuft bis zum Schicken alles gut, die Zeile 804 des Database Plugins wird erreicht und enthält die Daten. Es gibt auch keine Log-Einträge.

          An Chrome liegt es wohl auch nicht, da ich dasselbe Verhalten auch in Firefox beobachte.
          Mein Verdacht liegt also stark bei SHNG, Python oder dem RasPI, auf dem dies läuft.

          Könnt ihr dies nachvollziehen?
          Es wird natürlich ein Item mit genügend Logeinträgen benötigt, dieses dann z.B. mit count=4000 abfragen und als xStart etwas genug weit in der Vergangenheit wählen, damit auch tatsächlich mindestens 4000 Einträge geloggt wurden.
          Dann die Seite ein paar mal reloaden. Bei mir bleibt der Plot so etwa die Hälfte der Zeit leer.

          Kommentar


            #20
            smai bisher nicht reproduzierbar, allerdings ist der chart (bei mir 1/2 Jahr) natürlich in der ungezoomten anzeige nicht mehr wirklich brauchbar, da zu viele werte vorliegen. und lädt selbst auf meinem desktop mit intel 4790k mehrere sekunden (vermutlich aber datenbezug). cool wäre beim reinzoomen nachzuladen und immer identisch viele werte des wertebereichs anzuzeigen.. das ist aber natürlich nicht ganz so simpel möglich.

            ich muss wenn ich mal zeit finde etwas weiter analysieren.

            ist der beispielwert in der doku von 36500 absicht, oder sollte das 3650 heißen?

            Kommentar


              #21
              Nachladen wäre die Alternative, allerdings wie du schreibst aufwändiger und es braucht eine Anpassung in SHNG. Zudem lässt es sich wohl nicht mit dem automatischen Weiterfüllen über die Zeit kombinieren.

              Dass die Daten ungezoomt nicht brauchbar sind, würde ich so nicht sagen. Highstock hat eine automatische Gruppierungsfunktion, welche beim rauszoomen die Daten aggregiert. Man sieht das auch beim Mouseover, im Tooltip steht dann nicht mehr eine einzelne Zeit sondern ein von/bis oder ein Kalenderdatum.
              Dies würde man ebenfalls verlieren, wenn die Daten nachgeladen werden.

              Die 36500 sind bewusst, mit dem Offline-Treiber laufen diese problemlos und zeigen die automatische Gruppierung von Highstock schön auf.

              Kommentar


                #22
                smai strg5 gewinnt :-/ war noch nicht anständig refreshed

                es sind halt schon viele werte (derzeit auf 4000 gestellt, hier ist die ladezeit super)

                cc.JPG

                Kommentar


                  #23
                  Habe das erste Mal seit Monaten wieder ein Update gefahren. Irgendwo scheint da noch ein Wurm drin zu sein - die Plots werden abgeschnitten und auch irgendwie 'angepasst'. Einzige Veränderung - hatte vorher '15i' in beiden Plots zu stehen und gegen 'advanced' ersetzt. Ctrl-F5 / 'Cache leeren' wurden gemacht.

                  Vorher:
                  1.png

                  Nachher:
                  2.png

                  /tom

                  Nachtrag/Edit: Im unteren Plot fehlt definitiv der aktuelle Wert - es wird nur bis zum letzten Schaltzeitpunkt (6:00) ausgegeben, danach wird abgeschnitten.
                  Zuletzt geändert von Tom Bombadil; 09.09.2018, 14:42.

                  Kommentar


                    #24
                    So, hab mal versucht, das Ganze auf einen gemeinsamen Nenner zu bringen:

                    Unteres Diagramm im vorherigen Post:
                    Code:
                    {{ plot.period('plot2', ['ventilation.rs485._heating_on_off', 'ventilation.rs485._fanspeed', 'ventilation.fans.supply.is_on'], 'raw', '24h', 'now', 0, 10, '', ['Heizung', 'Stufe', 'Lüfter'], ['#f00', '#ff0', '#f0f'], ['stair', 'stair', 'stair'], '', 'advanced') }}
                    Obwohl 'now' spezifiziert ist, wird in das Feld 'bis' die Zeit des jüngsten Wertänderung aus allen Graphen eingetragen:
                    • Siehe gelbe Linie im unteren Plot - dort steht '09.09.18 06:00', obwohl der Graph in der Visu um 15:32 abgerufen wurde.
                    • Im oberen Plot stammt 'bis' vom jüngsten Meßwert von 'AT' (lila), welcher sich letztmalig um 15:26 verändert hat. Für alle anderen Temperaturen liegt die letzte Veränderung schon länger zurück, was zu den abgeschnittenen Linien führt.
                    Hoffe, dies hilft bei der Analyse - oder mach ich hier irgendetwas grundlegend falsch bzw. habe eine Änderung der Parameter in den letzten Monaten übersehen?

                    /tom

                    Kommentar


                      #25
                      Tom Bombadil ich habe die Ursache gefunden und behoben.
                      In Highstock werden im Gegensatz zu Highcharts die Punkte standardmässig gleichmässig verteilt und nicht auf einer linearen Zeitskala.
                      Ich habe auch eine Weile gesucht und erst nachträglich gesehen, dass es an den Beschriftungen der x-Achse eigentlich recht einfach zu erkennen gewesen wäre.

                      Kommentar


                        #26
                        Danke, Stefan. Das mit der komischen Zeitachse ist mir auch schon aufgefallen, man sieht es auch teilweise schon in den Screenshots oben. Wollte aber nicht gleich zu viel auf einmal melden.
                        /tom

                        Kommentar


                          #27
                          Ich habe das advanced Feature gerade mal von unterwegs getestet.
                          Auf dem Iphone sieht das Ganze noch arg ineinander geschoben aus. Und es wird im Querformat nur die hälfte der Bildschirms genutzt.

                          Kommentar


                            #28
                            Zitat von schuma Beitrag anzeigen
                            Auf dem Iphone sieht das Ganze noch arg ineinander geschoben aus. Und es wird im Querformat nur die hälfte der Bildschirms genutzt.
                            Kann das jemand bestätigen? Unter Android sieht es eigentlich OK aus.

                            schuma kann es sein, dass auf dem Iphone das CSS noch aus dem Cache kommt (wobei ich an der Breite nichts geändert habe)?
                            Oder es irgendwie an deinem HTML oder eigenem CSS liegt?

                            Kommentar


                              #29
                              iphone 7 Hochformat sieht so aus:

                              iphone_charts.jpg

                              Querformat ist schön. Dass die Achsenbeschriftung in die Buttons rein geht, hab ich am Desktop auch, sobald die Anzeige etwas schmaler ist als vielleicht geplant.

                              Kommentar


                                #30
                                Das mit der Breite hat sich erledigt.
                                War wohl wirklich noch etwas im Cache.
                                Aber zusammengeschoben sieht es aber immer noch aus.
                                98E0A65E-2A65-4F42-B421-D31F8733469F.png 5A510865-072D-4BAE-9718-3568BC0147E0.png

                                Kommentar

                                Lädt...
                                X