How to plot a timeseries from excel table

40 ビュー (過去 30 日間)
Elliot Jenkins
Elliot Jenkins 2023 年 3 月 15 日
回答済み: Amit Dhakite 2023 年 3 月 16 日
Hi there,
I want to plot a time series of a two column table from excel. The date format is 'mm-yyyy'. I keep getting an invalid plot argument error. I have attached the table I am trying to plot below.
Thank you

回答 (1 件)

Amit Dhakite
Amit Dhakite 2023 年 3 月 16 日
Hello Elliot,
Based on your description, it seems that you are trying to plot a timeseries from an Excel table, but are encountering an error due to the "mm_yyyy" column being of type "cell". Since a cell type is not a valid input for the plot function, we need to convert it to a proper timeseries type.
To resolve this issue, we can use the readtable function to read the data from the Excel sheet, and then convert the "mm_yyyy" column to a "timeseries" type using the datetime function with the appropriate input format. Once this is done, we can plot the data using the plot function.
Here is the updated code to perform the conversion and plotting:
% Reading the data from excel sheet
data = readtable('SGIdata.xlsx');
% Converting the "mm_yyyy" column from a "cell" type to a "timeseries" type
data.mm_yyyy = datetime(data.mm_yyyy, 'InputFormat', 'mm-yyyy');
% Plotting the data
plot(data.mm_yyyy, data.SGI);
To know more about the functions used above, kindly refer to the following links:
  1. readtable(): https://www.mathworks.com/help/matlab/ref/readtable.html
  2. datetime(): https://www.mathworks.com/help/matlab/ref/datetime.html
  3. plot(): https://www.mathworks.com/help/matlab/ref/plot.html

カテゴリ

Help Center および File ExchangeData Distribution Plots についてさらに検索

タグ

製品


リリース

R2022b

Community Treasure Hunt

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

Start Hunting!

Translated by