sbiosubplot

Отобразите результаты симуляции на подграфиках

Описание

пример

sbiosubplot(sd) графики каждой симуляции выполняются из sd, а SimData объект или массив объектов, в свой собственный подграфик. Подграфик является временным графиком каждого состояния в sd.

пример

sbiosubplot(sd,fcnHandle,xArgs,yArgs) строит графики результатов симуляции путем вызова указателя на функцию fcnHandle с входами sd, xArgs, и yArgs. Входы xArgs и yArgs должны быть массивами ячеек с именами состояний для построения графика.

пример

sbiosubplot(sd,fcnHandle,xArgs,yArgs,showLegend) также указывает, отображать ли легенду на графике. Если true, функция показывает yArgs как легенда.

пример

sbiosubplot(sd,fcnHandle,xArgs,yArgs,showLegend,Name,Value) также использует дополнительные опции, заданные одним или несколькими аргументами пары "имя-значение". Для примера можно задать метки X и Y для графика.

Примеры

свернуть все

Постройте график данных о добыче от хищника из стохастически моделируемой модели лотки на отдельных подграфиках с помощью пользовательской функции (plotXY).

Загрузите модель. Установите тип решателя SSA, чтобы выполнить стохастические симуляции и установите время остановки равным 3.

sbioloadproject lotka;
cs              = getconfigset(m1);
cs.SolverType   = 'SSA';
cs.StopTime     = 3;
rng('default') % For reproducibility

Установите количество запусков и используйте sbioensemblerun для симуляции.

numRuns = 4;
sd      = sbioensemblerun(m1,numRuns);

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

sbiosubplot(sd); 

Figure contains 4 axes and other objects of type uicontrol. Axes 1 with title Run1 contains 4 objects of type line. These objects represent x, y1, y2, z. Axes 2 with title Run2 contains 4 objects of type line. Axes 3 with title Run3 contains 4 objects of type line. Axes 4 with title Run4 contains 4 objects of type line.

Постройте график выбранных состояний друг против друга; в этом случае постройте график популяции жертв от популяции хищников на отдельных подграфиках для каждого запуска. Используйте функцию plotXY (показан в конце этого примера), чтобы построить график моделируемых данных y1 (добыча) по сравнению с y2 (хищник). Задайте функцию как указатель на функцию в sbiosubplot вызов для построения графика каждого запуска в своем собственном подграфике. В этом случае пятый входной параметр (showLegend) установлено в true, что означает четвертый входной параметр (yArgs) показан как легенда.

Если вы используете файл live скрипта для этого примера, plotXY функция уже включена в конец файла. В противном случае необходимо задать plotXY функцию в конце файла .m или .mlx или добавить его как файл по пути MATLAB.

sbiosubplot(sd,@plotXY,{'y1'},{'y2'},true,'xlabel','y1','ylabel','y2')

Figure contains 4 axes and other objects of type uicontrol. Axes 1 with title Run1 contains an object of type line. This object represents y2. Axes 2 with title Run2 contains an object of type line. Axes 3 with title Run3 contains an object of type line. Axes 4 with title Run4 contains an object of type line.

Задайте функцию plotXY

sbiosubplot принимает указатель на функцию функции с сигнатурой:

function functionName(sd,xArgs,yArgs).

The plotXY графики функций двух выбранных состояний друг против друга. Первый входной sd - данные моделирования (SimBiology SimData объект или вектор объектов). В этом примере xArgs - массив ячеек, содержащий имя вида, который будет нанесен на ось X, и yArgs - массив ячеек, содержащий имя вида, который будет нанесен на ось Y. Однако можно использовать входы xArgs и yArgs любым способом в пользовательской функции построения графика. Никаких выходов от функции не требуется.

function plotXY(sd,xArgs,yArgs)
% Select simulation data for each state from each run.
xData = selectbyname(sd,xArgs);
yData = selectbyname(sd,yArgs);
% Plot the species against each other.
plot(xData.Data,yData.Data);
end

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

свернуть все

Результаты симуляции, заданные как SimData объект или вектор SimData объекты.

Этот аргумент соответствует первому входу функции, на которую ссылаются fcnHandle.

Пример: simdata

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

Функция должна иметь подпись:

function functionName(sd,xArgs,yArgs).

Входы sd, xArgs, и yArgs те же входы, которые вы передаете при вызове sbiosubplot. Никаких выходов от функции не требуется.

Пример: @plotXY

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

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

Этот аргумент соответствует второму входу функции, на которую ссылаются fcnHandle.

Пример: {'y1'}

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

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

Этот аргумент соответствует третьему входу функции, на которую ссылаются fcnHandle.

Пример: {'y2','z'}

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

Логический флаг для отображения легенды графика, заданный как true или false. Если true, функция показывает yArgs как легенда.

Пример: true

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

Аргументы в виде пар имя-значение

Задайте необязательные разделенные разделенными запятой парами Name,Value аргументы. Name - имя аргумента и Value - соответствующее значение. Name должны находиться внутри кавычек. Можно задать несколько аргументов в виде пар имен и значений в любом порядке Name1,Value1,...,NameN,ValueN.

Пример: 'xlabel','Species A' задает метку X для графика.

Метка для x -оси графика, заданная как разделенная разделенными запятой парами, состоящая из 'xlabel' и вектор символов или строка.

Пример: 'xlabel','y1'

Типы данных: char | string

Метка для y -оси графика, заданная как разделенная разделенными запятой парами, состоящая из 'ylabel' и вектор символов или строка.

Пример: 'ylabel','y2'

Типы данных: char | string

См. также

|

Введенный в R2008a