データの変更後の自動的なプロットの更新
ワークスペース変数のデータをプロットする場合、プロットに含まれるのはその変数のコピーです。その結果、ワークスペース変数を (データの追加や削除などで) 変更しても、プロットは自動的に更新されません。プロットに変更を反映させたい場合は、再プロットしなければなりません。ただし、以下の手法のいずれかを使用することで、プロットが表現するワークスペース変数に、プロットをリンクできます。プロットとワークスペース変数をリンクした場合、データを一方の場所で変更すると、他方でも変更されます。
データ リンクを使用して、プロットをワークスペース変数にリンクします。
プロットされたオブジェクト (
XDataSourceプロパティなど) のデータ ソース プロパティをワークスペース変数の名前に設定します。次に、関数refreshdataを呼び出して、データのプロパティを間接的に更新します。この手法を使用して、アニメーションを作成できます。
データ リンクを使用したプロットの更新
データ リンクは、プロットと、描写されたワークスペース変数を継続的に同期します。
たとえば、反復近似 pi です。反復番号を表す変数 x と近似を表す y を作成します。x と y の初期値をプロットします。変数が変わったときにプロットが更新されるように、linkdata on を使用してデータ リンクをオンにします。次に、for ループで x と y を更新します。プロットは 0.5 秒間隔で更新されます。
x = [1 2]; y = [4 4]; plot(x,y); xlim([0 100]) ylim([2.5 4]) xlabel('Iteration') ylabel('Approximation for \pi') linkdata on denom = 1; k = -1; for t = 3:100 denom = denom + 2; x(t) = t; y(t) = 4*(y(t-1)/4 + k/denom); k = -k; end

データ ソース プロパティを使用したプロットの更新
データ リンク機能を使用する代わりに、プロットされたオブジェクトのデータ ソース プロパティを設定することによって、プロットとワークスペース変数との同期を維持できます。この手法を使用して、アニメーションを作成できます。
たとえば、反復近似 pi です。反復番号を表す変数 x2 と近似を表す y2 を作成します。x2 と y2 の初期値をプロットします。プロットされたオブジェクトのデータ ソース プロパティを 'x2' および 'y2' に設定することによって、プロットをワークスペース変数にリンクします。次に、for ループで x2 と y2 を更新します。更新されたデータに基づいてプロットを更新するために、各反復で refreshdata と drawnow を呼び出します。
x2 = [1 2]; y2 = [4 4]; p = plot(x2,y2); xlim([0 100]) ylim([2.5 4]) xlabel('Iteration') ylabel('Approximation for \pi') p.XDataSource = 'x2'; p.YDataSource = 'y2'; denom = 1; k = -1; for t = 3:100 denom = denom + 2; x2(t) = t; y2(t) = 4*(y2(t-1)/4 + k/denom); refreshdata drawnow k = -k; end

参考
linkdata | brush | refreshdata | linkaxes