MATLAB Answers

how do i plot a XYZ graph using simulink

125 views (last 30 days)
I have 3 variables which are varying, and i have to plot them in a 3D plot, in matlab simulink we have XY graph, is there any way to plot XYZ graph??, please help...


Sign in to comment.

Accepted Answer

Sebastian Castro
Sebastian Castro on 17 Apr 2015
Edited: Sebastian Castro on 17 Apr 2015
There's no off-the-shelf block to do this, but you could always use your own MATLAB code to do this plotting.
If you want the plot to update as you go, you can use a MATLAB Function block.
If you're fine with the plot coming up at the end of simulation, you could create a StopFcn model callback which runs MATLAB code after simulation.
... or, you could simply use this 3DScope File Exchange link (NOTE: This doesn't work in R2014b and later because of the new MATLAB graphics system).
- Sebastian


pravin behera
pravin behera on 17 Apr 2015
First of all thanks for ur precious answer, i saw that 3DScope file, i m using 2014a, but its not working, it is showing some error like "sfunxyz file not found"
and about that StopFcn callback, do u have any idea about whats the code for plotting 3D plots...
Sebastian Castro
Sebastian Castro on 17 Apr 2015
Well, you can log your simulation data from the Configuration Parameters' "Data Import/Export" pane. Or, you can use "To Workspace" blocks if that's easier for you.
Supposing you go through that logged data and pick out the X, Y, and Z data into vectors, the MATLAB code is simply:
... plus whatever line/marker, color/size, title/label/legend things you want to set up.
Giampiero Campa
Giampiero Campa on 2 Dec 2017
Note that the 3DScope has been now updated so it works for all versions from 2014b and later. Also the legacy code had been provided so it works on versions prior to 14b.

Sign in to comment.

More Answers (1)

Translated by