How do I plot Simulink signal values saved to the MATLAB workspace on an axes?
Show older comments
I have to plot a signals in a MATLAB gui.
With Simulink I make a simulation and I save the signal in the workspace. I want to plot that signal in a gui axes but I dont know what I have to do.
1 Comment
SAGAR DHOKIYA
on 11 Mar 2017
write code in workspace plot(ScopeData.time, ScopeData.signals.values)
Accepted Answer
More Answers (7)
Walter Roberson
on 31 May 2011
1 vote
Are you using a "To Workspace" block? If so then when you look at the variable, what class() and size() is it? And what kind of plot are you thinking of?
6 Comments
andoni
on 31 May 2011
Arnaud Miege
on 31 May 2011
Do you want to plot the data after the simulation has finished or while it's running? The former is easy, the latter more difficult.
andoni
on 31 May 2011
Fangjun Jiang
on 31 May 2011
Use the command that Amaud Miege gave above.
plot(ScopeData.time, ScopeData.signals.values)
Walter Roberson
on 31 May 2011
Though before that you might need to add
ScopeData = evalin('base', ScopeData);
in order to import the data from the base workspace in to the workspace of the current function.
andoni
on 1 Jun 2011
Nuno Agualusa
on 28 Jan 2012
0 votes
Hi,
I'm facing the same problem, but with a small diference. I'm running the simulink from GUI, but when the simulation finish doesn't apear a variable 'simout' in my base workspace. So i can´t plot the result on axes. I'm using a variable block in simulink, to get all the data to worspace. The only way that i found to get a variable in base workspace, is to run the simulation manualy in simulink.
what can i do to solve this situation?
Thank you very much.
Nuno
2 Comments
Kaustubha Govind
on 30 Jan 2012
How are you running the SIM command? You might want to set 'DstWorkspace' to 'current' to make sure that Simulink uses your GUI function workspace as the destination workspace.
Nuno Agualusa
on 30 Jan 2012
yes, the running command that i used is:
[tempo_simulacao]=evalin('base','tempo_sim');
[timeVector,stateVector,outputVector]=sim('Sistema_s_Atraso_SelfTuning',tempo_simulacao);
The problem is when a simulation ends i can't plot in my GUI axes the result of the simulation..and this action has to be peformed only trought out GUI.
erhan
on 30 Nov 2013
0 votes
I want set guı axes from scope value. Can you give example ?
yati j
on 9 Oct 2016
Edited: Walter Roberson
on 9 Oct 2016
0 votes
Hello, Could u suggest me any tutorial or any solution to this
- i have my motor dc to run
- when the dc motor run/rotate, maybe a graph pop-up which is read my motor speed or relevant to the rotation
- i dont know the connection btween component
- i dont know how to draw the simulink
i've read and watched a lot of tutorial.
Thank You.
1 Comment
Walter Roberson
on 9 Oct 2016
Please create a new Question for this.
tran xuanminh
on 26 Jul 2017
Edited: Walter Roberson
on 26 Jul 2017
>>plot(ScopeData.time,ScopeData.signals.values);
>>grid on;
??? >>plot(ScopeData.time,ScopeData.signals.values);
|
Error: Unexpected MATLAB operator.
please coment my erro, thanks
3 Comments
Walter Roberson
on 26 Jul 2017
Change your code to
plot(ScopeData.time,ScopeData.signals.values);
grid on;
Pallavi Chaturvedi
on 21 Jul 2022
how to use plot when each signal value has 3 dimesions ,plot style [1,1,1].
Mohammad Ali Sharifian
on 4 Apr 2024
use this for plotting dimension 1 of signal will work:
plot(ScopeData.time,ScopeData.signals.values(1,:));
or maybe this (I can't remmember):
plot(ScopeData.time,ScopeData.signals.values(:,1));
for dimension 2,3 of signal, simply use 2,3 instead of 1.
Mohammad Ali Sharifian
on 4 Apr 2024
Edited: Mohammad Ali Sharifian
on 4 Apr 2024
0 votes
If you are working on a simulink file then using m-file codes for plotting is not a good idea. I recommend pasting your m-file codes in simulink at: model properties>callbacks>stop fcn
This way when you run your simulink, the results will be plotted automatically. see plotting codes here:
Jasmine Poppick
on 26 Apr 2024
0 votes
Starting in R2024a, you can use App Designer to interactively create an app for a Simulink model, which includes the capability to easily and performantly visualize signal data in the app using the new time scope UI component.
In addition, you can:
- Add UI components configured specifically to interact with your model, such as a simulation start/stop control and a simulation progress bar.
- Tune model variables from the app while the simulation runs by connecting UI components to variables.
Categories
Find more on General Applications 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!