Постройте результаты симуляции в одной фигуре
sbioplot( графики каждая симуляция, запущенная от sd)sd, SimData объект или массив объектов, в той же фигуре. График является графиком временной зависимости каждого состояния в sd. Рисунок также показывает иерархическое отображение всех запусков как различные узлы в дереве, и можно выбрать который запуск отобразиться.
sbioplot( результаты симуляции графиков путем вызова указателя на функцию sd,fcnHandle,xArgs,yArgs,Name,Value)fcnHandle с входными параметрами sd, xArgs, и yArgs, и дополнительные опции использования заданы одним или несколькими аргументами пары "имя-значение". Например, можно задать x-метку и y-метку графика. xArgs и yArgs должны быть массивы ячеек или векторы строки имен состояний, чтобы построить.
Постройте добычу по сравнению с данными о хищнике из стохастическим образом симулированной lotka модели при помощи пользовательской функции (plotXY).
Загрузите модель. Установите тип решателя на SSA выполнять стохастические симуляции и устанавливать время остановки на 3.
sbioloadproject lotka; cs = getconfigset(m1); cs.SolverType = 'SSA'; cs.StopTime = 3; rng('default') % For reproducibility
Определите номер запусков и используйте sbioensemblerun для симуляции.
numRuns = 2; sd = sbioensemblerun(m1,numRuns);
Постройте данные моделирования. По умолчанию, sbioplot показывает график временной зависимости каждой разновидности для каждого запуска. Можно расширить каждый запуск путем нажатия + значок, и можно выбрать отдельные графики временной зависимости.
sbioplot(sd);

Постройте выбранные состояния друг против друга; в этом случае постройте популяцию жертв по сравнению с популяцией хищников. Используйте функциональный plotXY (показанный в конце этого примера), чтобы построить симулированный y1 (добыча) данные по сравнению с y2 (хищник) данные. Задайте функцию как указатель на функцию.
Если вы используете файл live скрипта в этом примере, plotXY функция уже включена в конце файла. В противном случае необходимо задать plotXY функционируйте в конце своего.m или .mlx файла или добавьте его как файл на пути MATLAB.
sbioplot(sd,@plotXY,{'y1'},{'y2'},'xlabel','y1','ylabel','y2','title','Prey versus Predator');
Задайте Функцию plotXY
sbioplot принимает указатель на функцию для функции с подписью:
function [handles,names] = functionName(sd,xArgs,yArgs).
plotXY графики функций два выбранных состояния друг против друга. Первый вход sd данные моделирования (SimBiology SimData объект или вектор объектов). В этом конкретном примере xArgs является массивом ячеек, содержащим имя разновидностей, которые будут построены на оси X, и yArgs является массивом ячеек, содержащим имя вторых разновидностей, которые будут построены на оси Y. Однако можно использовать входные параметры xArgs и yArgs в любом случае в пользовательской функции построения графика. Функция возвращает handles, массив указателей на функцию к линейным графикам и names, массив ячеек из символьных векторов, показанный на узлах, которые являются дочерними элементами узла Запуска в иерархическом отображении.
function [handles,names] = plotXY(sd,xArgs,yArgs) % Select simulation data for each state from each run. xData1 = selectbyname(sd(1),xArgs); xData2 = selectbyname(sd(2),xArgs); yData1 = selectbyname(sd(1),yArgs); yData2 = selectbyname(sd(2),yArgs); % Plot the species against each other. fH1 = plot(xData1.Data,yData1.Data); fH2 = plot(xData2.Data,yData2.Data); % The first output, handles, is a two-dimensional array of handles of the line plots. It must be of size M x N, % where M is the number of line plots for each run and N is the number of runs. handles = [fH1,fH2]; % The second output, names, must be a one-dimensional cell array of character vectors. % Its length must be equal to the number of rows in handles, and the texts are displayed on the % nodes that are children of a Run node. names = {'y1 vs y2'}; end
fcnHandle — Функция, чтобы сгенерировать линейные графикиФункция, чтобы сгенерировать линейные графики, определенный функцией указатель. Для примера пользовательской функции, чтобы построить выбранные разновидности от данных моделирования, смотрите, что График Выбрал States from Simulation Data.
Функция должна иметь подпись:
function [handles,names] = functionName(sd,xArgs,yArgs).
Входные параметры sd, xArgs, и yArgs те же входные параметры, которые вы передаете в том, когда вы вызываете sbioplot.
Первый выход handles двумерный массив указателей линейных графиков, сгенерированных функцией. Его размером должен быть P-by-R, где P является количеством линейных графиков, и R является количеством запусков.
Второй выход names одномерный массив ячеек из символьных векторов, содержащий имена, которые будут отображены на узлах, которые являются дочерними элементами узла Run в иерархическом отображении. Длина names должно быть равно количеству строк в handles.
Пример: @plotXY
Типы данных: function_handle
xArgs — Имена состоянияСостояние называет к графику, заданному как вектор строки или массив ячеек из символьных векторов. Например, можно использовать xArgs представлять состояния, которые будут построены на x - ось вашего пользовательского графика.
Этот аргумент соответствует второму входу функции, на которую ссылается fcnHandle.
Пример: {'y1'}
Типы данных: cell
yArgs — Имена состоянияСостояние называет к графику, заданному как вектор строки или массив ячеек из символьных векторов. Например, можно использовать yArgs представлять состояния, которые будут построены на y - ось вашего пользовательского графика.
Этот аргумент соответствует третьему входу функции, на которую ссылается fcnHandle.
Пример: {'y2','z'}
Типы данных: cell
Задайте дополнительные разделенные запятой пары Name,Value аргументы. Name имя аргумента и Value соответствующее значение. Name должен появиться в кавычках. Вы можете задать несколько аргументов в виде пар имен и значений в любом порядке, например: Name1, Value1, ..., NameN, ValueN.
'title','Species X versus Species Y' задает заголовок осей графика.'title' — Заголовок осейЗаголовок осей, заданный как разделенная запятой пара, состоящая из 'title' и вектор символов или строка.
Пример: 'title','Prey versus Predator'
Типы данных: char | string
'xlabel' — Пометьте для x - осьПометьте для x - ось графика, заданного как разделенная запятой пара, состоящая из 'xlabel' и вектор символов или строка.
Пример: 'xlabel','y1'
Типы данных: char | string
'ylabel' — Пометьте для y - осьПометьте для y - ось графика, заданного как разделенная запятой пара, состоящая из 'ylabel' и вектор символов или строка.
Пример: 'ylabel','y2'
Типы данных: char | string
У вас есть модифицированная версия этого примера. Вы хотите открыть этот пример со своими редактированиями?
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.