plot
. On crée pour cela un vecteur x
d'abscisses,
et on prend l'image de ce vecteur par la fonction pour créer un vecteur
y
d'ordonnées. La commande plot(x,y)
représente les
points de coordonnées (x(i),y(i))
en les joignant par des
traits noirs (par défaut), ou selon un autre style, si le style de
base a été changé. La qualité de la représentation dépend
donc du nombre de points. On pourra essayer l'exemple suivant en
changeant le style de graphique par xset()
. Notez que contrairement
aux autres primitives graphiques, plot
efface la fenêtre à
chaque appel.
x=linspace(0,3*%pi,10); y=x.*sin(x); plot(x,y) x=linspace(0,3*%pi,100); y=x.*sin(x); plot(x,y)On obtient le même résultat par
fplot2d
, mais
il faut pour cela prédéfinir la fonction à représenter.
Les tracés successifs se superposent.
deff("y=f(x)","y=x.*sin(x)") x=linspace(0,3*%pi,10); fplot2d(x,f) x=linspace(0,3*%pi,100); fplot2d(x,f)Quand on veut superposer plusieurs courbes avec les mêmes échelles de représentation, il est préférable d'utiliser
plot2d
, qui autorise des styles
différents pour chaque courbe. La syntaxe générale est la
suivante.
plot2d(abscisses,ordonnees,style,cadre,legendes,bornes,graduation)
abscisses, ordonnees
: ce sont nécessairement
des matrices de mêmes dimensions. Si ce sont des vecteurs (une seule
courbe à tracer), ils peuvent être ligne ou colonne. Si plusieurs
courbes doivent être tracées, elles doivent correspondre à
autant de colonnes. Par défaut les points seront reliés par des segments.
A chaque courbe correspond une couleur de la palette (il y en a 32).
x=linspace(0,3*%pi,30); y=x.*sin(x); plot2d(x,y) xbasc() y2=2*y; plot2d([x,x],[y,y2]) // incorrect : deux courbes concatenees xbasc() plot2d([x;x],[y;y2]) // incorrect : trace 30 segments xbasc() plot2d([x;x]',[y;y2]') // correct xbasc() X=x'*ones(1,20); Y=y'*[1:20]; plot2d(X,Y)
style
: c'est un vecteur ligne dont la dimension
est le nombre de courbes à tracer (nombre de colonnes des matrices
abscisses
et ordonnees
). Les coordonnées sont
positives ou négatives. Si le style est positif, les points sont
joints par des segments. Si le style est nul, les points sont
affichés comme des pixels noirs. Si le style est négatif, des
marques de formes particulières sont affichées.
x=linspace(0,3*%pi,30); X=x'*ones(1,10); y=x.*sin(x); Y=y'*[1:10]; couleurs=matrix([2;5]*ones(1,5),1,10) xbasc() plot2d(X,Y,couleurs) marques=-[0:9] xbasc() plot2d(X,Y,marques)
cadre
: ce paramètre est une chaîne de
caractères formée de trois chiffres, dont :
0
ou 1
),
cadre
vaut "021"
(pas de légendes,
échelles de représentation calculées automatiquement,
axes tracés). Si l'on superpose deux
graphiques avec cette option par défaut, les échelles ne seront
pas les mêmes. La solution consiste à tracer tous les graphiques
à partir du second sur une même fenêtre avec l'option
"000"
(pas de légende, utiliser les échelles
précédentes, ne pas retracer les axes).
x=linspace(0,3*%pi,30); y=x.*sin(x); xbasc() plot2d(x,y) y2=2*y; plot2d(x,y2) // incorrect : les echelles sont differentes xbasc(); plot2d(x,y) plot2d(x,y2,"000") // erreur plot2d(x,y2,1,"000") xbasc(); plot2d(x,y2) plot2d(x,y,1,"000")
legendes
: c'est une chaîne de
caractères contenant les différentes légendes, séparées par
@
.
x=linspace(0,3*%pi,30); X=x'*ones(1,5); y=x.*sin(x); Y=y'*[1:5]; styles=[-2:2] legendes="x sin(x)@2 x sin(x)@3 x sin(x)@4 x sin(x)@5 x sin(x)" xbasc() plot2d(X,Y,styles,"121",legendes)
bornes
: c'est le rectangle de
représentation, décrit par les deux coordonnées du coin
inférieur gauche, suivies des deux coordonnées du coin inférieur
droit : [xmin,ymin,xmax,ymax]
.
x=linspace(0,3*%pi,30); y=x.*sin(x); xbasc() plot2d(x,y,1,"011"," ",[0,-10,10,10])
graduations
: ce vecteur de quatre entiers
permet de préciser la fréquence des graduations et
sous-graduations en abscisse et ordonnée. Par exemple, avec
[2,10,4,5]
,
l'intervalle des abscisses sera divisé en 10, chacun des 10
sous-intervalles étant subdivisé en 2. Pour les ordonnées il y aura 5
sous-intervalles, chacun subdivisé en 4.
x=linspace(0,3*%pi,30); y=x.*sin(x); xbasc() plot2d(x,y,1,"011"," ",[0,-10,10,10],[2,10,4,5])
Graphes de fonctions | |
plotframe |
rectangle de représentation |
plot |
points joints par des segments |
plot2d |
plusieurs courbes avec styles différents |
plot2d1 |
idem, avec plus d'options |
plot2d2 |
représentation en escalier |
plot2d3 |
barres verticales |
plot2d4 |
flèches |
fplot2d |
représenter des fonctions |
isoview
ou square
.