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

 Akzeptierte Antwort

Kojiro Saito
Kojiro Saito am 9 Nov. 2022

0 Stimmen

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 Kommentar

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

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Kategorien

Mehr zu グラフィックス オブジェクト finden Sie in Hilfe-Center und File Exchange

Produkte

Version

R2022a

Tags

Community Treasure Hunt

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

Start Hunting!