Comment tracer des graphiques à barres dans gnuplot avec des étiquettes de texte?
100
Graphique à barres simple:
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
Si vous souhaitez styliser vos barres différemment, vous pouvez faire quelque chose comme:
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
Si vous voulez faire plusieurs barres pour chaque entrée:
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
Si vous voulez être délicat et utiliser quelques astuces gnuplot:
Gnuplot a des colonnes psuedo qui peuvent être utilisées comme index pour colorer:
plot 'data.dat' using 1:2:0 with boxes lc variable
De plus, vous pouvez utiliser une fonction pour choisir les couleurs souhaitées:
mycolor(x) = ((x*11244898) + 2851770)
plot 'data.dat' using 1:2:(mycolor($0)) with boxes lc rgb variable
Remarque: vous devrez ajouter quelques autres commandes de base pour obtenir le même effet que les exemples d'images.
histogram
style de traçage, en particulier pour le regroupement et l'empilement de valeurs.lc rgb variable
vous ne pouvez pas avoir différentes entrées de clé.Ici data.dat contient des données de la forme
la source
Je voudrais juste développer la réponse du haut, qui utilise GNUPlot pour créer un graphique à barres, pour les débutants absolus car j'ai lu la réponse et j'étais toujours confus à cause du déluge de syntaxe.
Nous commençons par écrire un fichier texte de commandes GNUplot. Appelons-le commands.txt:
set term png
configurera GNUplot pour afficher un fichier .png etset output "graph.png"
est le nom du fichier vers lequel il sortira.Les deux lignes suivantes sont assez explicites. La cinquième ligne contient beaucoup de syntaxe.
"data.dat"
est le fichier de données sur lequel nous travaillons.1:3
indique que nous utiliserons la colonne 1 de data.dat pour les coordonnées x et la colonne 3 de data.dat pour les coordonnées y.xtic()
est une fonction chargée de numéroter / d'étiqueter l'axe des x.xtic(2)
, par conséquent, indique que nous utiliserons la colonne 2 de data.dat pour les étiquettes."data.dat" ressemble à ceci:
Pour tracer le graphique, entrez
gnuplot commands.txt
dans le terminal.la source
Je recommande le script Perl du générateur de graphiques à barres de Derek Bruening. Disponible sur http://www.burningcutlery.com/derek/bargraph/
la source
Vous pouvez utiliser directement les histogrammes de style fournis par gnuplot. Voici un exemple si vous avez deux fichiers en sortie:
la source