Contenuto principale

hold

Mantenere il grafico corrente quando si aggiungono nuovi grafici

Descrizione

hold on imposta lo stato hold degli assi su on, che mantiene i grafici negli assi correnti in modo che i nuovi grafici aggiunti agli assi non cancellino quelli esistenti. Quando lo stato hold è su on, i nuovi grafici utilizzano i colori e gli stili di linea successivi in base alle proprietà ColorOrder e LineStyleOrder degli assi. MATLAB® regola i limiti degli assi, i segni di spunta e le etichette di spunta per visualizzare l’intervallo completo dei dati. Se non esiste un oggetto assi, il comando hold ne crea uno.

esempio

hold off imposta lo stato hold degli assi su off, in modo che i nuovi grafici aggiunti agli assi cancellino quelli esistenti e resettino tutte le proprietà degli assi. Quando lo stato hold è su off, il grafico successivo aggiunto agli assi utilizza il primo colore e stile di linea in base alle proprietà ColorOrder e LineStyleOrder degli assi. Questa opzione è il comportamento predefinito.

esempio

hold alterna lo stato hold tra on e off.

hold(state) imposta lo stato hold degli assi specificando un valore state. È possibile specificare state come "on", "off", un valore logico o un valore OnOffSwitchState.

hold(ax,___) imposta lo stato hold per gli assi specificati da ax anziché per gli assi correnti. Specificare ax prima di tutti gli altri argomenti.

esempio

Esempi

comprimi tutto

Creare un grafico a linee. Utilizzare hold on per aggiungere un secondo grafico a linee senza cancellare il grafico a linee esistente. Il nuovo grafico utilizza il colore e lo stile di linea successivo in base alle proprietà ColorOrder e LineStyleOrder degli assi. Quindi reimpostare lo stato hold su off.

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.

Quanto lo stato hold è impostato su off, i nuovi grafici cancellano quelli esistenti. I nuovi grafici partono dall'inizio dell'ordine dei colori e degli stili di linea.

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

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

È possibile visualizzare una disposizione a piastrelle dei grafici utilizzando le funzioni tiledlayout e nexttile. Chiamare la funzione tiledlayout per creare il layout a piastrelle di un grafico 2x1. Chiamare la funzione nexttile per creare gli oggetti assi ax1 e ax2. Tracciare un grafico a onda sinusoidale su ciascun asse.

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.

Aggiungere una seconda onda sinusoidale agli assi superiori.

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.

Creare il layout a piastrelle di un grafico 1x2. Chiamare la funzione nexttile per creare due oggetti assi e tracciarli sugli assi.

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.

Impostare lo stato hold per entrambi gli assi su 'on'. Quindi visualizzare i dati aggiuntivi in ciascun grafico.

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.

Argomenti di input

comprimi tutto

Stato hold degli assi, specificato come uno dei seguenti valori:

  • "on" o "off": un valore "on" imposta lo stato hold su on, mentre "off" imposta lo stato su off. È inoltre possibile specificare i vettori di caratteri 'on' o 'off'.

  • 1 (true) o 0 (false) numerico o logico: un valore di 1 o true imposta lo stato hold su on, mentre 0 o false imposta lo stato su off. (da R2024a)

  • Un valore matlab.lang.OnOffSwitchState: un valore di matlab.lang.OnOffSwitchState.on imposta lo stato hold su on, mentre matlab.lang.OnOffSwitchState.off imposta lo stato su off. (da R2024a)

Assi di destinazione, specificate in uno dei seguenti modi:

  • Qualsiasi tipo di oggetto asse: un oggetto Axes, PolarAxes o GeographicAxes.

  • Un array di oggetti asse che appartengono alla stessa classe. Per determinare la classe, utilizzare la funzione class.

Se non si specificano gli assi, hold imposta lo stato hold per gli assi correnti.

Suggerimenti

  • Utilizzare la funzione ishold per testare lo stato hold.

Algoritmi

La funzione hold imposta queste proprietà:

  • Proprietà degli assi NextPlot: imposta questa proprietà dell’oggetto associato Axes, PolarAxes o GeographicAxes su 'add' o 'replace'.

  • Proprietà della figura NextPlot: imposta questa proprietà dell’oggetto Figure su 'add'.

Cronologia versioni

Introduzione prima di R2006a

espandi tutto