How do I plot timeseries, including event like earthquake?

4 visualizaciones (últimos 30 días)
Umay Ana
Umay Ana el 19 de Dic. de 2019
Comentada: Umay Ana el 24 de Dic. de 2019
Hello
I have two files and their sizes are not same. Files consist of two columns such as date and value.
Date format is ISO 8601 such as 2019-12-30T01:15:14
Value format is float-number.
How do I plot time series to see details?
Regards...

Respuestas (2)

Sulaymon Eshkabilov
Sulaymon Eshkabilov el 22 de Dic. de 2019
Hi,
In this case, use one of these data import options:
(1) data import using uiimport('DATA_file_name.txt') that creates a table variable containing two column of data, viz date and values
(2) data import using importdata('DATA_file_name.txt') that creates structure type of data containing dates and data values.
(3) data import: textscan() ==> FID= fopen('DATA_file_name.txt'); DATA = textscan(FID, '%s %f'); fclose(FID);
The dates can be read with the command datenum(), e.g.,: DD = datenum('2019-12-30T01:15:14', 'yyyy-mm-ddTHH:MM:SSZ')
To plot the imported dates and data values: plot(DD, Values)
xlabels of dates can be displayed with datetick()
Good luck.
  1 comentario
Umay Ana
Umay Ana el 22 de Dic. de 2019
Editada: Umay Ana el 22 de Dic. de 2019
Thank you for your guide. I try to apply the steps but I cannot read text file using textscan.
fileID = fopen('filename.txt');
C = textscan(fileID, '%{yyyy-MM-ddTHH:mm:ss}D %f', 'Delimiter', ' ');
fcloseID;

Iniciar sesión para comentar.


Sulaymon Eshkabilov
Sulaymon Eshkabilov el 22 de Dic. de 2019
Here is corrected code:
fileID = fopen('filename.txt', 'r');
C = textscan(fileID, '%s %f'); % Presumably your file does not have headerlines (texts, etc). It contains only two columns
fclose(fileID);
  1 comentario
Umay Ana
Umay Ana el 24 de Dic. de 2019
I don't understand why
% {...}D
doesn't work.
Why did you suggest using datenum? I don't want to see x-axes such as serial date number.
fileID = fopen('filename.txt', 'r');
C = textscan(fileID, '%s %f');
fclose(fileID);
formatIn= 'yyyy-mm-ddTHH:MM:SS';
date = datenum(C{1,1},formatIn);
value = C{1,2};
% Class of date and value are double now.
plot(date,value)
y-axes is normal, not x-axes. Which date, month, day, hour, minute etc.?

Iniciar sesión para comentar.

Categorías

Más información sobre Dates and Time en Help Center y File Exchange.

Community Treasure Hunt

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

Start Hunting!

Translated by