Main Content

hold

Conserver le tracé courant lors de l’ajout de nouveaux tracés

Description

exemple

hold on conserve les tracés dans les axes courants de sorte que les nouveaux tracés ajoutés aux axes ne suppriment pas ceux qui existent déjà. Les nouveaux tracés utilisent les couleurs et les styles de ligne suivants en fonction des propriétés ColorOrder et LineStyleOrder des axes. MATLAB® ajuste les limites, les marques et les étiquettes de graduation des axes pour afficher toute la plage de données. En l’absence d’axes, la commande hold les crée.

exemple

hold off désactive la fonctionnalité hold pour que les nouveaux tracés ajoutés aux axes effacent les tracés existants et réinitialisent toutes les propriétés des axes. Le prochain graphique ajouté aux axes utilise la première couleur et le premier style de ligne en fonction des propriétés ColorOrder et LineStyleOrder des axes. Cette option constitue le comportement par défaut.

hold all est identique à hold on. Cette syntaxe sera supprimée dans une prochaine version. Utilisez plutôt hold on.

hold bascule l'état de la fonctionnalité de hold entre On (activée) et Off (désactivée).

exemple

hold(ax,___) définit l'état de la fonctionnalité de hold pour les axes spécifiés par ax au lieu des axes courants. Spécifiez ax avant tous les autres arguments dans l’une des syntaxes précédentes. Utilisez des guillemets simples autour des entrées 'on' et 'off', telles que hold(ax,'on').

Exemples

réduire tout

Créez un tracé linéaire. Utilisez hold on pour ajouter un deuxième tracé linéaire sans supprimer le tracé linéaire existant. Le nouveau graphique utilise la couleur et le style de ligne suivants en fonction des propriétés des axes ColorOrder et LineStyleOrder. Désactivez ensuite la fonctionnalité de hold.

x = linspace(-pi,pi);
y1 = sin(x);
plot(x,y1)

hold on
y2 = cos(x);
plot(x,y2)
hold off

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

Une fois la fonctionnalité de hold désactivé, les nouveaux tracés suppriment les tracés existants. Les nouveaux tracés démarrent au début de l’ordre des couleurs et de l’ordre des styles de ligne.

y3 = sin(2*x);
plot(x,y3)

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

Depuis la version R2019b, vous pouvez afficher une mosaïque de tracés à l’aide des fonctions tiledlayout et nexttile. Utilisez la fonction tiledlayout pour créer une disposition de graphique en mosaïque de 2 x 1. Utilisez la fonction nexttile pour créer les objets axes, ax1 et ax2. Tracez une onde sinusoïdale sur chaque axe.

x = linspace(0,10);
y1 = sin(x);
y2 = cos(x);
tiledlayout(2,1)

% Top plot
ax1 = nexttile;
plot(ax1,x,y1)

% Bottom plot
ax2 = nexttile;
plot(ax2,x,y2)

Figure contains 2 axes objects. Axes object 1 contains an object of type line. Axes object 2 contains an object of type line.

Ajoutez une deuxième onde sinusoïdale aux axes supérieurs.

hold(ax1,'on')
y3 = sin(2*x);
plot(ax1,x,y3)
hold(ax1,'off')

Figure contains 2 axes objects. Axes object 1 contains 2 objects of type line. Axes object 2 contains an object of type line.

Créez une disposition de graphique en mosaïque de 2 x 1. Appelez la fonction nexttile pour créer deux objets axes et réalisez des tracés dans ces axes.

t = tiledlayout(1,2);
ax1 = nexttile;
ax2 = nexttile;
plot(ax1,[0 1 0 1])
scatter(ax2,rand(1,10),rand(1,10),'filled')

Figure contains 2 axes objects. Axes object 1 contains an object of type line. Axes object 2 contains an object of type scatter.

Définissez l’état hold pour les deux axes sur 'on'. Affichez ensuite des données supplémentaires dans chaque tracé.

hold([ax1 ax2],'on')
plot(ax1,[.5 .2 .5 .2])
scatter(ax2,rand(1,10),rand(1,10),'filled')

Figure contains 2 axes objects. Axes object 1 contains 2 objects of type line. Axes object 2 contains 2 objects of type scatter.

Arguments d'entrée

réduire tout

Axes cibles, spécifiés sous une des formes suivantes :

  • Tout type d’objet axes : un objet Axes, PolarAxes ou GeographicAxes.

  • Un tableau d’objets axes appartenant à la même classe. Pour déterminer la classe, utilisez la fonction class.

Si vous ne spécifiez pas les axes, hold définit l’état de la fonctionnalité de hold pour les axes courants.

Conseils

  • Utilisez la fonction ishold pour tester l’état de la fonctionnalité de hold.

Algorithmes

La fonction hold définit les propriétés suivantes :

  • Propriété des axes NextPlot - Définit cette propriété de l’objet associé Axes, PolarAxes ou GeographicAxes sur 'add' ou 'replace'.

  • Propriété de figure NextPlot - Définit cette propriété de l’objet Figure sur 'add'.

Historique des versions

Introduit avant R2006a