MATLAB app axesのグラフを固定したい

조회 수: 16 (최근 30일)
健斗
健斗 2024년 9월 6일
댓글: 健斗 2024년 9월 11일
上記のようなaxes画面にデータ分析した結果を表示させるAppなのですが、上の図と下の図において両サイドの寸法がずれる為、分析結果に関わらず、図を固定させる方法をないか悩んでおります。お手数をおかけしますが、ご教授頂けると幸いです。

답변 (1개)

Atsushi Ueno
Atsushi Ueno 2024년 9월 6일
「軸範囲を固定する」か「軸範囲をリンクさせる」の2通り思いつきます。
前者の方法は、分析結果によらずいつも同じ軸範囲を表示します。
後者の方法は、分析結果により軸範囲が自動調整されても、上下の軸範囲がズレなくなります。
  댓글 수: 4
Atsushi Ueno
Atsushi Ueno 2024년 9월 9일
そう思います。実際に MATLAB Online (basic) で試しましたが②でパネル内にグラフ(座標軸)を複数作成するのではなく、一つの座標軸を作成し、その内部に複数のサブプロットを配置します。この際、おそらくApp Designerのドラッグ&ドロップ操作では複数のサブプロットを追加出来ないのではないかと思います。
① App上にPanelを作成 (空のまま)
② コードビュー画面でコールバック関数の追加→StartUp関数を追加 (その他の関数でも可)
③ 追加した関数内に下記コードをペーストして実行
上記操作により、tiledlayout 関数(や linkaxes 関数等)を使って複数のサブプロットを表示・連携させる事が出来ます。下記はリンク先からの抜粋です。
t = tiledlayout(app.Panel,2,1);
[X,Y,Z] = peaks(20)
% Tile 1
ax1 = nexttile(t);
surf(ax1,X,Y,Z)
% Tile 2
ax2 = nexttile(t);
contour(ax2,X,Y,Z)
健斗
健斗 2024년 9월 11일
ありがとうございます!
tiledlayoutで試してみたのですが、現状Appの仕様と合致しておらず、ハードルが相当高いです。。。
※下のグラフを表示後、そのグラフをクリックすると上のグラフが表示されるような仕様となっています。
つきましてはグリットレイアウトを用いて、上下グラフの軸がずれないような方法があればご教授いただけれると幸いです。
申し訳ございませんが、宜しくお願い致します。

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

카테고리

Help CenterFile Exchange에서 座標軸の外観에 대해 자세히 알아보기

Community Treasure Hunt

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

Start Hunting!