MATLAB Answers

How to plot datetime in garfh?

19 views (last 30 days)
Gili Kurtser
Gili Kurtser on 19 Oct 2019
Answered: Peter Perkins on 30 Oct 2019
I have a grafh that looks like this.
Insted of the numbers in the X-axis I have a list of dates in the format ot datetime (DD/MM/YYYY)
this list is taken from a table.
I want to name the X-axis by the Dates (for exapmle 1=(datelist(1)) and so on...
how can I do this?
I am Using the contourf function to plot.
Thank you

  1 Comment

darova on 19 Oct 2019
Did you tried this?
set(gca,'YTickLabel',[1 2 3])

Sign in to comment.

Answers (2)

Payas Bahade
Payas Bahade on 22 Oct 2019
Hi Gili,
Function xticklabels’ can be used to change the x-axis labels. For that labels needs to be specified as a string array eg. {‘dd/mm/yyyy’,‘dd/mm/yyyy’}. If your list of dates is not in string array format, you can use function ‘char’ to convert your list into string array.
Following sample code illustrates use of ‘xticklabels’:
A={'22/01/2019','23/01/2019','24/01/2019','25/01/2019','26/01/2019'};% string array of dates
x=[1 2 3 4 5];% x-axis data
y=[4 7 11 8 16];% y-axis data
plot(x,y); % plotting x&y
xticks([1 2 3 4 5]); % specifying x-axis data whose labels needs to be displayed
xticklabels(A);% changing x-axis labels to dates stored in variable ‘A’
For more details please refer to the following documentation of ‘xticklabels’:


Sign in to comment.

Peter Perkins
Peter Perkins on 30 Oct 2019
Gili, you say datetime and table, so I'm going to assume you are using those datatypes. contour does not currently support datetimes, but it should be straight-forward to use an integer vector to define that axis of the mesh, and then use something like Payas' suggestion, using
timestamps = string(myTable.MyTimes)
as the text tick labels.


Sign in to comment.


Community Treasure Hunt

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

Start Hunting!

Translated by