Hallo,
ich habe von eimem Mikrocontroller einige Messwerte (analog + digital),
die ich gerne visualisieren würde. Die Werte habe ich im .csv-Format
geloggt (Zeitstempel + meherere Datenspalten).
Schön wäre:
+ Alle Werte über der Zeit darstellbar
+ Alle in einem Diagramm mit eigenen Y-Achsen
+ Zoomen, Scrollen etc.
+ Beweglicher Cursor, mit dem alle Werte zu einem beliebigen Zeitpunkt
angezeigt werden können
+ Möglichkeit Zeit- und Werte-Deltas auszmessen
Mit Excel habe ich mich schon herumgeärgert, das ist aber nicht so das
Wahre (alles sehr statisch).
Gibt es da ein schönes Opensource-Tool?
Moin, ist Google kaputt? Sehr allgemein gehalten die Frage, wie ich
finde.
Ich benutze influx DB und Grafana um gelobte Messwerte anzuzeigen.
Sowohl von Rechnern und Diensten wie auch IOT Sensoren.
Bei mir sind IOT Sachen mit MQTT angebunden und werden mir dooblr in die
Datenbank geschrieben.
Zur Analyse statische daten geht auch sehr gut Pythen mit Matplotlib und
numpy.
Oder eben octave als Ersatz für Matlab wem das zu teuer ist.
Man kann auch einfach Google benutzen und eines der unzähligen Data
visualization Frameworks benutzen. Oder einen der vielen Cloud Anbieter
zur Datenanalyse.
Bla schrieb:> Ich benutze influx DB und Grafana um gelobte Messwerte anzuzeigen.> Sowohl von Rechnern und Diensten wie auch IOT Sensoren.> Bei mir sind IOT Sachen mit MQTT angebunden und werden mir dooblr in die> Datenbank geschrieben.
Benutze ich auch, ist aber für diesen Fall ungeeignet. Ich will ja
direkt eine .CSV Datei visualisieren. Auch freies Zoomen/Scrollen geht
in Grafana ja nicht, wenn ich mich recht entsinne.
Bla schrieb:> Zur Analyse statische daten geht auch sehr gut Pythen mit Matplotlib und> numpy.
Selber programmieren geht natürlich immer, ist aber viel Aufwand
(gerade, wenn die GUI schick sein soll) ;-)
Bla schrieb:> Man kann auch einfach Google benutzen und eines der unzähligen Data> visualization Frameworks benutzen. Oder einen der vielen Cloud Anbieter> zur Datenanalyse.
Hab ich versucht, aber ohne Erfolg (sonst wäre ich ja nicht hier) ;-)
So Zeug wie Plotly bringt auch nicht den gewünschten Erfolg...
Qwerty schrieb:> Es gibt den "CSV viewer" von Ingo W., der einige von den Anforderungen> erfüllt:
Kann ich leider nicht ausprobieren, da es Windows-Only zu sein scheint
:-(
Karacho schrieb:> Qwerty schrieb:>> Es gibt den "CSV viewer" von Ingo W., der einige von den Anforderungen>> erfüllt:>> Kann ich leider nicht ausprobieren, da es Windows-Only zu sein scheint> :-(
Funktioniert auch unter WINE.
Ansonsten
Beitrag "Re: csv-viewer Portierung"
Läuft auch nativ unter LINUX (FLTK).
Und - was gefunden??
Ich suche auch seit Monaten nach einem vernünftigen simplen Tool mit
ordentlicher Scrollfunktion für .csv Dateien.
Den "CSV Viewer" habe ich getestet und er ist zumindest für mich nicht
zu gebrauchen (sorry). Genauso Excel, man kann alles damit machen was
man benötigt, und mit MATLAB noch 10.000 andere Dinge, aber es braucht
unverhältnismäßig viel Zeit. Das Programm MDFView2 von iAV funktioniert
und passt super, aber man kriegt keine Lizenz wenn man nicht dort
arbeitet.
Ich tu mich schwer damit zu glauben dass es kein anderes passendes Tool
gibt. Antworten wie "Google kaputt?" bringen mich noch mehr auf die
Palme :) denn ich google mir die Finger wund zu dem Thema.
Ich glaube nicht dass du die Frage verstehst.
Was soll man an einer CSV "exportieren"? Es ist im gleichen Format
gespeichert. Die Endung sagt nur dass die Datei aus Kommata Separierten
Messwerten besteht. Man kann sie auch genauso mit dem Editor öffnen und
in ANSI, Unicode oder UTF-8 speichern wie .txt Dateien.
Selbst wenn man da irgendwas exportieren müsste, was soll man jetzt mit
einer .txt Datei anfangen? Kann ich im Editor in die Kurvenform
scrollen/zoomen? Hast du den Post eigentlich durchgelesen?
Daher schrieb ich "Was fürn Blödsinn". Danke für den Kommentar.
Ich logge auch ein paar Temperaturwerte in eine CSV Datei, zum schnellen
Visualisieren übers Netz nutze ich dygraphs. Vielleicht gibt es da auch
was für den Desktop oder als Plugin woanders (oder halt lokaler
Webserver).
dygraphs ist interessant, aber nicht für viele Messgrößen geeignet. Beim
Testen haben allein die Namen den Ganzen Graph eingenommen ;) und scroll
funktion gibts leider auch nicht.
Ein Autotacho zeigt nur einen Momentanwert, also kein passender
Vergleich. Man kann die Geschwindigkeit aber auf dem Bus loggen, als CSV
speichern und über der Zeit auftragen und sich dazu die PCB-Temperatur
des Motorsteuergerätes anzeigen lassen, und an kritischen Stellen mal
eben per scrollrad reinzoomen, wenn man das passende Tool hätte ;)
Selbst ein Tool programmieren? Ist das die Lösung? :D für mich nicht.
Aber scheint ja eine Marktlücke zu sein, denn der Vorschlag kam hier
schon öfter, daher kam ja auch der CSV Viewer, s.o. Aber am Ende hast du
dann Wochen investiert für ein unkomfortables billiges Tool das nicht
viel kann.
Gnuplot dürfte deine Anforderungen erfüllen, obwohl die Bedienung über
Kommandozeile ziemlich problematisch ist. (Gleicher Fall wie bei
pdflatex: 1. Wenn da irgendetwas nicht passt, bekommst du
Fehlermeldungen, die Gnuplot anscheinend für hilfreich hält, mit dem
Fehler aber bei weitem nichts zu tun haben. 2. gnuplot --help ist
nutzlos. 3. Die interaktive Konsole ist gegen jede Konvention, die mir
jemals begegnet ist.)
Genug gemeckert. Ich glaube, du brauchst dafür Daten-Dateien wie:
1
# /tmp/data
2
T a b c
3
1 0.1 0.4 0.8
4
2 0.2 0.4 0.8
5
3 0.3 0.4 0.8
6
4 0.4 0.4 0.9
7
5 0.3 0.4 0.8
8
6 0.2 0.4 0.7
9
7 0.1 0.4 0.6
Dann ausführen mit
1
$ gnuplot -p -e 'plot "/tmp/data" using 1:2 title "a", "/tmp/data" using 1:3 title "b", "/tmp/data" using 1:4 with lines title "c"
Wenn du gnuplot-x11 installierst, kannst du auch scrollen. Was fehlt,
ist der Cursor.
Ich entschuldige mich im Vorraus für den Vorschlag, die Bedienung von
Gnuplot ist wirklich der Horror.
NetZwerg schrieb:> Selbst ein Tool programmieren? Ist das die Lösung? :D für mich> nicht.> Aber scheint ja eine Marktlücke zu sein, denn der Vorschlag kam hier> schon öfter, daher kam ja auch der CSV Viewer, s.o. Aber am Ende hast du> dann Wochen investiert für ein unkomfortables billiges Tool das nicht> viel kann.Zustimm
Das Problem ist wohl, dass die Leute die gut programmieren können, kein
Problem haben. Sie programmieren sich jedes mal etwas spezifisches, was
dann niemandem sonst hilft.
Leute die weniger gut programmieren können sind so genervt, dass sie
auch etwas programmieren. Das gibt dann eines der vielen schlechten
Universal-Plot-Programme, welches wieder nur 2 der >5
selbstverständlichen Grundanforderungen erfüllt.
Stimmt das so etwa?
NetZwerg schrieb:> Selbst ein Tool programmieren? Ist das die Lösung? :D für mich nicht.> Aber scheint ja eine Marktlücke zu sein,
Nennt sich Dienstleistung. Ist keine Marktlücke sondern gut besetzt. Du
hast ein individuelles Problem und kannst es nicht selber lösen? Rück
raus mit der Kohle und Du bekommst eine individuelle Lösung erstellt und
auf dem Silbertablett geliefert.
Bernd K. schrieb:> Nennt sich Dienstleistung. Ist keine Marktlücke sondern gut besetzt. Du> hast ein individuelles Problem und kannst es nicht selber lösen? Rück> raus mit der Kohle und Du bekommst eine individuelle Lösung erstellt und> auf dem Silbertablett geliefert.
Wenn man den Threadverlauf zum CSV-Viewer mal durchschaut, findet man
genug Beispiele, wie sich individuelle Anforderungen erfüllen lassen.
Muss man sich natürlich durchlesen, oder die zugehörige Anleitung.
Wenn es dafür nicht reicht, nicht mal für eine Beschreibung des
Problems, dann muss er sich natürlich nach was komerziellem umsehen.
NetZwerg schrieb:> dygraphs ist interessant, aber nicht für viele Messgrößen geeignet. Beim> Testen haben allein die Namen den Ganzen Graph eingenommen ;) und scroll> funktion gibts leider auch nicht.
Bei mir sieht das so aus. Man kann reinzoomen, und unten den
Glättungsfaktor eingeben.
Tuxpilot schrieb:> $ gnuplot -p -e 'plot "/tmp/data" using 1:2 title "a", "/tmp/data" using> 1:3 title "b", "/tmp/data" using 1:4 with lines title "c">> Wenn du gnuplot-x11 installierst, kannst du auch scrollen. Was fehlt,> ist der Cursor.>> Ich entschuldige mich im Vorraus für den Vorschlag, die Bedienung von> Gnuplot ist wirklich der Horror.
Man könnte den Horror mit einem Bashscript ja etwas entschärfen. Das
Datenfile könnte man ja per Parameter übergeben, dann wird es etwas
universeller.
Trotzdem schön ist anders.
Bernd K. schrieb:> Nennt sich Dienstleistung. Ist keine Marktlücke sondern gut besetzt. Du> hast ein individuelles Problem und kannst es nicht selber lösen? Rück> raus mit der Kohle und Du bekommst eine individuelle Lösung erstellt und> auf dem Silbertablett geliefert.
Kann ich von einen ehemaligen Job bestätigen. Andere haben Kohle
rausgerückt (und zwar sehr viel), schon haben sie eine individuelle
Lösung auf dem Silbertablett bekommen.
Leider erfüllt die individuelle Lösung die individuellen Anforderungen
nicht so wirklich, und der Dienstleister ist irgendwie verschwunden oder
so.
Ich durfte die individuelle Lösung bedienen. „Rück raus mit der Kohle“
kann ich daher nicht weiterempfehlen.
Zurück zum Thema: Wie wäre es, die vorhandenen Lösungen (welche
mindestens je eine reale Anforderung erfüllen) in einem Artikel im Wiki
zu sammeln? Die Frage, die Karacho gestellt hat, kommt ja immer wieder.
Ich habe mal eine fehleranfällige Liste als Beispiel hingerotzt:
.csv o. Ä. plotten:
* Exel (zähle ich nicht zu GUI, da statisch)
* LaTeX mit pgfplots o. Ä. (erzeugt PDF)
.csv o. Ä. plotten mit GUI (also nicht statisch):
* Gnuplot
* Scydavis
* Turbolab
* kst (In sehr alten Versionen auch mit Echtzeit-Funktion)
Im Browser:
(* Gnuplot, Exel-Klone,..)
* Google Data Visualisation Frameworks
* dygraphs.com
Bibliotheken und anderer Programmierkram:
* Matlab/Octave/Scilab
* Python & Matplotlib
Plotten in Echtzeit oder aus Datei:
* LogView
* LabPlot
Plotten in Echtzeit:
* RealView
* xscope
* SerialComGrapher (sehr langsam)
* https://www.mikrocontroller.net/articles/RS-232#Datenvisualisierung
(noch eine dahingerotzte Liste, leider im Artikel RS-232 versteckt)
Kann ich mir noch nichts drunter vorstellen:
* https://en.wikipedia.org/wiki/InfluxDB und Grafana? (@Karacho, @Bla,
was ist das?)
Das meiste der aufgezälhten Software ist aber wirklich zu kompliziert,
oder kann zu wichtige Dinge nicht, um es nützlich anwenden zu können. So
kann ich nur auf folgendes Zitat hinweisen:
Jan K. schrieb:> Bleibt eigentlich> nur festzuhalten dass hier wohl eine echte Marktlücke vorliegt... Kaum> zu glauben eigentlich bei den Unmengen an PC-Software ?!
Tuxpilot schrieb:> Das meiste der aufgezälhten Software ist aber wirklich zu kompliziert,> oder kann zu wichtige Dinge nicht, um es nützlich anwenden zu können.
So wie zum Beispiel den Pelz zu waschen ohne ihn nass zu machen?
Viele Funktionen um jeden beliebigen Zweck erfüllen zu können bedeutet
halt nun mal daß es ein sehr komplexes und umfangreiches Interface haben
muß mit tausend Optionen und Schalterchen und Rädchen zum Schrauben.
Bei den oben genannten sind einige dabei mit denen man so ziemlich alles
machen kann und zusätzlich im Hintergrund noch Kaffee kochen.
Wenn Du jetzt Deine "Marktlücke" implementierst kommt ein Tool raus was
ganz genau das macht was DU willst und es hat ein absolut simples
Nutzerinterface aber leider ist das dann für kaum jemand anderen mehr
außer Dir zu gebrauchen denn jeder hat andere Anforderungen und jeder
hätte gerne noch diese oder jene Funkion und um denen allen auch noch zu
genügen kommt wieder ein riesiges komplexes ultraflexibles Tool raus mit
tausend Optionen und Schräubchen zum Einstellen.
Das ist ein Naturgesetz.
Und es wird immer ein Kompromiss sein.
Und es wird immer entweder Zeit oder Geld kosten. Eins von beiden
mindestens. such Dir das kleinere Übel aus.
Ich vermute, dass die "Marktlücke" nicht existiert, weil es nicht
möglich ist, gute Programme zu schreiben. Stattdessen existieren
passende Programme für jeden, nur leider sind diese Programme nicht zu
finden, weil:
1. Google & co anscheinend nur oberflächliche Texte beachten, nicht die
Programme selbst
2. Es hier keine Vergleichstabelle oder einfache Liste gibt.
Bei 2. kann man gegensteuern. Ist aber leichter gesagt als getan, weil:
1. Google & co anscheinend nur oberflächliche Texte beachten, nicht die
Programme selbst
Ausserdem muss man wissen, alle welche Features für Benutzer wichtig
sein könnten, damit die Vergleichstabelle hilfreich wird. Das weis ich
leider nicht.