Класс: 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 - ПодграфикСтрока для подграфика, на котором вы хотите построить график сигнала. Задайте row как значение от 1 до 8 включительно.
Пример: 2
column - ПодграфикСтолбец для подграфика, на котором вы хотите построить график сигнала. Задайте column как значение от 1 до 8 включительно.
Пример: 3
signal - Сигнал на графикSimulink.sdi.Signal | сигнал IDИдентификатор или Simulink.sdi.Signal сигнала объект, соответствующий сигналу, который вы хотите построить.
Пример: sigID
plot - Индикатор графикаЛогический индикатор построения или удаления сигнала из подграфика.
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);

Скопируйте настройки представления в новый запуск симуляции
Симулируйте модель снова, с другим 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");
clearSignals | Simulink.sdi.CustomSnapshot | Simulink.sdi.Signal | Simulink.sdi.snapshot | snapshot
У вас есть измененная версия этого примера. Вы хотите открыть этот пример с вашими правками?
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.