Als Follow-up von: Gnuplot: Plotting several datasets with titles from one file, ich habe eine test.dat
Datei:Gnuplot: Trägt man mehrere Datensätze mit Titeln aus dem Rohr
"p = 0.1"
1 1
3 3
4 1
"p = 0.2"
1 3
2 2
5 2
und ich kann es ohne Probleme zeichnen aus gnuplot mit:
> plot for [IDX=0:1] 'test.dat' i IDX u 1:2 w lines title columnheader(1)
jedoch kann ich die Daten nicht leiten.
Hier ist die einzige Zeile Beispiel:
$ cat test.dat | gnuplot --persist -e "plot for [IDX=0:1] '-' i IDX u 1:2 w lines title columnheader(1)"
line 10: warning: Skipping data file with no valid points
ich die Warnmeldung erhalten und nur der erste Satz aufgetragen ist. Ich habe versucht, am Ende der Datei eine e
hinzuzufügen, aber kein Glück ... Das sollte trivial sein, mache ich einen dummen Fehler?
Ich habe ein wenig mehr herumspielen. So sind diese Werke:
gnuplot --persist -e "plot for [IDX=0:1] 'test.dat' i IDX u 1:2 w lines title columnheader(1)"
gnuplot --persist -e "plot for [IDX=0:1] '< cat test.dat' i IDX u 1:2 w lines title columnheader(1)"
Diese nicht:
cat test.dat | gnuplot --persist -e "plot for [IDX=0:1] '-' i IDX u 1:2 w lines title columnheader(1)"
cat test.dat | gnuplot --persist -e "plot for [IDX=0:1] '< cat' i IDX u 1:2 w lines title columnheader(1)"
Es sieht aus wie ein Bug zu mir. Ich habe einige Gnuplot-Versionen (4.6.6, 5.0.0, 5.0.3) ausprobiert, aber alle haben das gleiche Verhalten.
Wäre es geeignet sein, die gnuplot zu verwenden '<' filename keyword to getdata from pipe? Und funktioniert es so? – bibi
@bibi nicht wirklich, da ich die Daten aus einem anderen Prozess streamen, aber ja 'Plot '
DarioP
Ich kann immer noch nicht herausfinden, warum nicht Ihren Befehl aus gnuplot – bibi