Updated 6 Oct 2023

Editor's Note: This file was selected as MATLAB Central Pick of the Week


Multitrack 3D Simulink Scope

View simulink-3d-scope on File Exchange

Open in MATLAB Online

This block is an enhanced version of the standard XYGraph Simulink® block. The standard XYGraph allows to plot the motion of ONE point in the XY plane. This block allows plotting the motion of SEVERAL points in the XYZ space.

In other words each point draws a line as it moves, so you end up having several lines in the plot instead of just one. Setting the camera position parameter to [0 0 1] reduces the plot to a classic 2D one.

This block is very useful when you have to compare the motion of a point versus a reference trajectory. See this blog entry for more information: https://blogs.mathworks.com/pick/2017/03/10/3d-scope/

To install this vesion, simply add the folder to the MATLAB® path. For MATLAB versions older than R2014b (and related legacy information), please go to https://www.mathworks.com/matlabcentral/fileexchange/4915-3dscope?s_tid=srchtitle and download version 3.1, which contains an installer that installs older versions.


Cite As

Giampiero Campa (2024). 3DScope (https://github.com/giampy1969/simulink-3d-scope/releases/tag/v3.5), GitHub. Retrieved .

MATLAB Release Compatibility
Created with R2023b
Compatible with any release
Platform Compatibility
Windows macOS Linux
Find more on View and Analyze Simulation Results in Help Center and MATLAB Answers

Inspired: 3D Stem for Simulink Block

Community Treasure Hunt

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

Start Hunting!
Version Published Release Notes

See release notes for this release on GitHub: https://github.com/giampy1969/simulink-3d-scope/releases/tag/v3.5

1) several performance, elegance, readability, robustness and backward compatibility improvements
2) the user can make the figure active, specify a line marker for the current locations, and a maximum number of points

Several improvements and minor bug fixes to sfun3d.m

Fixed a small bug (thanks Richard), and added another example on lorenz attractor.
A new S-Function (sfun3d.m) was written for R2014b and later which takes advantages of newer graphics capabilities. The legacy S-Function sfunxyz.m was also rewritten so it can work for R2014b and later.

To view or report issues in this GitHub add-on, visit the GitHub Repository.
To view or report issues in this GitHub add-on, visit the GitHub Repository.