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 CenterFile Exchange에서 座標軸の外観에 대해 자세히 알아보기

제품


릴리스

R2021b

Community Treasure Hunt

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

Start Hunting!