wie man einen unterschiedlichen Versatz in gnuplot-Labels erhält

1103
Lowrenzo

Ich habe einen sehr seltsamen Weg gefunden, horizontale Linien diskreter Werte mit Beschriftungen links oder rechts der Linien zu zeichnen

Ich konstruiere eine Eingabedatei, in der:

  • Die Werte in der 1. Spalte bestimmen die Amplitude der horizontalen Linien
  • Die Werte in der 2. Spalte werden wiederholt, um die horizontalen Linien zu zeichnen
  • Ich setze die Etiketten in die 3. und 4. Spalte, da ich, wie Sie unten sehen werden, entscheiden kann, wo die Etiketten links oder rechts von den Zeilen platziert werden sollen
+ --- + ----------- + ------- + -------- + | 3 | -0,178110 | 130 | | | 4 | -0,178110 | | | | 5 | -0,178110 | | | 
leere Zeile | 3 | -0,185959 | 129 | | | 4 | -0,185959 | | | | 5 | -0,185959 | | |
leere Zeile | 3 | -0.188473 | | | | 4 | -0.188473 | | | | 5 | -0.188473 | x | 128 |
leere Zeile | 3 | -0,208311 | 127 | | | 4 | -0,208311 | | | | 5 | -0,208311 | | | + --- + ----------- + ------- + -------- +

und dann habe ich gebraucht

Plot 'input' u 1: ($ 2 * 27.2114) wl notitle, \
'' alle 3 u 1: ($ 2 * 27.2114) :( x = 3? $ 3: 1/0) mit Etikettenschrift ", 8" Offset -2, 0 notitle, \
'' u 1: ($ 2 * 27.2114): (x = 5? $ 4: 1/0) mit Etikettenschriftart ", 8" Offset 2, 0 Notitle

zu unterscheiden, wo das Etikett links oder in

Ich finde es sehr seltsam, irgendwelche Tipps, um es eleganter zu machen?

Danke im Voraus

Lorenzo

0
Im Grunde muss ich links ein Label und rechts ein Label schreiben Lowrenzo vor 8 Jahren 0

1 Antwort auf die Frage

0
Joce

Warum nicht verwenden every? Dies erlaubt es, ohne Änderung der Datendatei. Hier ein Beispiel mit Daten, die on-the-fly von gnuplot generiert wurden:

plot [-1.5:1.5] "+" u (sin(10*$1)):1 ev 4 w p, "+" u (sin(10*$1)):1:1 ev 8 w labels offset 5,0, "+" u (sin(10*$1)):1:1 ev 8::4 w labels offset -5