Simulink.sdi.CustomSnapshot class

Пакет: Simulink.sdi

Задайте настройки для снимка состояния, не открываясь или влияя на Инспектора Данных моделирования

Описание

Используйте Simulink.sdi.CustomSnapshot объект задать настройки для снимка состояния вы хотите создать, не открывая Инспектора Данных моделирования или влияя на открытие сессии. Создание снимка состояния с помощью Simulink.sdi.CustomSnapshot объект является наилучшим вариантом для полностью рабочих процессов в виде сценария. Можно задать размерности снимка состояния в пикселях, размещении подграфика и пределах для x-и y-осей. Можно использовать clearSignals и plotOnSubplot методы, чтобы построить сигналы вы хотите включать в снимок состояния. Чтобы получить снимок состояния, можно передать Simulink.sdi.CustomSnapshot возразите как значение для settings пара "имя-значение" для Simulink.sdi.snapshot функционируйте или используйте snapshot метод.

Конструкция

snap = Simulink.sdi.CustomSnapshot создает Simulink.sdi.CustomSnapshot объект.

Свойства

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

Ширина изображения, в пикселях.

Пример: 750

Высота изображения, в пикселях.

Пример: 500

Количество строк подграфика в виде скаляра между 1 и 8, включительно. Используйте Rows и Columns установить ваше желаемое размещение подграфика.

Пример 2

Количество столбцов подграфика в виде скаляра между 1 и 8, включительно. Используйте Rows и Columns установить ваше желаемое размещение подграфика.

Пример 3

Пределы для оси времени в снимке состояния. Пределы оси времени являются тем же самым для всех подграфиков. По умолчанию ось времени настраивает, чтобы вместить самую большую область значений времени нанесенных на график сигналов.

Пример: [0 20]

Массив ячеек 1 2 матриц, задающих ось Y, ограничивает для всех подграфиков в пользовательском снимке состояния. По умолчанию, YRange [-3 3] для всех подграфиков.

Пример: {[-10 10],[0 100]}

Методы

clearSignals Четкие сигналы построены на подграфиках Simulink.sdi.CustomSnapshot объект
plotOnSubPlot Постройте сигналы на Simulink.sdi.CustomSnapshot объектные подграфики
снимок состояния Создайте пользовательский снимок состояния

Примеры

свернуть все

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

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

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

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

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

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 = ':';

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

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

snap = Simulink.sdi.CustomSnapshot;

Можно использовать свойства Simulink.sdi.CustomSnapshot объект сконфигурировать настройки графика, как размещение подграфика и пределы по осям, и построить сигналы. Когда вы используете 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)

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

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

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

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

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. 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");

Введенный в R2018a