Clear plotted signals from all subplots in the Simulation Data Inspector
Simulink.sdi.clearAllSubPlots clears plotted signals from all
subplots in the Simulation Data Inspector, including any subplots with plotted data that are
not visible in the current layout. Clearing plotted signals using the
Simulink.sdi.clearAllSubPlots function does not delete data from the
Simulation Data Inspector. To clear plotted signals and delete data from the Simulation Data
Inspector, use the
Clear Plotted Signals from All Subplots
You can programmatically clear plotted signals from all subplots in the Simulation Data Inspector. For example, clear plotted data at the start of a script that creates plots.
Plot Signals from Simulation Run
This example demonstrates how to access the
Simulink.sdi.Run object for a Simulation Data Inspector run created by logging signals. From the
Simulink.sdi.Run object you can get
Simulink.sdi.Signal objects that contain the logged signal data and metadata. You can use the
Signal objects and the
plotOnSubPlot function to plot the data in the Simulation Data Inspector.
Create a Simulation Run and Access the
ex_vdp model logs two signals. To create a simulation run containing the logged data, simulate the model.
The Simulation Data Inspector keeps track of runs by assigning a unique numeric run ID to each run created by simulation, importing data, or opening a session. To access the run object for the simulation you just performed, use the
Simulink.sdi.getAllRunIDs function and take the last run ID in the returned vector.
runIDs = Simulink.sdi.getAllRunIDs; runID = runIDs(end);
Once you have the run ID for the run, you can use the
Simulink.sdi.getRun function to get the
Simulink.sdi.Run object that corresponds to the run. You can use the
Run object to check the metadata associated with the run, including the number of signals in the run.
vdpRun = Simulink.sdi.getRun(runID); vdpRun.SignalCount
ans = int32 2
Plot Data Using
getSignalByIndex function to access signals from the
signal1 = getSignalByIndex(vdpRun,1); signal2 = getSignalByIndex(vdpRun,2);
Simulink.sdi.setSubPlotLayout function to specify a 2-by-1 layout.
Before plotting the data, use the
Simulink.sdi.clearAllSubPlots function to clear any data that is already plotted.
Plot one signal on each subplot. To plot signals on the first subplot, you can set the
checked property for the signal. To plot signals on subplots other than the first subplot, use the
signal1.Checked = true; plotOnSubPlot(signal2,2,1,true);
View the Plotted Data
To view the plots you just created, open the Simulation Data Inspector using the
Introduced in R2019b