Using name of saved matrix
2 views (last 30 days)
Show older comments
Ted Baker
on 22 Apr 2020
Commented: Ted Baker
on 22 Apr 2020
Hi,
I'm trying to plot multiple outputs from a script on the same graph. As it stands, my script outputs the array I want to plot in a variable called "diff". I ran this script three times, changing my input data, and after each run I right clicked the variable "diff" and saved it as a .mat file with a different name (ie data1.mat, data2.mat, data3.mat). After clearing the workspace, I attempted to import these three .mat files into the workspace again (by dragging and dropping from file directory). However, I noticed that each time it imports the file with the variable name "diff" and not the file name. This means I only have one variable in my workspace and I cant plot the three lines as I expected. Is there an easy way of importing the variable with a new name each time, if it detects that it already exists? Or am I going about this all wrong?
Thanks in advance.
0 Comments
Accepted Answer
Johannes Hougaard
on 22 Apr 2020
I think you should go a different route where you don't save your variables to .mat files and simply keep the variables in your MATLAB workspace without clearing.
run('script'); % execute your script however you like to
data1 = diff;
run('script'); % execute your script again however you like to
data2 = diff;
run('script'); % execute your script again however you like to
data3 = diff;
plot([data1;data2;data3]');
Or to rename you variable diff (in the script) before running it the second time and third time (e.g. to diff2/diff3)
If you have to store the data in files you could specify an output to the load call
data1 = load('data1.mat')
data2 = load('data2.mat')
data3 = load('data3.mat')
plot([data1.diff;data2.diff;data3.diff]')
More Answers (0)
See Also
Categories
Find more on Migrate GUIDE Apps in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!