Graphiques composés

Si une même représentation graphique comporte plusieurs tracés, on spécifiera d'abord le rectangle de représentation et les échelles des axes lors du premier tracé, pour ensuite superposer les tracés suivants.

clf();
x=linspace(-%pi,%pi,50); y=sin(x);
plot2d(x,y,rect=[-4,-1,4,1],nax=[2,9,5,9],axesflag=2);  
                                       // trace une courbe
xtitle( '$\mbox{Titre pour }y=\sin(x)$', '$x$', '$y$')  
                                       // titre et legendes en LaTeX
x=linspace(-%pi/2,%pi/2,5); y=sin(x);
plot2d(x,y,style=-3, frameflag=0);     // affiche 5 marques
x=linspace(-%pi,%pi,20); y=sin(x)/2;
xfpoly(x,y,color(200,200,200));          
                    // surface remplie en gris, couleur (200,200,200)

Figure 2: Figure composée.
\includegraphics[width=10cm]{sinx_compose}

Il est fréquent qu'un graphique contienne non seulement une ou plusieurs représentations de fonctions, mais aussi des chaînes de caractères, des rectangles, ellipses ou autres ajouts graphiques. Les coordonnées de ces ajouts sont relatives à la fenêtre courante.

Figure 3: Figure composée.
\includegraphics[width=7cm]{parabole_compose}

clf()                          
x=linspace(-1,2,100); y=x.*x;
plot2d(x,y,rect=[-1,0,2,4],nax=[10,4,5,5],style=2) 
                                      // represente la courbe
xtitle( 'Parabole', '$x$', '$f(x)$')  // titre et legendes en LaTeX
plot2d([1,1,-1],[0,1,1],style=3) // trace deux segments
help xstring
xstring(1.1,0.1,"abscisse")      // chaine de caracteres
xstring(-0.9,1.1,"ordonnee")     // autre chaine
help xarc                       
xarc(-0.5,1,1,1,0,360*64)        // trace un cercle

Ajouts sur graphique
xarc arc d'ellipse
xfarc arc d'ellipse plein
xarrows flèches
xnumb nombres
xpoly polygone
xfpoly polygone plein
xfpolys polygones plein
xrpoly polygone régulier
xrect rectangle
xfrect rectangle plein
xstring chaîne de caractères (à partir d'un point)
xstringb chaîne de caractères (dans un rectangle)
xtitle titre du graphique et des axes

Des fonctions prédéfinies permettent d'effectuer des représentations planes particulières, comme des histogrammes, des projections de surfaces par courbes de niveau ou niveaux de gris, ou des champs de vecteurs. Les exemples qui suivent concernent la fonction de $ \mathbb{R}^2$ dans $ \mathbb{R}$ qui à $ (x,y)$ associe $ \sin(xy)$ (voir figures 4, 5 et 6).

//
// Courbes de niveau
//
x=linspace(-%pi,%pi,50);      // vecteur d'abscisses
y=x;                          // vecteur d'ordonnees
z=sin(x'*y);                  // matrice des valeurs de la fonction
help contour2d
clf()
contour2d(x,y,z,4);           // trace 4 courbes de niveau
//
// Surface par niveaux de couleurs
// 
f=scf()
grayplot(x,y,z)               // pas vraiment gray le plot
f.color_map = graycolormap(32);
//
// Champ de vecteurs tangents
//
clf()
x=linspace(-%pi,%pi,10);      // vecteur d'abscisses
y=x;                          // vecteur d'ordonnees
fx=cos(x'*y)*diag(y);         // matrice des abscisses de vecteurs
fy=diag(x)*cos(x'*y);         // matrice des ordonnees de vecteurs 
champ(x,y,fx,fy)              // champ des vecteurs

Figure 4: Représentation par courbes de niveau.
\includegraphics[width=10cm]{sinxy_contour}

Figure 5: Représentation par niveaux de gris.
\includegraphics[width=10cm]{sinxy_gris}

Figure 6: Représentation d'un champ de vecteurs.
\includegraphics[width=10cm]{sinxy_champ}

Représentations planes particulières
histplot histogramme
champ champ de vecteurs
fchamp idem, définition par une fonction
grayplot surface par rectangles de couleurs
fgrayplot idem, définition par une fonction
contour2d courbes de niveaux projetées
fcontour2d idem, définition par une fonction


         © UJF Grenoble, 2011                              Mentions légales