Effacer les filtres
Effacer les filtres

How can I get MATLAB to plot a date on the x-axis?

8 vues (au cours des 30 derniers jours)
Sandy
Sandy le 21 Oct 2013
Commenté : dpb le 28 Jan 2020
I have a dataset with column1 = date and column2 = data. The problem is that my date is in yyyymmdd format. How can I get MATLAB to plot the date correctly in the x-axis?
Thank you in advance! :)
  2 commentaires
sixwwwwww
sixwwwwww le 21 Oct 2013
Do you have ur data in txt file or excel file?
Sandy
Sandy le 21 Oct 2013
It's a text file.

Connectez-vous pour commenter.

Réponse acceptée

dpb
dpb le 21 Oct 2013
First convert the text string date format to Matlab serial dates --
doc datenum
Then plot with that value as the x-axis value and format the dates as desired via
doc datetick
dn=datenum(data(:,1),'yyyymmdd');
plot(dn,data(:,2))
datetick('x','keepticks','keeplimits')
Salt to suit...
  2 commentaires
William
William le 28 Jan 2020
Thank you! This had been driving me nuts, but now works perfectly.
dpb
dpb le 28 Jan 2020
This answer is now out of date...use the new(ish) datetime class instead of datenum

Connectez-vous pour commenter.

Plus de réponses (2)

Sandy
Sandy le 21 Oct 2013
Hi dpb. I tried it this way, but for some reason it's plotting all my data as one date.
  2 commentaires
Sandy
Sandy le 21 Oct 2013
Nevermind, I got it. I had to convert my number to strings first. Thank you! :)
dpb
dpb le 21 Oct 2013
Oh, didn't think about the first column being integer, granted...just for the record, alternatively, you could separate out the separate fields and use the
datenum(y,m,d,h,mn,s)
form to generate the serial numbers.

Connectez-vous pour commenter.


Dainty Daisy Calgas
Dainty Daisy Calgas le 3 Déc 2017
Hello, how could I plot a quarterly data with column1, written as Q1:1991 up to Q4:2016, then my column2 is my data., please I really need help, it was in the excel.
  1 commentaire
dpb
dpb le 3 Déc 2017
Better form would be to create a new question, but it is at least related so I'll consider it here as "close enough"... :)
Problem first is we need to know how the date data are actually stored and imported. Since the date of the original Q, TMW has introduced the datetime class/object and improved graphics routines to be datetime aware so things are different now than then...

Connectez-vous pour commenter.

Community Treasure Hunt

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

Start Hunting!

Translated by