Gnuplot

Résolu
s500 -  
mamiemando Messages postés 33228 Date d'inscription   Statut Modérateur Dernière intervention   -
Bonjour,

je veux savoir comment faire les courbes à partir d'un fichier texte
à l'aide de gnuplot mais avec précision (le fichier contient des valeurs(cpu load memoire cache buffers.. pour un processus prises chaque 30secondes pendant 8 heures donc c'est beaucoup des valeurs ) mais lorsque j'ai essayé la courbe n'était pas trés clair c àd que beaucoup des valeurs ne semblent ps etre pris en compte je pense que c'est un probléme d'échelle ) je ne sais pas
help pleaseeee

1 réponse

  1. mamiemando Messages postés 33228 Date d'inscription   Statut Modérateur Dernière intervention   7 940
     
    Il suffit de regarder comment les exemples sont construits. Si tu relies les points, attention à les passer dans l'ordre (gnuplot les connecte dans l'ordre dans lequel il lit les points).
    http://gnuplot.sourceforge.net/demo/simple.html

    Si tu veux plus de détails il faudrait au moins nous dire comment est structuré ton fichiers de points (csv je suppose ?)

    Voici un exemple de fichier .gnu un peu évolué qui lit trois fichiers de données :


    # terminal
    set term postscript color eps 18

    # Line style
    set border linewidth 1.5
    set style line 1 lc rgb '#0060ad' lt 1 lw 2 pt 7 pi -1 ps 1.5
    set style line 2 lc rgb '#00ad60' lt 1 lw 2 pt 7 pi -1 ps 1.5
    set style line 3 lc rgb '#ad6000' lt 1 lw 2 pt 7 pi -1 ps 1.5
    set pointintervalbox 3

    # Caption
    #set key on inside top left
    set key on outside right

    # Title
    set title "My title."

    # X-axis
    set xlabel "x label"
    set xrange [0:]
    set xtics 1
    set xtics out

    # Y-axis
    set ylabel "y label"
    set yrange [0:]
    set ytics 10

    # Curves
    set style fill solid 0.25 border
    set style histogram errorbars gap 2 lw 1
    set style data histogram
    set grid ytics
    set xrange [0:]

    box_size = 0.2
    plot\
    "fichier1.dat" using (-1 * box_size + 1 + $0):3:(box_size) ls 1 with boxes title "pts1",\
    "fichier1.dat" using (-1 * box_size + 1 + $0):3:2:4 ls 1 with error notitle,\
    "fichier2.dat" using (0 * box_size + 1 + $0):3:(box_size) ls 2 with boxes title "pts2",\
    "fichier2.dat" using (0 * box_size + 1 + $0):3:2:4 ls 2 with error notitle,\
    "fichier3.dat" using (1 * box_size + 1 + $0):3:(box_size) ls 3 with boxes title "pts3",\
    "fichier3.dat" using (1 * box_size + 1 + $0):3:2:4 ls 3 with error notitle


    ... avec fichier{1,2,3}.dat ainsi structurés :

    #x    ymin     yavg    ymax
    1 9.00 17.88 63.00
    2 9.00 17.98 63.00
    3 9.00 15.96 63.00
    4 9.00 14.12 63.00


    Ceci trace un histogramme mettant à chaque valeur discrète de x une barre correspondant à chaque couple (x, yavg) de chacun des trois fichiers de données et une barre d'incertitude (x, ymin, ymax).

    Pour construire le fichier :

    gnuplot fichier.gnu


    Bonne chance
    0
    1. sarra 500
       
      merci beaucoup
      0
    2. mamiemando Messages postés 33228 Date d'inscription   Statut Modérateur Dernière intervention   7 940
       
      De rien, bonne continuation :-)
      0