How do I plot timeseries, including event like earthquake?

4 vues (au cours des 30 derniers jours)
Umay Ana
Umay Ana le 19 Déc 2019
Commenté : Umay Ana le 24 Déc 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...

Réponses (2)

Sulaymon Eshkabilov
Sulaymon Eshkabilov le 22 Déc 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 commentaire
Umay Ana
Umay Ana le 22 Déc 2019
Modifié(e) : Umay Ana le 22 Déc 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;

Connectez-vous pour commenter.


Sulaymon Eshkabilov
Sulaymon Eshkabilov le 22 Déc 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 commentaire
Umay Ana
Umay Ana le 24 Déc 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.?

Connectez-vous pour commenter.

Catégories

En savoir plus sur Dates and Time dans Help Center et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by