uiaxes

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

Accepted Answer

Kojiro Saito
Kojiro Saito on 9 Nov 2022
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 Comment
美紗子 馬渕
美紗子 馬渕 on 9 Nov 2022
ご回答いただき、ありがとうございました。
解決することができました。

Sign in to comment.

More Answers (0)

Categories

Find more on 2 次元および 3 次元プロット in Help Center and File Exchange

Tags

Products


Release

R2022a

Community Treasure Hunt

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

Start Hunting!