Wie können Sie Balkendiagramme in gnuplot mit Textbeschriftungen plotten?Wie zeichnen Sie Balkendiagramme in gnuplot?
Antwort
plot "data.dat" using 2: xtic(1) with histogram
Hier data.dat enthält Daten des Formulars
title 1 title2 3 "long title" 5
Ich empfehle Derek Brünings Bargraph Generator Perl-Skript. Erhältlich bei http://www.burningcutlery.com/derek/bargraph/
einfachen Balkendiagramm:
set boxwidth 0.5
set style fill solid
plot "data.dat" using 1:3:xtic(2) with boxes
data.dat:
0 label 100
1 label2 450
2 "bar label" 75
Wenn Sie Ihre Bars wollen anders stylen, Sie etwas tun können, wie:
set style line 1 lc rgb "red"
set style line 2 lc rgb "blue"
set style fill solid
set boxwidth 0.5
plot "data.dat" every ::0::0 using 1:3:xtic(2) with boxes ls 1, \
"data.dat" every ::1::2 using 1:3:xtic(2) with boxes ls 2
Wenn Sie möchten, für jeden Eintrag mehrere Bars tun:
data.dat:
0 5
0.5 6
1.5 3
2 7
3 8
3.5 1
gnuplot:
set xtics ("label" 0.25, "label2" 1.75, "bar label" 3.25,)
set boxwidth 0.5
set style fill solid
plot 'data.dat' every 2 using 1:2 with boxes ls 1,\
'data.dat' every 2::1 using 1:2 with boxes ls 2
Wenn Sie heikel und verwenden einige nette gnuplot Tricks sein wollen:
Gnuplot hat psuedo-Spalten, die als Index für Farbe verwendet werden können:
plot 'data.dat' using 1:2:0 with boxes lc variable
Weiter können Sie eine Funktion verwenden, um die gewünschten Farben auszuwählen:
mycolor(x) = ((x*11244898) + 2851770)
plot 'data.dat' using 1:2:(mycolor($0)) with boxes lc rgb variable
Hinweis: Sie müssen ein paar andere grundlegende Befehle hinzufügen, um den gleichen Effekt wie die Beispielbilder zu erhalten.
Ich möchte nur auf die oberste Antwort, die GNUPlot verwendet, um ein Balkendiagramm zu erstellen, für absolute Anfänger, weil ich die Antwort lesen und war immer noch verwirrt von der Flut der Syntax.
Wir beginnen mit dem Schreiben einer Textdatei von GNUplot-Befehlen. Nennen wir es commands.txt:
eingestellten Ausgangs png Satz Begriff "graph.png"
Satz boxwidth 0.5
sets Füllstil festen
plot "data.dat" unter Verwendung von 1: 3: xtic (2) mit den Kästen
"Term PNG set" GNUplot zur Ausgabe einer PNG-Datei festgelegt wird und "set output" graph.png "" ist der Name der Datei, in die die Ausgabe erfolgt.
Die nächsten beiden Zeilen sind eher selbsterklärend. Die fünfte Zeile enthält eine Menge Syntax.
plot "data.dat" mit 1: 3: xtic (2) mit Kästen
"data.dat" ist die Datendatei auf wir arbeiten. "1: 3" bedeutet, dass wir für die x-Koordinaten die Spalte 1 der Datei data.dat und für die y-Koordinaten die Spalte data.dat verwenden. xtic() ist eine Funktion, die für die Nummerierung/Beschriftung der x-Achse zuständig ist. xtic (2) gibt daher an, dass wir Spalte 2 von data.dat für Etiketten verwenden werden.
"data.dat" sieht wie folgt aus:
0 Label 100
1 label2 450
2 "bar Bezeichnung" 75
die Grafik zu zeichnen, Geben Sie "gnuplot commands.txt" im Terminal ein.
Für viele Anwendungen ist es bequemer, den Histogramm-Darstellungsstil zu verwenden, insbesondere zum Gruppieren und Stapeln von Werten. – Christoph
@Christoph Hallo, Wenn ich Schlüssel für diese Art von Grafik hinzufügen möchte? was soll ich machen ? Zum Beispiel wenn ich einen Schlüssel hinzufügen möchte, der besagt, dass die blaue Linie "Winter" und die rote Linie "Sommer" ist. – alex
@alex Nicht sicher, welches von all diesen Beispielen meinst du: mit 'lc rgb variable' kannst du nicht anders haben Schlüsseleingaben. – Christoph