how to plot datetime against number

4 visualizzazioni (ultimi 30 giorni)
rohail khan
rohail khan il 10 Apr 2018
Risposto: Peter Perkins il 11 Apr 2018
hi, I imported some data from excel file.I have two columns.One is dates and other is stocks. 'dates' column is of the form 'datetime' and 'stocks' is of the form 'double'. I just want to plot(dates,stocks) but it wont work. How can I plot dates with stocks or how to convert the dates to numeric?

Risposta accettata

KSSV
KSSV il 10 Apr 2018
You can plot class of datetime and double in MATLAB. Read the excel file using xlsread. Convert the columns of dates into class datetime using datetime.
t = datetime(2014,6,28) + calweeks(0:9);
y = rand(1,10);
plot(t,y);
Read about datetime.
  2 Commenti
rohail khan
rohail khan il 10 Apr 2018
thanks KSSV.I read the datetime page but couldnt understand well.I mean how can I convert a complete Column vector of dates to numbers(Note: dates are in the form 2/02/2018)
KSSV
KSSV il 10 Apr 2018
str = '2/02/2018'
datetime(str)

Accedi per commentare.

Più risposte (1)

Peter Perkins
Peter Perkins il 11 Apr 2018
rohail, you don't need to convert anything if your data are already datetimes, which seems to be what you are indicating. Ideally, in recent releases of MATLAB and assuming your spreadsheet is properly formatted, all you need is
t = readtable('myfile.xlsx');
plot(t.Dates,t.Stocks)
readtable may end up returning you text for the dates if the spreadsheet is not formatted with date cells, in that case just convert to datetime as KSSV suggests.

Categorie

Scopri di più su Dates and Time in Help Center e File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by