How can I change the tick values on x axis?

24 vues (au cours des 30 derniers jours)
Pul
Pul le 8 Déc 2021
Commenté : Pul le 8 Déc 2021
Hello everyone,
I would like to put the tick label on x axis every 2 years instead of every 5 years. How can I do it?
Thank you!
LD = load('MODESTAMMEQ.mat');
MODESTAMMEQ = LD.MODESTAMMEQ;
dv = regexp(MODESTAMMEQ.Jan1989, '\d*\-\w*\-\d*','match');
MODESTAMMEQ.Var1 = datetime([dv{:}], 'InputFormat',"dd-MMM-yyyy").';
x = MODESTAMMEQ.Var1;
y = MODESTAMMEQ.Var2*10*0.35;
figure
plot(x, y)
grid

Réponse acceptée

Peter Bonavita
Peter Bonavita le 8 Déc 2021
Hi Pul,
You can use xticks to specify the values where you want the ticks to appear, and xticklabels to customize the labels themselves, if you wish.
In your case, you'll specify something like xticks([0 5 10 15]), etc.
Thanks,
Peter
  4 commentaires
Peter Bonavita
Peter Bonavita le 8 Déc 2021
Hi Pul, this should get you started.
First, check out the value of xticks from your original plot:
>> ticks = xticks
ticks =
1×4 datetime array
2000 2005 2010 2015
Create a datetime array as Rik suggested:
newTicks = datetime({'2000','2002','2004','2006'},'InputFormat','u');
Use this to update the labels on the plot with xticks:
>> xticks(newTicks)
Pul
Pul le 8 Déc 2021
Thank you @Peter Bonavita.
The only problem is that then I can't plot my y with the new x, because they have a different length.
newTicks = datetime({'2000','2002','2004','2006','2008','2010','2012','2014','2016','2018'},'InputFormat','u');
xticks(''2000','2002','2004','2006','2008','2010','2012','2014','2016','2018');

Connectez-vous pour commenter.

Plus de réponses (0)

Community Treasure Hunt

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

Start Hunting!

Translated by