plotOnSubPlot

Класс: Simulink.sdi. CustomSnapshot
Пакет: Simulink.sdi

Постройте график сигналов на подграфиках объекта Simulink.sdi.CustomSnapshot

Синтаксис

snap.plotOnSubPlot (строка, столбец, сигнал, график)

Описание

snap.plotOnSubPlot(row,column,signal,plot) строит график signal на подграфике в объекте Simulink.sdi.CustomSnapshot, snap, заданном row и column, когда plot является true. Когда plot является false, plotOnSubPlot очищает signal от подграфика.

Входные параметры

развернуть все

Строка для подграфика, на котором вы хотите построить график сигнала. Задайте row как значение от 1 до 8, включительно.

Пример 2

Столбец для подграфика, на котором вы хотите построить график сигнала. Задайте column как значение от 1 до 8, включительно.

Пример 3

Объект ID или Simulink.sdi.Signal сигнала, соответствующий сигналу, вы хотите построить график.

Пример: sigID

Логический индикатор того, построить ли график или очистить сигнал от подграфика.

  • tRUE Постройте график сигнала.

  • ложь Очистите сигнал.

Пример: tRUE

Типы данных: логический

Примеры

развернуть все

Этот пример показывает, как скопировать настройки представления для выровненных сигналов от одного выполнения до другого.

Моделируйте Свою Модель и получите Объект Выполнения

Моделируйте модель vdp, чтобы создать выполнение данных, чтобы визуализировать.

load_system('vdp')
set_param('vdp','SaveFormat','Dataset','SaveOutput','on')
sim('vdp')

runIndex = Simulink.sdi.getRunCount;
runID = Simulink.sdi.getRunIDByIndex(runIndex);
vdpRun = Simulink.sdi.getRun(runID);

Измените настройки представления для сигналов

Используйте объект Simulink.sdi.Run получить доступ к сигналам в выполнении. Затем измените настройки представления сигналов и постройте график их в Моделировании Data Inspector. Откройте Моделирование Data Inspector и используйте Simulink.sdi.snapshot, чтобы просмотреть результаты.

sig1 = vdpRun.getSignalByIndex(1);
sig2 = vdpRun.getSignalByIndex(2);

sig1.LineColor = [0 0 1];
sig1.LineDashed = '-.';

sig2.LineColor = [1 0 0];
sig2.LineDashed = ':';

Получите снимок состояния от моделирования Data Inspector

Создайте объект Simulink.sdi.CustomSnapshot и используйте функцию Simulink.sdi.snapshot, чтобы программно получить снимок состояния содержимого Моделирования Data Inspector.

snap = Simulink.sdi.CustomSnapshot;

snap.Rows = 2;
snap.YRange = {[-2.25 2.25],[-3 3]};
snap.plotOnSubPlot(1,1,sig1,true)
snap.plotOnSubPlot(2,1,sig2,true)

fig = Simulink.sdi.snapshot("from","custom","to","figure","settings",snap);

Скопируйте настройки представления в новое выполнение моделирования

Моделируйте модель снова с различным значением Mu. Затем визуализируйте новое выполнение путем копирования настроек представления с первого показа. Задайте входной параметр plot как true, чтобы построить график сигналов от нового выполнения.

set_param('vdp/Mu','Gain','5')
sim('vdp')

runIndex2 = Simulink.sdi.getRunCount;
runID2 = Simulink.sdi.getRunIDByIndex(runIndex2);
run2 = Simulink.sdi.getRun(runID2);

sigIDs = Simulink.sdi.copyRunViewSettings(runID,runID2,true);

Получите снимок состояния нового выполнения моделирования

Используйте объект Simulink.sdi.CustomSnapshot получить снимок состояния нового запущенного моделирования. Во-первых, очистите сигналы от подграфиков. Затем постройте график сигналов от нового выполнения и получите другой снимок состояния.

snap.clearSignals
snap.YRange = {[-2.25 2.25],[-8 8]};
snap.plotOnSubPlot(1,1,sigIDs(1),true)
snap.plotOnSubPlot(2,1,sigIDs(2),true)

fig = snap.snapshot("to","figure");

Представленный в R2018a

Была ли эта тема полезной?