biplot

Описание

пример

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

пример

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

пример

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

пример

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

Примеры

свернуть все

Создайте биплот первых трех коэффициентов основных компонентов, наблюдений и наблюдаемых переменных для 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);

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

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

biplot(coefs(:,1:3))

Figure contains an axes. The axes contains 11 objects of type line.

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

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

Figure contains an axes. The axes contains 109 objects of type line, text.

Загрузите 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')

Figure contains 2 axes. Axes 1 contains 163 objects of type line, text. Axes 2 contains 163 objects of type line, text.

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

Figure contains an axes. The axes contains 101 objects of type line.

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

Figure contains an axes. The axes contains 104 objects of type line, text.

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

Figure contains an axes. The axes contains 104 objects of type line, text.

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

Figure contains an axes. The axes contains 104 objects of type line, text.

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

свернуть все

Коэффициенты, заданные как матрица, которая имеет два или три столбца. Если coefs имеет два столбцов, затем биплот 2-D; если 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. The biplot функция представляет каждую строку Scores (наблюдения) как точки и каждая строка coefs (наблюдаемые переменные) как векторы.

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

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

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

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

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

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

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

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

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

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

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

true

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

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

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

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

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

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

свернуть все

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

  1. Маркеры, соответствующие переменным (сначала маркеры линий, затем маркеры маркеров, затем текстовые указатели)

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

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

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

Алгоритмы

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

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

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

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