How to subset the ylables to be displayed only on certain rows?

1 回表示 (過去 30 日間)
Armando MAROZZI
Armando MAROZZI 2020 年 11 月 8 日
コメント済み: Armando MAROZZI 2020 年 11 月 8 日
I have 24 series to plot but I would like to have the y-label displayed only on the rows 1,7,13,19.
I tried this solution but it is not successful:
x = randn(30, 24) % data
y_label_names = {'%', '%','%','%','%','%','%','%','%','%','%','%','%','%','%','%','%','%','%','%','%','%','%','%'};
for j = 1:24
subplot(4, 6, j);
plot(x(:,j));
hold on
if (j > 18)
xlabel('months');
end
if (mod(j,3)==1) % here I would only have y-lables for rows 1,7,13 and 19
ylabel(y_label_names{j})
end
yline(0, '-')
end
Can anyone help me?
Thanks!

採用された回答

Mathieu NOE
Mathieu NOE 2020 年 11 月 8 日
hello
my suggestion
x = randn(30, 24); % data
y_label_names = {'§', '%','%','%','%','%','§','%','%','%','%','%','§','%','%','%','%','%','§','%','%','%','%','%'};
for j = 1:24
subplot(4, 6, j);
plot(x(:,j));
hold on
if (j > 18)
xlabel('months');
end
% if (mod(j,3)==1) % here I would only have y-lables for rows 1,7,13 and 19
if any((j - [1 7 13 19]) == 0)
ylabel(y_label_names{j})
end
yline

その他の回答 (0 件)

カテゴリ

Help Center および File ExchangeLabels and Annotations についてさらに検索

Community Treasure Hunt

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

Start Hunting!

Translated by