Gnuplot: bedingtes Plotten ($ 2 == 15? $ 2: '1/0') mit Linien

Meiner Daten sieht wie folgt aus:

10:15:8:6.06000000: 
10:15:2:19.03400000: 
10:20:8:63.50600000: 
10:20:2:24.71800000: 
10:25:8:33.26200000: 
10:30:8:508.23400000: 
20:15:8:60.06300000: 
20:15:2:278.63100000: 
20:20:8:561.18000000: 
20:20:2:215.46600000: 
20:25:8:793.36000000: 
20:25:2:2347.52900000: 
20:30:8:5124.98700000: 
20:30:2:447.41000000: 
(...) 

Ich würde gerne ein Grundstück "linespoints" Grundstück mit $1 auf der x-Achse, und 8 unterschiedliche Linien für jede Kombination von ($2,$3), z.B.: (15,8), (15,2), ...

Um das zu tun diese Art der bedingten Plotten, Menschen vorschlagen, die folgenden:

plot 'mydata.dat'  using 1:($2==15 && $3==8 ? $4 : 1/0) with  linespoints 'v=15, l=8'

Aber gnuplot nicht in der Lage ist zu zeichnen Sie eine Linie durch diese Punkte, wie "1/0" ist ungültig und eingefügt zu ersetzen, die einzelnen Datenpunkte, für die ($2==15 && $3==8) nicht zu halten.

Auch der Vorschlag, "- plot mit dem letzten Datenpunkt wieder" an Stelle von "1/0" funktioniert nicht, da bin ich mit Bedingungen, die auf zwei Variablen.

Gibt es wirklich keine Möglichkeit zu sagen, gnuplot zu ignorieren, einen Eintrag in der Datei, in der Stelle des Auftragens eine ungültige "1/0" Datenpunkt? Beachten Sie, dass das ersetzen es durch "NaN" ergibt das gleiche Ergebnis.

Denn jetzt bin ich der Vorverarbeitung alle meine Daten-Dateien (durch Aufteilung in separate Dateien, die dann geplottet werden in der gleichen Grundstück) mit bash und awk, aber dies ist weniger als ideal...

Dank!

InformationsquelleAutor der Frage Bas van Schaik | 2012-06-25

Schreibe einen Kommentar