toubinaattori
toubinaattori

Reputation: 73

How to set xticklables to certain places in the graph in matlab

I have two vectors that contain the average temperatures of two cities. I am plotting those vectors to a graph. I have 398 temperatures in both vectors so my xticklables are naturally from 1 to 398. I am trying to change my xticklables so they would show the month and the year like this: 01/2017. however I seem to be unable to write anything to my xtick. Here is my code for xtickmodification:

    ax.XTick=[1,32,62,93,124,154,185,215,246,277,305,336,366,397];
    ax.XTicklabels={'05/2014','06/2014','07/2014','08/2014','09/2014',
'10/2014','11/2014','12/2014','01/2015','02/2015','03/2015','04/2015','05/2015','06/2015'};

ax.XTick contains the vector element that starts a new month. So how can i get the ax.XTicklabels-line to my graph?

Upvotes: 0

Views: 47

Answers (2)

user2999345
user2999345

Reputation: 4195

use XTickLabel property instead of XTicklabels. in addition, you can set XTickLabelRotation property if the labels are long strings:

x = rand(398,1);
h = plot(x);
ax = gca;
ax.XTick=[1,32,62,93,124,154,185,215,246,277,305,336,366,397];
ax.XTickLabel={'05/2014','06/2014','07/2014','08/2014','09/2014',...
    '10/2014','11/2014','12/2014','01/2015','02/2015','03/2015','04/2015','05/2015','06/2015'};
ax.XTickLabelRotation = 45;

enter image description here

Upvotes: 1

Vahe Tshitoyan
Vahe Tshitoyan

Reputation: 1439

Have you tried the following

set(gca, 'xtick', ax.XTick);
set(gca, 'xticklabels', ax.XTicklabels);

Upvotes: 0

Related Questions