побочная сюжетная линия

Синтаксис

biplot(coefs)
biplot(coefs,Name,Value)
h = biplot(___)

Описание

пример

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

пример

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

пример

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);

Управляйте внешним видом побочной сюжетной линии путем определения поддерживаемых имен свойства строки и значений, и при помощи указателей на графические объекты, созданные 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

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

Укажите необязательные аргументы в виде пар ""имя, значение"", разделенных запятыми. Имя (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