biplot

Описание

пример

biplot(coefs) создает побочную сюжетную линию коэффициентов в матричном coefs. Побочная сюжетная линия 2D если coefs имеет два столбца или 3-D, если это имеет три столбца. Оси в побочной сюжетной линии представляют столбцы coefs, и векторы в побочной сюжетной линии представляют строки coefs (наблюдаемые переменные).

пример

biplot(coefs,Name,Value) задает дополнительные опции с помощью одного или нескольких аргументов пары "имя-значение". Например, можно задать 'Positive','true' ограничить побочную сюжетную линию положительным квадрантом (в 2D) или октант (в 3-D).

пример

biplot(ax,___) использует оси графика, заданные Axes объект ax. Задайте ax как первый входной параметр, сопровождаемый любой из комбинаций входных аргументов в предыдущих синтаксисах.

пример

h = biplot(___) возвращает вектор-столбец указателей на графические объекты, созданные biplot. Используйте h запросить и изменить свойства определенных графических объектов. Для получения дополнительной информации см. Свойства графического объекта (MATLAB).

Примеры

свернуть все

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

Загрузите выборочные данные.

load carsmall

Создайте матрицу, состоящую из переменных Acceleration, Displacement, Horsepower, MPG, и Weight. Удалите строки в матрице, которые имеют отсутствующие значения.

X = [Acceleration Displacement Horsepower MPG Weight];
X = rmmissing(X);

Стандартизируйте X и выполните анализ главных компонентов.

Z = zscore(X); % Standardized data
[coefs,score] = pca(Z);

Матричный coefs 5 на 5 содержит коэффициенты основного компонента (один столбец для каждого основного компонента). Матричный score содержит оценки основного компонента (наблюдения).

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

biplot(coefs(:,1:3))

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

vbls = {'Accel','Disp','HP','MPG','Wgt'}; % Labels for the variables
biplot(coefs(:,1:3),'Scores',score(:,1:3),'VarLabels',vbls);

Загрузите fisheriris набор данных, стандартизируйте цветочные измерения в meas, и выполните анализ главных компонентов.

load fisheriris
Z = zscore(meas);
[coefs,scores] = pca(Z);

Создайте фигуру с двумя подграфиками и возвратите Axes объекты как ax1 и ax2. Создайте побочную сюжетную линию в каждом наборе осей путем обращения к соответствующему Axes объект. В главном подграфике отобразите побочную сюжетную линию с помощью первых двух основных компонентов. В нижнем подграфике отобразите побочную сюжетную линию с помощью третьих и четвертых основных компонентов. Задайте ось X и пределы оси Y путем передачи соответствующего Axes объекты к xlim и ylim функции. Измените ось X и метки оси Y в нижнем графике путем передачи ax2 к xlabel и ylabel.

figure('Units','normalized','Position',[0.3 0.3 0.3 0.5])
variables = {'SepalLength','SepalWidth','PetalLength','PetalWidth'};
ax1 = subplot(2,1,1); % Top subplot
biplot(ax1,coefs(:,1:2),'Scores',scores(:,1:2),'VarLabels',variables);
xlim(ax1,[-1 1])
ylim(ax1,[-1 1])

ax2 = subplot(2,1,2); % Bottom subplot
biplot(ax2,coefs(:,3:4),'Scores',scores(:,3:4),'VarLabels',variables);
xlim(ax2,[-1 1])
ylim(ax2,[-1 1])
xlabel(ax2,'Component 3')
ylabel(ax2,'Component 4')

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

Загрузите выборочные данные.

load carsmall

Создайте матрицу, состоящую из переменных Acceleration, Displacement, и MPG. Удалите строки в матрице, которые имеют отсутствующие значения.

X = [Acceleration Displacement MPG];
X = rmmissing(X);

Стандартизируйте X и выполните анализ главных компонентов.

Z = zscore(X); % Standardized data
[coefs,score] = pca(Z);

3х3 матричный coefs содержит коэффициенты основного компонента (один столбец для каждого основного компонента). Матричный score содержит оценки основного компонента (наблюдения).

Создайте побочную сюжетную линию наблюдений в течение первых двух основных компонентов. Используйте свойства по умолчанию в побочной сюжетной линии.

h = biplot(coefs(:,1:2),'Scores',score(:,1:2));

h вектор указателей на графические объекты. Можно изменить свойства объектов линии, возвращенных biplot.

Пометьте эти три переменные для легкой идентификации. Задайте круги как символ маркера и синий как цвет линии для всех объектов линии.

vbls = {'Accel','Disp','MPG'}; % Array of variable labels
h1 = biplot(coefs(:,1:2),'Scores',score(:,1:2),...
    'Color','b','Marker','o','VarLabels',vbls);

h1 вектор указателей на графические объекты. Просмотрите первые несколько элементов h1.

h1(1:10) % First ten object handles
ans = 
  10x1 graphics array:

  Line    (varline)
  Line    (varline)
  Line    (varline)
  Line    (varmarker)
  Line    (varmarker)
  Line    (varmarker)
  Text    (varlabel)
  Text    (varlabel)
  Text    (varlabel)
  Line    (obsmarker)

Указатели для переменных меток (h1(7:9)) текст. Поэтому настройки, заданные для свойств линии, не влияют на эти метки.

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

h2 = biplot(coefs(:,1:2),'Scores',score(:,1:2),'VarLabels',vbls);

h2 вектор указателей на графические объекты. Просмотрите первые несколько элементов h2.

h2(1:10) % First ten object handles
ans = 
  10x1 graphics array:

  Line    (varline)
  Line    (varline)
  Line    (varline)
  Line    (varmarker)
  Line    (varmarker)
  Line    (varmarker)
  Text    (varlabel)
  Text    (varlabel)
  Text    (varlabel)
  Line    (obsmarker)

h2 содержит 104 указателя на объект.

  • Первые три указателя (h(1:3)) соответствуйте указателям линии для этих трех переменных.

  • Указатели h(4:6) соответствуйте указателям маркера для этих трех переменных.

  • Указатели h(7:9) соответствуйте текстовым указателям для этих трех переменных.

  • Следующие 94 указателя соответствуют указателям линии для наблюдений.

  • Последний указатель соответствует указателю линии для линий оси.

Измените определенные свойства побочной сюжетной линии при помощи указателей на графические объекты.

Измените цвет линии переменных (векторы).

for k = 1:3
    h2(k).Color = 'r'; % Specify red as the line color
end

Измените шрифт переменных меток.

for k = 7:9
    h2(k).FontWeight = 'bold';  % Specify bold font
end

Измените цвет маркеров наблюдения.

for k = 10:103
    h2(k).MarkerEdgeColor = 'k';  % Specify black color for the observations
end

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

свернуть все

Коэффициенты в виде матрицы, которая имеет два или три столбца. Если coefs имеет два столбца, затем побочная сюжетная линия 2D; если coefs имеет три столбца, затем побочная сюжетная линия 3-D. Столбцы coefs обычно содержите коэффициенты основного компонента, созданные с pca или pcacov, или факторные нагрузки оцениваются с factoran. Оси в побочной сюжетной линии представляют столбцы coefs, и векторы в побочной сюжетной линии представляют строки coefs (наблюдаемые переменные).

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

Оси для графика в виде Axes объект. Если вы не задаете ax, затем biplot создает график с помощью текущей системы координат. Для получения дополнительной информации о создании Axes возразите, смотрите axes.

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

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

Пример: biplot(coefs,'VarLabels',varlabels) метки каждый вектор (переменная) с текстом в массиве varlabels.

Баллы в виде разделенной запятой пары, состоящей из 'Scores' и матрица с одинаковым числом столбцов как coefs. Scores обычно содержит оценки основного компонента, созданные с pca или факторные баллы оцениваются с factoran. biplot функция представляет каждую строку Scores (наблюдения) как точки и каждая строка coefs (наблюдаемые переменные) как векторы.

Пример: 'Scores',score(:,1:3)

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

Переменные метки в виде разделенной запятой пары, состоящей из 'VarLabels' и символьный массив, массив строк или массив ячеек. biplot метки каждый вектор (наблюдаемая переменная) с текстом в массиве.

Пример: 'VarLabels',varlabels

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

Наблюдение помечает в виде разделенной запятой пары, состоящей из 'ObsLabels' и символьный массив, массив строк или массив ячеек. biplot использует текст в массиве, как наблюдение называет при отображении Data Cursor.

Пример: 'ObsLabels',obslabels

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

Индикатор для графического вывода в положительных координатах в виде разделенной запятой пары, состоящей из 'Positive' и одно из этих логических значений.

ЗначениеОписание
false

Создает побочную сюжетную линию в области значений +/– max(coefs(:)) для всех координат (значение по умолчанию)

true

Ограничивает побочную сюжетную линию положительным квадрантом (в 2D) или октант (в 3-D)

Пример: 'Positive',true

Типы данных: логический

Имя свойства в виде разделенной запятой пары, состоящей из имени свойства и его присваиваемого значения для одного или нескольких, поддержало Line Properties. Эти свойства являются именами и значениями для всех примитивных графических объектов линии, созданных biplot. Заданные имена свойства управляют внешним видом и поведением графических объектов.

Пример: 'Marker','square','MarkerSize',10

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

свернуть все

Указатели на графические объекты создаются biplot, возвращенный как вектор-столбец. Вектор содержит указатели в этом порядке:

  1. Соответствие указателей переменным (линия обрабатывает сначала, сопровождаемый указателями маркера затем текстовые указатели),

  2. Указатели, соответствующие наблюдениям (маркер обрабатывает сначала, сопровождаемый текстовыми указателями),

  3. Указатели, соответствующие линиям оси

Можно использовать указатели, чтобы запросить и изменить свойства определенных графических объектов. Смотрите Указатели Графического объекта (MATLAB) и Графические Массивы (MATLAB) для получения дополнительной информации.

Алгоритмы

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

  • Налагает соглашение знака, обеспечивая элемент с самой большой величиной в каждом столбце coefs быть положительным. Это действие инвертирует некоторые векторы в coefs к противоположному направлению, но часто делает график легче читать. Интерпретация графика незатронута, потому что изменение знака вектора коэффициентов не изменяет свое значение.

  • Масштабирует баллы так, чтобы они соответствовали на графике. Таким образом, функция делит каждый счет на максимальное абсолютное значение всех баллов и умножается на максимальную содействующую длину coefs. Затем biplot изменяет знак координат счета согласно соглашению знака для коэффициентов.

Представлено до R2006a