Clear Filters
Clear Filters

TiledLayoutに外枠を追加する

3 views (last 30 days)
junya ishii
junya ishii on 13 Jul 2022
Commented: junya ishii on 15 Jul 2022
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」)
自分なりに調べてみましたが方法を見つけられませんでした.
方法がありましたら教えて頂きたいです.
よろしくお願いします.

Accepted Answer

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

Sign in to comment.

More Answers (1)

Atsushi Ueno
Atsushi Ueno on 15 Jul 2022
>この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

Products


Release

R2021b

Community Treasure Hunt

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

Start Hunting!