how to save the data in csv file from the plot

135 次查看(过去 30 天)
Hi,
I am using the code below for extracting the wanted data from few excel files then plotting the extracting data but I am unable to save the plotted data into excel file. Can you guys help, please?
Code So Far:
% To access the folder
folder = fullfile('C:','Users','muhammad','Documents','1st_Yr','Experiments_2021','performance_110');
files = dir( fullfile(folder, '*.ods') );
% Reading and extracting data from 12 excel files hence plotting
for ii = 1:length(files)
data = readmatrix(fullfile(files(ii).folder,files(ii).name), 'NumHeaderLines', 1)
x= data(:,10)
y=data(:,4)
figure(1)
% Plotting data
plot(x,y,'x','LineWidth',0.5);
hold on
end
  4 个评论
Walter Roberson
Walter Roberson 2021-5-31
It sounds like you want to save them numerically.
As you are processing a number of files, how do you want the values from one file to be arranged relative to the values for another file? For example are you wanting to write each one to a separate sheet? Are you wanting to write 2 * length(files) separate columns, alternating X and Y? (If so is it possible that different files are not the same size as each other?) Are you wanting to write all of the data together as a pair of columns, all of the first file then all of the second file, and so on? If so then how do you want to mark the boundary between files? Do you want to store the file name for every row? Do you want to store a "group number" (which in this case would be ii) for each row ?
muhammad choudhry
muhammad choudhry 2021-5-31
I want to write the data in the following format:
column 4 and 10 from the file one
then column 4 and 10 from file 2
all them columns need to be saved into one separate file(in one sheet), column by column (column data are not of same size, they are different in length), yes all the data as a pair of column all of the first then second correct and so on correct!. Well, for now I do not need to mark the boundary between each file because they are random point generated using experimental trials and moving forward I want to fit the LOWESS estimation curve to them to see how well or close them points to each other.

请先登录,再进行评论。

采纳的回答

KALYAN ACHARJYA
KALYAN ACHARJYA 2021-5-31
编辑:KALYAN ACHARJYA 2021-5-31
Options:
  1. The plot is a figure, you can save as Matlab .fig files (Use save as option)
  2. Save the figure plot result as an image (imwrite)
  3. If you wish to save x & y numeric data, create a vector as follows & save using writematrix function (Excel/CSV)
result=[x_column_data,y_column_data]
writematrix(result,......) %see the write matrix Matlab Doc
  2 个评论
muhammad choudhry
muhammad choudhry 2021-5-31
hi,
thanks for the help. I follow the doc and write the result into the file all good but it is only writting one set (last) of data from the plot not everything as I have around data of 12 plots on the graph.
result =[x,y]
writematrix(result,'M.csv')

请先登录,再进行评论。

更多回答(0 个)

Community Treasure Hunt

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

Start Hunting!

Translated by