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

조회 수: 4 (최근 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 CenterFile Exchange에서 Labels and Annotations에 대해 자세히 알아보기

Community Treasure Hunt

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

Start Hunting!

Translated by