2008-11-29 12 views

Antwort

23
 
plot "data.dat" using 2: xtic(1) with histogram 

Hier data.dat enthält Daten des Formulars

 
title 1 
title2 3 
"long title" 5 
95

einfachen Balkendiagramm:

bar graph

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:

multi color bar graph

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 

barchart_multi

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 

barchart_multi2

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 

barchart_multi3

Hinweis: Sie müssen ein paar andere grundlegende Befehle hinzufügen, um den gleichen Effekt wie die Beispielbilder zu erhalten.

+0

Für viele Anwendungen ist es bequemer, den Histogramm-Darstellungsstil zu verwenden, insbesondere zum Gruppieren und Stapeln von Werten. – Christoph

+0

@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

+1

@alex Nicht sicher, welches von all diesen Beispielen meinst du: mit 'lc rgb variable' kannst du nicht anders haben Schlüsseleingaben. – Christoph

8

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.