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

 채택된 답변

Kojiro Saito
Kojiro Saito 2022년 11월 9일

0 개 추천

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

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

댓글을 달려면 로그인하십시오.

추가 답변 (0개)

카테고리

도움말 센터 및 File Exchange에서 MATLAB에 대해 자세히 알아보기

제품

릴리스

R2022a

태그

Community Treasure Hunt

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

Start Hunting!