Contenu principal

Créer un graphique avec deux axes des y

Cet exemple montre comment créer un graphique avec des axes des y à gauche et à droite à l’aide de la fonction yyaxis. Il montre également comment labéliser chaque axe, combiner plusieurs tracés et effacer les tracés associés à l’un des côtés ou aux deux.

Tracer les données par rapport à l’axe des y de gauche

Créez des axes avec un axe des y à gauche et à droite. La commande yyaxis left crée les axes et active le côté gauche. Les fonctions graphiques ultérieures telles que plot ciblent le côté actif. Tracez les données par rapport à l’axe des y de gauche.

x = linspace(0,25);
y = sin(x/2);
yyaxis left
plot(x,y);

Figure contains an axes object. The axes object contains an object of type line.

Tracer les données par rapport à l’axe des y de droite

Activez le côté droit avec yyaxis right. Tracez ensuite un jeu de données par rapport à l’axe des y de droite.

r = x.^2/2;
yyaxis right
plot(x,r);

Figure contains an axes object. The axes object contains 2 objects of type line.

Ajouter un titre et des étiquettes d’axes

Contrôlez le côté des axes devant être actif avec les commandes yyaxis left et yyaxis right. Ajoutez ensuite un titre et des étiquettes d’axes.

yyaxis left
title('Plots with Different y-Scales')
xlabel('Values from 0 to 25')
ylabel('Left Side')

yyaxis right
ylabel('Right Side')

Figure contains an axes object. The axes object with title Plots with Different y-Scales, xlabel Values from 0 to 25, ylabel Right Side contains 2 objects of type line.

Tracer des données supplémentaires par rapport à chaque côté

Ajoutez deux autres lignes sur le côté gauche avec la commande hold on. Ajoutez une barre d’erreur sur le côté droit. Les nouveaux tracés ont la même couleur que l’axe des y correspondant et suivent l’ordre des styles de ligne. La commande hold on affecte à la fois les côtés gauche et droit.

hold on

yyaxis left
y2 = sin(x/3);
plot(x,y2);
y3 = sin(x/4);
plot(x,y3);

yyaxis right
load count.dat;
m = mean(count,2);
e = std(count,1,2);
errorbar(m,e)

hold off

Figure contains an axes object. The axes object with title Plots with Different y-Scales, xlabel Values from 0 to 25, ylabel Right Side contains 5 objects of type line, errorbar.

Effacer un seul côté des axes

Effacez les données de l’axe de droite en activant d’abord celui-ci puis en utilisant la commande cla.

yyaxis right
cla

Figure contains an axes object. The axes object with title Plots with Different y-Scales, xlabel Values from 0 to 25, ylabel Right Side contains 3 objects of type line.

Effacer les axes et supprimer l’axe des y de droite

Effacez les données de tous les axes et supprimez l’axe des y de droite avec cla reset.

cla reset

Figure contains an axes object. The axes object is empty.

Tout tracé que vous créez a désormais un seul axe des y. Par exemple, tracez trois lignes par rapport à l’unique axe des y.

xx = linspace(0,25);
yy1 = sin(xx/4); 
yy2 = sin(xx/5); 
yy3 = sin(xx/6);
plot(xx,yy1,xx,yy2,xx,yy3)

Figure contains an axes object. The axes object contains 3 objects of type line.

Ajouter un second axe des y à un graphique existant

Ajoutez un second axe des y à un graphique existant avec yyaxis. Les tracés existants et l’axe des y de gauche ne changent pas de couleur. L’axe des y de droite prend la couleur suivante dans l’ordre des couleurs des axes. Les nouveaux tracés ajoutés aux axes ont la même couleur que l’axe des y correspondant.

yyaxis right
rr1 = exp(xx/6);
rr2 = exp(xx/8);
plot(xx,rr1,xx,rr2)

Figure contains an axes object. The axes object contains 5 objects of type line.

Voir aussi

Fonctions

Rubriques