how to import data from csv and plot?

241 visualizaciones (últimos 30 días)
Ani Asoyan
Ani Asoyan el 9 de Nov. de 2022
Comentada: Ani Asoyan el 9 de Nov. de 2022
Hi everyone!
I want to import excel dataset (csv file) to matlab and plot.
The first column includes string variables like "2022Q1" , "2022Q2", etc.
The second column is regular data. How can I import that csv and plot 2nd column with respect to 1st column (so the strings be the horizontal axis).
I've tried something like this but doesn't work.
[Array, str, raw]=xlsread('baseline.csv');
Error using xlsread
Unable to open file 'baseline.csv'.
File '/users/mss.system.fjCCc6/baseline.csv' not found.
y= Array(:, 2);
x= Array (:, 1);
plot(x,y)
I'm attaching excel file also.
Thank you

Respuesta aceptada

Arif Hoq
Arif Hoq el 9 de Nov. de 2022
A=readtable('baseline.csv','VariableNamingRule','preserve');
xaxis=table2array(A(:,1));
datavalue=table2array(A(:,2));
C=categorical(xaxis);
plot(C,datavalue)
xtickangle(90)
  3 comentarios
Arif Hoq
Arif Hoq el 9 de Nov. de 2022
just use this syntax
datavalue=A.d_qoil_t;
Ani Asoyan
Ani Asoyan el 9 de Nov. de 2022
thank you so much !

Iniciar sesión para comentar.

Más respuestas (2)

KSSV
KSSV el 9 de Nov. de 2022
T=readtable('https://in.mathworks.com/matlabcentral/answers/uploaded_files/1186578/baseline.csv');
Warning: Column headers from the file were modified to make them valid MATLAB identifiers before creating variable names for the table. The original column headers are saved in the VariableDescriptions property.
Set 'VariableNamingRule' to 'preserve' to use the original column headers as table variable names.
X=T.(1);
Y=T.(2);
plot(Y)
  1 comentario
Ani Asoyan
Ani Asoyan el 9 de Nov. de 2022
Thank you for the answer. However I would like to put the string data in the horizontal axis, so it appears 2022Q1, 2022Q2 instead of numbers. Also, did you change the column headers in the excel file?

Iniciar sesión para comentar.


Kalpesh Bagmar
Kalpesh Bagmar el 9 de Nov. de 2022
Hello Ani,
May be you can try following code snippet
[a]=readcell('baseline.csv')
a=a(4:end,:) % removing unwanted headings from data
b = cell2mat(a(:,2))
c = a(:,1)
bar(b)
set(gca,'xticklabel',c)
  1 comentario
Ani Asoyan
Ani Asoyan el 9 de Nov. de 2022
Thank you for your answer! I already accepted the prevous answer, but will also try your method. Thanks

Iniciar sesión para comentar.

Categorías

Más información sobre Data Import from MATLAB 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