plotOnSubPlot

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

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

Синтаксис

snap.plotOnSubPlot(row,column,signal,plot)

Описание

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

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

Пример: sigID

Логический индикатор построения или удаления сигнала из подграфика.

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

  • false - Очистить сигнал.

Пример: true

Типы данных: logical

Примеры

расширить все

В этом примере показано, как скопировать настройки представления из одного запуска в другой и как создать рисунки с помощью Simulink.sdi.CustomSnapshot объект.

Симулируйте модель и получите объект запуск

Сконфигурируйте vdp модель для сохранения выходных данных и запуска симуляции для создания данных.

load_system('vdp')
set_param('vdp','SaveFormat','Dataset','SaveOutput','on')
set_param('vdp/Mu','Gain','1');
sim('vdp');

Для доступа к данным запуска используйте программный интерфейс Данные Моделирования Inspector.

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

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

Используйте Simulink.sdi.Run объект для доступа к сигналам во время запуска. Затем измените настройки представления сигнала. Этот пример задает цвет и стиль линии для каждого сигнала. Настройки вида для запуска содержат настройки вида для каждого сигнала и настройки вида, заданные для области графика.

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

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

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

Захват снимка из Данных моделирования Inspector

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

snap = Simulink.sdi.CustomSnapshot;

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

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

Использование Simulink.sdi.snapshot чтобы сгенерировать рисунок, заданную в свойствах Simulink.sdi.CustomSnapshot объект.

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

Figure contains 2 axes. Axes 1 contains an object of type line. This object represents x1. Axes 2 contains an object of type line. This object represents x2.

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

Симулируйте модель снова, с другим Mu значение. Для доступа к данным моделирования используйте программный интерфейс Simulation Data Inspector.

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

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

Чтобы создать график новых выходных данных, похожих на тот, который вы создали на предыдущем шаге, можно скопировать настройки представления в запуск в одной строке кода с помощью Simulink.sdi.copyRunViewSettings. The Simulink.sdi.copyRunViewSettings функция не обновляет настройки графика автоматически в Simulink.sdi.CustomSnapshot объекты, поэтому задайте plot введите как false.

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

Захват снимка нового запуска симуляции

Используйте 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");

Figure contains 2 axes. Axes 1 contains an object of type line. This object represents x2. Axes 2 contains an object of type line. This object represents x1.

Введенный в R2018a