Main Content

hold

新しいプロットを追加するときに現在のプロットを保持

説明

hold on は座標軸のホールド状態をオンに設定して現在の座標軸のプロットを保持し、座標軸に追加される新しいプロットによって既存のプロットが削除されないようにします。ホールド状態がオンの場合、新しいプロットには座標軸の ColorOrder プロパティと LineStyleOrder プロパティに基づいて次の色とライン スタイルが使用されます。MATLAB® は座標軸の範囲、目盛り、および目盛りラベルを調整して、データのすべての範囲を表示します。axes オブジェクトが存在しない場合、hold コマンドで作成されます。

hold off は座標軸のホールド状態をオフに設定するため、新しいプロットを座標軸に追加すると既存のプロットは消去され、座標軸のプロパティはすべてリセットされます。ホールド状態がオフの場合、座標軸に次のプロットを追加すると、座標軸の ColorOrder プロパティと LineStyleOrder プロパティに基づいて最初の色とライン スタイルが使用されます。このオプションは既定の動作です。

hold はホールド状態のオンとオフを切り替えます。

hold(state) は、state の値を指定して座標軸のホールド状態を設定します。state は、"on""off"、logical 値、または OnOffSwitchState 値として指定できます。

hold(ax,___) は、現在の座標軸ではなく、ax で指定された座標軸にホールド状態を設定します。ax は他のすべての引数の前に指定します。

すべて折りたたむ

ライン プロットを作成します。hold on を使用し、既存のライン プロットを削除せずに 2 番目のライン プロットを追加します。新しいプロットは座標軸の ColorOrder プロパティと LineStyleOrder プロパティに基づいて次の色とライン スタイルを使用します。次に、ホールド状態をオフにリセットします。

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

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

ホールド状態がオフの場合、新しいプロットは既存のプロットを削除します。新しいプロットでは、色とライン スタイルの順序の先頭から使用を開始します。

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

R2019b 以降、関数 tiledlayout および nexttile を使用して、プロットをタイル表示できます。関数 tiledlayout を呼び出して、2 行 1 列のタイル表示チャート レイアウトを作成します。関数 nexttile を呼び出して、axes オブジェクト ax1 および ax2 を作成します。各座標軸に正弦波プロットをプロットします。

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)

1 番目の座標軸に 2 つ目の正弦波を追加します。

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

1 行 2 列のタイル表示チャート レイアウトを作成します。関数 nexttile を呼び出して、2 つの axes オブジェクトを作成し、座標軸にプロットします。

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

両方の座標軸の hold 状態を 'on' に設定します。次に、各プロットの追加データを表示します。

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

入力引数

すべて折りたたむ

座標軸のホールド状態。次の値のいずれかとして指定します。

  • "on" または "off" — 値 "on" はホールド状態をオンに設定し、"off" は状態をオフに設定します。文字ベクトルの 'on' または 'off' も指定できます。

  • 数値または logical 1 (true) または 0 (false) — 値 1 または true はホールド状態をオンに設定し、0 または false は状態をオフに設定します。 (R2024a 以降)

  • matlab.lang.OnOffSwitchState 値 — 値 matlab.lang.OnOffSwitchState.on はホールド状態をオンに設定し、matlab.lang.OnOffSwitchState.off は状態をオフに設定します。 (R2024a 以降)

ターゲット座標軸。次のいずれかとして指定します。

  • Axes オブジェクト、PolarAxes オブジェクト、または GeographicAxes オブジェクトなど、任意のタイプの axes オブジェクト。

  • 同じクラスに属する axes オブジェクトの配列。クラスを判定するには、関数 class を使用します。

座標軸を指定しない場合、hold は現在の座標軸にホールド状態を設定します。

ヒント

  • ホールド状態を確認するには関数 ishold を使用します。

アルゴリズム

関数 hold は次のプロパティを設定します。

  • NextPlot 座標軸のプロパティ - 関連する AxesPolarAxes または GeographicAxes オブジェクトのこのプロパティを 'add' または 'replace' に設定。

  • NextPlot Figure のプロパティ - Figure オブジェクトのこのプロパティを 'add' に設定。

バージョン履歴

R2006a より前に導入

すべて展開する