How to "save as" a processed graph as a .txt data file?

8 vues (au cours des 30 derniers jours)
Ekin
Ekin le 28 Août 2013
I can read and obtain graph from a data file (.txt) with my GUI code. With some functions(noise removal, clipping etc.), i change the graph (so as data)and now i want to "save as" the processed data into another .txt file (i will create) with a button. Is there any way to do this?
My file opening code:
function uipushtool_ClickedCallback(hObject, eventdata, handles)
[filename1,filepath1]=uigetfile({'*.txt*','Text Files'},...
'Select Data File 1');
cd(filepath1);
fp= fopen(filename1);
fgets(fp);
A = textscan(fp, '%f');
fclose(fp);
result=A{:};
%Implementation of function here
axes(handles.axes3);
plot(result);
hold on;
After implementing the data, now with another button i want to save the new data file as another .txt file. Thanks in advance!

Réponses (2)

Iain
Iain le 28 Août 2013
csvwrite can write text files (csv delimited), save can write text files if you use the ascii flag.
uiputfile is a function that lets your browse for a desired output filename.
You might prefer getting some mileage out of writing the data to excel format (xlswrite)
  3 commentaires
Iain
Iain le 28 Août 2013
csvwrite('myfile.csv', result)
Ekin
Ekin le 28 Août 2013
"finalresult" is defined in another function (below) how can i use it without defining? Here is the error:
Undefined function or variable 'result'.
Error in NoiseRemoval>pushbutton4_Callback (line 179)csvwrite('myfile.csv', finalresult)
function pushbutton4_Callback(hObject, eventdata, handles)
[filename1,filepath1]=uiputfile({'*.txt*','Text Files'},...
'Save New File');
csvwrite('myfile.csv', result)
% --------------------------------------------------------------------
function uipushtool1_ClickedCallback(hObject, eventdata, handles)
[filename1,filepath1]=uigetfile({'*.txt*','Text Files'},...
'Select Data File 1');
cd(filepath1);
fp= fopen(filename1);
fgets(fp);
A = textscan(fp, '%f');
fclose(fp);
result=A{:};
%Some implementations
%lets say finalresult=result;
axes(handles.axes2);
plot(finalresult);
hold on;

Connectez-vous pour commenter.


David Sanchez
David Sanchez le 28 Août 2013
If you put your data into a cell array, you can easily save it into a .txt file using dlmcell.m from fileexchange:
href = ""<http://www.mathworks.es/matlabcentral/fileexchange/25387-write-cell-array-to-text-file</a>>
  1 commentaire
Ekin
Ekin le 28 Août 2013
The data file is (n,1) matrix, n varies as data file changes.

Connectez-vous pour commenter.

Catégories

En savoir plus sur Environment and Settings 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