Wie zeichnet man Daten mit Linien und Beschriftungen in jedem Punkt?

7714
Danilo

Ich habe ein Archiv "curva-l" mit den Daten:

2.308E-05 5.397E-01 1.0E-09  2.318E-05 5.224E-01 1.0E-08 2.426E-05 5.029E-01 1.0E-07  4.012E-05 4.718E-01 1.0E-06 1.311E-04 4.155E-01 1.0E-05 3.751E-04 3.703E-01 1.0E-04 1.306E-03 3.197E-01 1.0E-03 

Die erste Spalte ist die Achse X, die zweite Y und die dritte Spalte ist der Wert jedes Punktes. Ich möchte diese Kurve mit Linien zeichnen und jeden Punkt mit dem jeweiligen Wert beschriften. Kann mir jemand helfen?

Like this one

4

2 Antworten auf die Frage

4
Hastur

Es hängt von der gnuplot-Version ab, die Sie haben.
Es gibt viele Beispiele [ 1, 2, ...], mit denen Sie beginnen können. Lassen Sie sich von den Demos inspirieren.

Der Stil des angezeigten Bildes ist linepoints, und Sie können die Beschriftungen mit dem Schlüsselwort plotten with label.
Sie können den gleichen Datensatz zweimal drucken, einen mit den Linienpunkten und den zweiten mit den Etiketten.

Beginnen mit

plot "data.dat" w linespoint, '' with labels 

und schau es dir an. Nachdem Sie den Offset gefunden haben, bevorzugen Sie.
Der folgende Code

set xlabel "My X Axes" set ylabel "My Y Axes" plot "data.dat" with linespoint lw 2 pt 11 \, '' with labels center offset 3.4,.5 notitle 

gibt dir dieses Bild

Plot des Codes

In einem zweiten Mal können Sie die xrange, yrange... logarithmische Skala hinzufügen ... ändern.

2
user529439

Oder in einem einzigen Befehl:

< /tmp/dat awk '' | feedgnuplot --domain --style 0 'with lines' --style 1 'with labels' --rangesize 1 2 --set 'logscale x' --set 'logscale y' 
Bitte erarbeiten Sie Ihre Antwort: Erklären Sie, was "feedgnuplot" ist und welcher Teil dieses Befehls das Problem des Fragestellers tatsächlich löst. Wrzlprmft vor 8 Jahren 2