Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 04/08/2008, à 17:01

flost

affichage GNUPLOT

Bonjour,

J'ai des données dans un fichier .txt dont je me sert pour tracer des courbes avec GNUPLOT (avec la commande using...). Je ne comprends pas pourquoi par moment il affiche mes courbes sans problème et à d'autres moments il affiche une fenêtre grise (si je passe ensuite par le terminal postscript le fichier alors crée est vide).

Les conditions d'affichages ne changes jamais (les échelles sont le mêmes d'une simulation à l'autre, idem pour les tailles de cadre...).

Avez-vous une idée de la source de ce problème extrêmement gênant dans ce que je fais (c'est un peu la loterie, j'ai 1 courbe sur 10 qui s'affiche).


voici quelques lignes de mon fichier .txt:
-1.5 3.45755803846e-13 -1.1898e-08 1.54250407984e-13
-1 3.43741990392e-13 -1.5918e-09 1.59282133785e-13
-0.5 3.33011748449e-13 -3.42e-11 1.7239819728e-13

et un extrait du code pour afficher:
set gp [open "|gnuplot" r+]
puts $gp "set size 1, 1"

puts $gp "set origin 0.0, 0.0"
puts $gp "set multiplot"

#supprime les axes right et top
puts $gp "set border 3"
puts $gp "set xtics nomirror"
puts $gp "set ytics nomirror"
#on cree une grille
puts $gp "set grid ytics xtics mxtics"
#repartie les figures sur la fenetre
#puts $gp "set key box"
puts $gp "set logscale x"
puts $gp "set size 0.5, 0.33"
puts $gp "set origin 0.0, 0.66"
puts $gp "set xlabel 'C(f) pour delta V=$dvchoisi'"
puts $gp "plot 'CFmesure.txt' using 1:2, 'CFmodel.txt' using 1:2 w l lw 3"
puts $gp "set size 0.5, 0.33"
puts $gp "set origin 0.5, 0.66"
puts $gp "set xlabel 'R(f) pour delta V=$dvchoisi'"
puts $gp "plot 'CFmesure.txt' using 1:3, 'CFmodel.txt' using 1:3 w l lw 3"

Note: le code est écrit en tcl/tk.

Dernière modification par flost (Le 04/08/2008, à 17:03)

Hors ligne

#2 Le 04/08/2008, à 20:50

Petit Lepton

Re : affichage GNUPLOT

Si je ne m'abuse, tu utilises une échelle logarithmique pour l'axe des abscisses alors que les valeurs de la première colonne sont négatives.

Hors ligne

#3 Le 05/08/2008, à 09:31

flost

Re : affichage GNUPLOT

C'est une erreur de ma part, les lignes de codes ne sont pas les bonnes, voici celles qui me posent tant de problème:

set gp [open "|gnuplot" r+]
puts $gp "set size 1, 1"

puts $gp "set origin 0.0, 0.0"
puts $gp "set multiplot"

#supprime les axes right et top avec set border 3 mais set border 11 supprime celui du haut
puts $gp "set border 3"
puts $gp "set xtics nomirror"
puts $gp "set ytics nomirror"
#on cree une grille
puts $gp "set grid ytics xtics mxtics"
#repartie les figures sur la fenetre
#puts $gp "set key box"
puts $gp "set logscale y"
puts $gp "set size 1, 0.5"
puts $gp "set origin 0.0, 0.5"
puts $gp "set xlabel 'I(V) pour freq=$freqchoisie'"
puts $gp "plot 'CVmesure.txt' using 1:3 notitle, 'CVmodel.txt' using 1:3 notitle w l lw 3"
puts $gp "set nologscale"
puts $gp "set size 1, 0.5"
puts $gp "set origin 0.0, 0.0"
puts $gp "set xlabel 'C(V) pour freq=$freqchoisie'"
#puts $gp "set y2label 'ecart(%)'"
#puts $gp "set y2tics"
#puts $gp {set y2range [0:]}
#if {$compteur > 1} {
puts $gp "plot 'CVmesure.txt' using 1:4 notitle, 'CVmodel.txt' using 1:2:(1.0) notitle  w l lw 3"
#} else {
#puts $gp "plot 'CVmesure.txt' using 1:2 notitle, 'CVmodel.txt' using 1:2:(1.0) notitle  w l lw 3"
#}
puts $gp "replot"
flush $gp



CVmesure.txt:
-1.5 3.45642841128e-13 -1.1898e-08 1.54189745237e-13
-1 3.43490450226e-13 -1.5918e-09 1.59217061704e-13
-0.5 3.3361583602e-13 -3.42e-11 1.72810293995e-13
0 2.73000926863e-13 5.034e-11 2.73000926863e-13
0.5 1.72810293995e-13 8.824e-11 3.3361583602e-13
1 1.59217061704e-13 2.16e-10 3.43490450226e-13
1.5 1.54189745237e-13 4.677e-10 3.45642841128e-13

CVmodel.txt:
-1.5 1.55057513417e-13 0.0
-1.375 1.56052548913e-13 0.0
-1.25 1.57086818888e-13 0.0
-1.125 1.58108471556e-13 0.0
-1 1.5905978079e-13 0.0
-0.875 1.59882532133e-13 0.0
-0.75 1.60509411319e-13 0.0
-0.625 1.60380477602e-13 0.0
-0.5 1.56209171734e-13 0.0
-0.375 1.40250334184e-13 0.0
-0.25 1.29574955945e-13 0.0
-0.125 1.85573415031e-13 0.0
0 2.65135390892e-13 0.0
0.125 3.11827723095e-13 0.0
0.25 3.31108358757e-13 0.0
0.375 3.36463416295e-13 0.0
0.5 3.35934337128e-13 0.0
0.625 3.33534310423e-13 0.0
0.75 3.31024026785e-13 0.0
0.875 3.28986942651e-13 0.0
1 3.27567934547e-13 0.0
1.125 3.26657679053e-13 0.0
1.25 3.26135018926e-13 0.0
1.375 3.2589106791e-13 0.0
1.5 3.257995933e-13 0.0

Dernière modification par flost (Le 05/08/2008, à 09:34)

Hors ligne

#4 Le 05/08/2008, à 09:41

flost

Re : affichage GNUPLOT

J'ai remarqué suite à ta remarque Petit Lepton, que sur mon axe y (qui est passé en échelle log) il y a des valeurs négatives.

Comment puis-je faire pour que ça ne plante pas ? Ce qui me conviendrai serait d'afficher des points d'ordonnée nulle quand on rencontre des valeurs négatives.

Hors ligne