Tracer deux axes dans gnuplot

est-il possible de tracer deux courbes, avec deux axes correspondants dans gnuplot, chacun ayant une échelle différente?

Par exemple, y=x**2 et y=x**4 dans le même graphique (elles varient suffisamment pour être "inconfortables" lorsqu'elles sont tracées avec la même échelle).

28
demandé sur Keith Pinson 2010-05-13 18:39:08

2 réponses

Vous pouvez avoir les axes manipulés automatiquement sans que vous ayez à les mettre à l'échelle vous-même et garder auto-échelle:

set terminal jpeg
set output 'graph.jpg'

set xrange [-10:10]
set ytics 10 nomirror tc lt 1
set ylabel '2*x' tc lt 1
set y2tics 20 nomirror tc lt 2
set y2label '4*x' tc lt 2
plot 2*x linetype 1, 4*x linetype 2 axes x1y2

output of the script

42
répondu Andrew S 2016-12-23 22:17:34

il est possible de définir des gammes différentes pour y et y2 (les axes de droite), et même de définir la couleur des étiquettes/tics indépendamment.

alors nous divisons simplement la seconde fonction par 2 (ou quelque chose d'approprié) et définissons les couleurs... comme dans cet exemple:

set xrange [-10:10]
set yrange [-20:20]
set y2range [-40:40]

set ytics 10 nomirror tc lt 1
set ylabel '2*x' tc lt 1

set y2tics 20 nomirror tc lt 2
set y2label '4*x' tc lt 2

plot 2*x linetype 1, 4*x/2+.5 linetype 2
11
répondu osti 2010-05-14 15:51:57