distplot

Постройте перераспределения Цепи Маркова

Синтаксис

distplot(mc,X)
distplot(mc,X,Name,Value)
distplot(ax,___)
h = distplot(___)

Описание

пример

distplot(mc,X) создает тепловую карту из данных X, показывающий эволюцию распределения состояний в дискретной цепи Маркова mc.

пример

distplot(mc,X,Name,Value) дополнительные опции использования заданы одним или несколькими аргументами пары "имя-значение". Например, задайте тип графика или частоты кадров для анимированных графиков.

distplot(ax,___) графики на осях, заданных ax вместо текущей системы координат (gca) с помощью любого из входных параметров в предыдущих синтаксисах. Опция ax может предшествовать любой комбинации входных аргументов в предыдущих синтаксисах.

h = distplot(___) возвращает указатель на график распределения. Используйте h, чтобы изменить свойства графика после того, как вы создадите его.

Примеры

свернуть все

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

rng('default'); % For reproducibility 
mc = mcmix(4,'Zeros',8);

mc является объектом dtmc.

Постройте диграф Цепи Маркова.

figure;
graphplot(mc);

4 состояния является абсорбирующим состоянием.

Вычислите перераспределения состояния на каждом шаге для 10 шагов дискретного времени. Примите начальное равномерное распределение по состояниям.

X = redistribute(mc,10)
X = 11×4

    0.2500    0.2500    0.2500    0.2500
    0.0869    0.2577    0.3088    0.3467
    0.1073    0.2990    0.1536    0.4402
    0.0533    0.2133    0.1844    0.5489
    0.0641    0.2010    0.1092    0.6257
    0.0379    0.1473    0.1162    0.6985
    0.0404    0.1316    0.0765    0.7515
    0.0266    0.0997    0.0746    0.7991
    0.0259    0.0864    0.0526    0.8351
    0.0183    0.0670    0.0484    0.8663
      ⋮

X 11 4 матрица. Строки соответствуют временным шагам, и столбцы соответствуют состояниям.

Визуализируйте перераспределение состояния.

figure;
distplot(mc,X)

После 10 переходов распределение, кажется, улаживает споры с большинством вероятностной меры в 4 состояния.

Рассмотрите эту теоретическую, правильно-стохастическую матрицу перехода стохастического процесса.

P=[001/21/41/400001/302/300000001/32/3000001/21/2000003/41/41/21/2000001/43/400000].

Создайте Цепь Маркова, которая характеризуется матрицей P перехода.

P = [ 0   0  1/2 1/4 1/4  0   0 ;
      0   0  1/3  0  2/3  0   0 ;
      0   0   0   0   0  1/3 2/3;
      0   0   0   0   0  1/2 1/2;
      0   0   0   0   0  3/4 1/4;
     1/2 1/2  0   0   0   0   0 ;
     1/4 3/4  0   0   0   0   0 ];
mc = dtmc(P);

Вычислите перераспределения состояния на каждом шаге для 20 шагов дискретного времени.

X = redistribute(mc,20);

Анимируйте перераспределения в гистограмме. Задайте полувторую частоту кадров.

figure;
distplot(mc,X,'Type','histogram','FrameRate',0.5);

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

свернуть все

Дискретная цепь Маркова с состояниями NumStates и матрицей перехода P, заданный как объект dtmc.

Эволюция вероятностей состояния, заданных как (1 + numSteps)-by-NumStates неотрицательная числовая матрица, возвращенная redistribute. Первая строка является распределением начального состояния. Последующие строки являются перераспределениями на каждом шаге. distplot нормирует строки их соответствующими суммами перед графическим выводом.

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

Оси, на которых можно построить, заданный как объект Axes.

По умолчанию distplot строит к текущей системе координат (gca).

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

Укажите необязательные аргументы в виде пар ""имя, значение"", разделенных запятыми. Имя (Name) — это имя аргумента, а значение (Value) — соответствующее значение. Name должен появиться в кавычках. Вы можете задать несколько аргументов в виде пар имен и значений в любом порядке, например: Name1, Value1, ..., NameN, ValueN.

Пример: 'Type','graph','FrameRate',3 создает анимированный график перераспределений с помощью частоты кадров 3 секунд.

Постройте тип, заданный как пара, разделенная запятой, состоящая из 'Type' и значения в этой таблице.

ЗначениеОписание
'evolution'

Эволюция начального распределения. Графиком является (1 + NumSteps)-by-NumStates тепловая карта. Строка i отображает перераспределение на шаге i.

'histogram'

Анимированная гистограмма перераспределений. Вертикальная ось отображает вероятностную меру и горизонтальные состояния отображений оси. Аргумент пары "имя-значение" 'FrameRate' управляет прогрессом анимации.

'graph'

Анимированный график перераспределений. distplot окрашивает узлы их вероятностной мерой на каждом шаге. Аргумент пары "имя-значение" 'FrameRate' управляет прогрессом анимации.

Пример: 'Type','graph'

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

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

Значением по умолчанию является пауза на каждом временном шаге. Анимация продолжает, когда вы нажимаете клавишу "пробел".

Пример: 'FrameRate',3

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

Выходные аргументы

свернуть все

Обработайте к графику распределения, возвращенному как графический объект. h содержит уникальный идентификатор графика, который можно использовать, чтобы запросить или изменить свойства графика.

Смотрите также

|

Введенный в R2017b