Müssen Handlung jedes n ' te Zeile in gnuplot

Ich bin mit gnuplot und haben einige Daten, die haben mehr als 2 Parameter. Ich will nicht von 3D-Grafiken. Also werde ich die Aufteilung der Daten in mehrere Zeilen in der gleichen Grundstück.

Meiner Daten sieht wie folgt aus, in einem Fall:

    #k   #N   #time   
1   1   0.000556134 
2   1   0.00099 
4   1   0.00201011  
8   1   0.00376214  
16  1   0.00675843  
1   2   0.000717646 
2   2   0.000794106 
4   2   0.0016033   
8   2   0.0033602   
16  2   0.00795338  
1   4   0.000476448
...     ...     ... 

Erste ist die Anzahl der streams, die ich verwenden, der zweite Puffer-Größe und das Letzte mal auf dieser opperation.

Möchte ich ein Diagramm wo die Puffer-Größe X mal Y und es gibt eine Zeile für jede "Menge der streams verwendet werden." Mein code bis jetzt:

     reset
        set   autoscale # scale axes automatically
        unset log       # remove any log-scaling
        unset label     # remove any previous labels
        set xtic auto   # set xtics automatically
        set ytic auto   # set ytics automatically
        #set logscale x 2
        #set logscale y 2
        set rmargin 10
        set bmargin 5
        set tmargin 5 
        set key left top
        set title
        set term png giant size 1500, 800 crop

        set title "Adapter Stream Input" font "verdana, 20"
        set xlabel "Buffer Size" font "verdana, 20"
        set ylabel "Time in Seconds" font "verdana, 20"

        set key right bottom spacing 4 width 5 height 5 font "verdana, 15"

        set output "AdapterStreamInputTests.png"

        plot    "AdapterStreamInputTests.txt" using ($1 == 1 ? $2 : 1/0):($1 == 1 ? $3 : 1/0) title '1 Stream' with linespoints ls 1 linecolor rgb "blue", \
        "AdapterStreamInputTests.txt" using ($1 == 2 ? $2 : 1/0):($1 == 2 ? $3 : 1/0) title '2 Stream' with linespoints ls 1 linecolor rgb "red", \
        "AdapterStreamInputTests.txt" using ($1 == 4 ? $2 : 1/0):($1 == 4 ? $3 : 1/0) title '4 Stream' with linespoints ls 1 linecolor rgb "yellow", \
        "AdapterStreamInputTests.txt" using ($1 == 8 ? $2 : 1/0):($1 == 8 ? $3 : 1/0) title '8 Stream' with linespoints ls 1 linecolor rgb "brown", \
        "AdapterStreamInputTests.txt" using ($1 == 16 ? $2 : 1/0):($1 == 16 ? $3 : 1/0) title '16 Stream' with linespoints ls 1 linecolor rgb "pink"

set output

Mein Hauptproblem ist jetzt, dass es Parzellen, alles richtig, aber es wird nicht machen Sie die Linien zwischen den plots. Ich lese aus der Handbuch unter dem Befehl "verwenden" Kapitel, das:

Es sollte angemerkt werden, dass die Parzelle 'le', Handlung 'le' using 1:2, und plot
'le' using ($1):($2) auf subtile Weise verschiedene: 1) wenn die le hat einige Linien
mit einer Spalte und zwei, die erste zu erfinden, x-Werte, wenn
fehlen Sie, der zweite wird ruhig ignorieren Sie die Linien mit einem
Spalte und in der Dritten wird das speichern einer undeniert Wert für Zeilen mit einem
Punkt (so dass ein Grundstück mit Linien, keine Linie verbindet Punkte über die
schlechte Punkt); 2) wenn eine Zeile text enthält in der ersten Spalte, der ersten
wird abgebrochen, das Grundstück an einen Fehler, aber der zweite und Dritte sollte
ruhig überspringen den Müll.

Ich glaube, ich bin in der Dritten Kategorie, und es gibt keine Linien, da jedes Grundstück hat 4 ungültige Grundstücke zwischen Ihnen, aber ich kann nicht finden, dass jede Möglichkeit, es zu beheben.

Ich kann nicht einen Weg finden, um es zu ignorieren ungültige Grundstücke. Und es scheint nicht zu irgendeiner Weise der Vorverarbeitung, die ich finden konnte, könnte das entfernen der ungenutzten Grundstücke. Aber ich bin wahrscheinlich etwas fehlt.

InformationsquelleAutor RobbingDaHood | 2012-03-04

Schreibe einen Kommentar