Ceci est une ancienne révision du document !
Gnuplot
Exemple de code:
set datafile separator ',' # set key autotitle columnhead # use the first line as title set title "title" noenhanced set ylabel "Duration (s)" set xlabel "Number of workers" # set key center top set terminal pngcairo size 800,600 enhanced font 'Segoe UI,10' set output 'mpi-pipelined-all.png' # set y2tics # enable second axis # set ytics nomirror # dont show the tics on that side # set y2label "Number of iterations per second" # label for second axis set grid set xrange [3:] plot \ "1-mpi/result.csv" using 1:2 title "1 node" with linespoints, \ "2-mpi/result.csv" using 1:2 title "2 nodes (nb workers x 2)" with linespoints, \ "1-mpi/result.csv" using 1:($2/2) title "2 nodes with perfect scalability" with linespoints dashtype "--"
Pour lier les points par une ligne:
set style data linespoints
Paramètres de chaque courbe:
lcsuivi d'un numéro ou du nom d'une couleur: couleur de la courbeltsuivi d'un numéro: type de pointdtsuivi d'un numéro: style de la ligne
Utilisation depuis un script bash:
gnuplot <<EOF
set terminal pngcairo size 800,600 enhanced font 'Segoe UI,10'
EOF
Échelle logarithmique
http://gnuplot.sourceforge.net/docs_4.2/node197.html
set logscale xz # active l'échelle log sur les axes x et z set logscale y 2 # active l'échelle log en base 2 sur l'axe y
Dessiner tous les fichiers d'un dossier
plot for [ f in system("ls *.csv") ] f using 1:2 title f
Changer la taille des labels d'un axe
Statistiques
stats "result.csv" using 4 prefix "A" stats "result.csv" using 5 prefix "B" set yrange [0:1.1] plot "result.csv" using 1:($4/A_max) title columnhead(4) with linespoints, "" using 1:($5/B_max) title columnhead(5) with linespoints
Histogramme
Pour un fichier de ce style:
Thread #0 150.0 150.9 152.4 Thread #1 148.4 150.2 151.7 Thread #2 149.8 151.1 152.4 Thread #3 148.2 149.8 151.2 Thread #4 150.2 151.2 152.2 ...
set terminal pngcairo size 800,600 enhanced font 'Segoe UI,10' set output 'without-comm.png' set datafile separator '\t' set style histogram errorbars lw 1 # pour afficher les barres d'erreurs set style data histogram set style fill solid border -1 set ylabel "Duration (ms)" set xtics rotate set xrange [-0.5:] set yrange[0:140] # 3: valeur de la barre # 2: minimum pour la barre d'erreur # 4: maximum pour la barre d'erreur # xtic(1): la première colonne sera pour les labels de x plot "data-without-comm.out" using 3:2:4:xtic(1) title "Without communications"