アプリケーション上に、複数のファイルを読み込み、uiaxesグラフに記入したい
f1(20000行×3列)は、f2(15000行×3列)を3次元上に点でプロットしたいです。
ファイル読み込みの関係で、for分構造内にuiaxesを入れています。
同じグラフに重ねて書きたいのですが、上書き(f2のみ)となってしまいます。
この場合はどのようにしたらよいでしょうか。ご教授お願いします。

 Risposta accettata

Kojiro Saito
Kojiro Saito il 9 Nov 2022

0 voti

holdを使うと解決できると思います。
1つ目のプロットをした後にhold onを行えば、2つ目のプロットを追加できます。hold offで上書きを解除できます。
サンプルコードは以下のとおりです。
ax = uiaxes;
for n=1:2
if n==1
[X,Y] = meshgrid(1:0.5:10,1:20);
Z = sin(X) + cos(Y);
surf(ax, X,Y,Z);
hold(ax, 'on')
else
[X,Y] = meshgrid(-5:.5:5);
Z = Y.*sin(X) - X.*cos(Y);
s = surf(ax, X,Y,Z,'FaceAlpha',0.5);
hold(ax, 'off')
end
end
MATLAB Answers上のコード実行ではuiaxesが使えないのですが、MATLABで実行すると以下のように2つの3次元プロットが含まれたプロットになります。

1 Commento

美紗子 馬渕
美紗子 馬渕 il 9 Nov 2022
ご回答いただき、ありがとうございました。
解決することができました。

Accedi per commentare.

Più risposte (0)

Categorie

Prodotti

Release

R2022a

Tag

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!