Hello,
I'm trying to repeat a sequence on the xlabel of the figure I've attached.
Since I'm plotting a vector that has 160 values, the xlabel goes from 1 to 160 as you can see on the figure. But I'd like the xlabel to display a sequence going from 1 to 20 8 times. (8*20 = 160). This is the code I'm using to plot the figure
plot((1:(numel(InputVect))),InputVect*100, 'linewidth', 2);
title('MyFig', 'FontName', 'Cambria', 'FontSize', 13);
xlabel('X', 'FontName', 'Cambria','FontSize', 13);
ylabel('Y', 'FontName', 'Cambria','FontSize', 13);
I've been trying to work around a way using set(gca,'xticklabel',) but I haven't managed a result so far.
Could someone please help me out?
Thank you,
Santos

 采纳的回答

a = gca;
a.XTick = (1:160); % (0:5:160)
a.XTickLabel = string(mod(0:159, 20)+1); % mod(0:5:160, 20)
This repeats the label 1:20 for 8 times. However, there are two many labels to show and you may want to adjust the interval. For example, you can try the values in the comments above.

1 个评论

Thank you @Chunru. You're right, there are way to many labels to show. I'll try different values and see which fit better. Thank's!

请先登录,再进行评论。

更多回答(0 个)

类别

帮助中心File Exchange 中查找有关 Labels and Styling 的更多信息

产品

版本

R2021a

Community Treasure Hunt

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

Start Hunting!

Translated by