TiledLayoutに外枠を追加する

2 ビュー (過去 30 日間)
junya ishii
junya ishii 2022 年 7 月 13 日
コメント済み: junya ishii 2022 年 7 月 15 日
matlabで品質工学でよく使われる要因効果図というものを描画したいです.
要因効果図とは,こちらのページにあるような,折れ線グラフを並べたものになります.
このグラフを作るにあたり,tiledlayoutを使用して折れ線グラフを並べようと考え,以下のコードを作成しました.
T1 = tiledlayout(1,8);
T1.TileSpacing = 'none';
T1.Padding = 'tight';
T1.XLabel.String = 'Level';
T1.YLabel.String = '\eta[db]';
for Facts = 1:8
nexttile
hold on
ax = gca;
grid on
grid minor
ax.XGrid = 'off';
ax.XMinorGrid = 'off';
box off
if Facts~=1
ax.YColor = 'none';
end
xlim([0 5])
xticks(1:4)
xticklabels({'1','2','3','4'})
%ここに折れ線グラフを描く
end
外観の都合上,個別のグラフではなく,このtiledlayout全体を1つのboxで覆いたいです.(通常のfigureでいう「box on」)
自分なりに調べてみましたが方法を見つけられませんでした.
方法がありましたら教えて頂きたいです.
よろしくお願いします.

採用された回答

Atsushi Ueno
Atsushi Ueno 2022 年 7 月 15 日
苦肉の策「xline, ylineで線を描画!」
% 最後に下記を付け足す
if Facts==8
xline(4.99)
end
yline(1)
ylim([0 1])
  1 件のコメント
junya ishii
junya ishii 2022 年 7 月 15 日
ありがとうございます!!!
その手があったかって思いました!
助かりました!

サインインしてコメントする。

その他の回答 (1 件)

Atsushi Ueno
Atsushi Ueno 2022 年 7 月 15 日
>このtiledlayout全体を1つのboxで覆いたい
「1つのboxで覆う」を拡大解釈し、パネル内にタイル表示チャート レイアウトを作成しました。
p = uipanel('Position',[.1 .1 .9 .9]);
T1 = tiledlayout(p,1,8);
T1.TileSpacing = 'none';
T1.Padding = 'compact'; %'tight';
T1.XLabel.String = 'Level';
T1.YLabel.String = '\eta[db]';
for Facts = 1:8
nexttile(T1)
hold on
ax = gca;
grid on
grid minor
ax.XGrid = 'off';
ax.XMinorGrid = 'off';
box off
if Facts~=1
ax.YColor = 'none';
end
xlim([0 5])
xticks(1:4)
xticklabels({'1','2','3','4'})
%ここに折れ線グラフを描く
end

カテゴリ

Help Center および File Exchange座標軸の外観 についてさらに検索

製品


リリース

R2021b

Community Treasure Hunt

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

Start Hunting!