exponenta event banner

parallelcoords

График параллельных координат

Описание

parallelcoords(x) создает график параллельных координат многомерных данных в матрице x. Используйте график параллельных координат для визуализации высокоразмерных данных, где каждое наблюдение представлено последовательностью его значений координат, построенных по их координатным индексам.

пример

parallelcoords(x,Name,Value) создает параллельный график координат с дополнительными опциями, заданными одним или несколькими Name,Value аргументы пары. Например, можно стандартизировать данные в x или пометить координатными делениями горизонтальную ось графика.

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

пример

h = parallelcoords(___) возвращает вектор столбца дескрипторов Line объекты, созданные parallelcoords, с одним дескриптором для каждой строки x.

Примеры

свернуть все

Загрузите данные образца радужки Фишера.

load fisheriris

Данные содержат четыре измерения (длина чашелистика, ширина чашелистика, длина лепестка и ширина лепестка) от трёх видов цветков радужки. Матрица meas содержит все четыре измерения для каждого из 150 цветков. Массив ячеек species содержит видовое название каждого из 150 цветков.

Создайте массив ячеек, содержащий имя каждой переменной измерения в данных выборки.

labels = {'Sepal Length','Sepal Width','Petal Length','Petal Width'};

Создание параллельного графика координат с использованием данных измерений в meas. Использовать разные цвета для каждой группы, как определено в speciesи маркировать горизонтальную ось с помощью имен переменных.

parallelcoords(meas,'Group',species,'Labels',labels)

Figure contains an axes. The axes contains 150 objects of type line. These objects represent setosa, versicolor, virginica.

Полученный график содержит одну линию для каждого наблюдения (цветок). Цвет каждой линии указывает на вид цветка.

Загрузите данные образца радужки Фишера.

load fisheriris

Данные содержат четыре измерения (длина чашелистика, ширина чашелистика, длина лепестка и ширина лепестка) от трёх видов цветков радужки. Матрица meas содержит все четыре измерения для каждого из 150 цветков. Массив ячеек species содержит видовое название каждого из 150 цветков.

Создайте массив ячеек, содержащий имя каждой переменной измерения в данных выборки.

labels = {'Sepal Length','Sepal Width','Petal Length','Petal Width'};

Создание графика параллельных координат с использованием данных измерений в meas. Постройте график только медианы, 25 процентов и 75 процентов квартильных значений для каждой группы, идентифицированной в species. Маркировка горизонтальной оси с использованием имен переменных.

parallelcoords(meas,'group',species,'labels',labels,... 
               'quantile',.25)

Figure contains an axes. The axes contains 9 objects of type line. These objects represent setosa, versicolor, virginica.

На графике показаны средние значения для каждой группы в виде сплошной линии, а квартильные значения в виде пунктирных линий одного цвета. Например, сплошная синяя линия показывает среднее значение, измеренное для каждой переменной на setosa ирисы. Пунктирная синяя линия под сплошной синей линией показывает 25-й процентиль измерений для каждой переменной на setosa ирисы. Пунктирная синяя линия над сплошной синей линией показывает 75-й процентиль измерений для каждой переменной на setosa ирисы.

Загрузите данные образца радужки Фишера.

load fisheriris

Данные содержат четыре измерения (длина чашелистика, ширина чашелистика, длина лепестка и ширина лепестка) от трёх видов цветков радужки. Матрица meas содержит все четыре измерения для каждого из 150 цветков. Массив ячеек species содержит видовое название каждого из 150 цветков.

Создайте массив ячеек, содержащий имя каждой переменной измерения в данных выборки.

labels = {'Sepal Length','Sepal Width','Petal Length','Petal Width'};

Создание графика параллельных координат с использованием данных измерений в meas. Постройте график только медианы, 25 процентов и 75 процентов квартильных значений для каждой группы, идентифицированной в species. Маркировка горизонтальной оси с использованием имен переменных. Установите ширину линии равной 2.

parallelcoords(meas,'group',species,'labels',labels,... 
               'quantile',.25,'LineWidth',2)

Figure contains an axes. The axes contains 9 objects of type line. These objects represent setosa, versicolor, virginica.

Определение 'LineWidth' таким образом, устанавливает ширину каждой строки на графике равной 2.

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

h = parallelcoords(meas,'group',species,'labels',labels,... 
               'quantile',.25)

Figure contains an axes. The axes contains 9 objects of type line. These objects represent setosa, versicolor, virginica.

h = 
  9x1 Line array:

  Line    (median)
  Line    (lower quantile)
  Line    (upper quantile)
  Line    (median)
  Line    (lower quantile)
  Line    (upper quantile)
  Line    (median)
  Line    (lower quantile)
  Line    (upper quantile)

Возвращенный вектор столбца h содержит дескрипторы, которые соответствуют каждому объекту строки, созданному parallelcoords. Например, h (1) соответствует медианной строке для первой переменной группирования (setosa).

Используйте точечную нотацию для увеличения ширины линии, показывающей медианное значение для каждого измерения, выполненного для ирисов в setosa группа.

h(1).LineWidth = 2;

Figure contains an axes. The axes contains 9 objects of type line. These objects represent setosa, versicolor, virginica.

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

свернуть все

Многомерные входные данные, заданные как матрица n-by-p числовых значений. n - количество строк x, и каждая строка соответствует наблюдению в x. p - количество столбцов в x, и каждый столбец соответствует переменной в x.

parallelcoords удовольствия NaN значения в x как отсутствующие значения и не строит эти значения координат.

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

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

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

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

Пример: 'Group',species,'Quantile',.25 строит график медианы, 25 процентов и 75 процентов квартильных значений для входных данных, используя различный цвет для каждой группы, определенной в переменной species.

Группирующая переменная для входных данных, указанная как разделенная запятыми пара, состоящая из 'Group' и числовой массив, содержащий индекс группы для каждого наблюдения. Альтернативно, массив может быть категориальной переменной, символьной матрицей, строковым массивом или массивом ячеек, содержащим имя группы для каждого наблюдения.

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

Метки горизонтальной оси, заданные как разделенная запятыми пара, состоящая из 'Labels' и символьный массив, строковый массив или массив ячеек, содержащий имена меток.

Пример: 'Labels',{'Sepal Width','Sepal Length'}

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

Квантили входных данных для построения графика, определенные как пара, разделенная запятыми, состоящая из 'Quantile' и числовое значение в диапазоне (0,1). Если задано значение alpha для 'Quantile', то parallelcoords строит график только медианных, альфа и 1 - альфа квантилей для каждой из переменных (столбцов) в x.

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

Пример: 'Quantile',.25

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

Метод стандартизации входных данных, определяемый как разделенная запятыми пара, состоящая из 'Standardize' и одно из следующих.

'on'Масштабировать каждый столбец x иметь среднее значение, равное 0, и стандартное отклонение, равное 1 перед построением графика.
'PCA'Создание графика на основе оценок основных компонентов x, в порядке уменьшения собственных значений. parallelcoords удаляет строки x содержащие отсутствующие значения (NaN) для стандартизации PCA.
'PCAStd'Создайте график, используя стандартизированные баллы основного компонента.

Пример: 'Standardize','on'

Совет
  • Можно изменить некоторые аспекты линий печати, указав имя и значение свойства для любого из свойств, перечисленных в списке «Свойства линии». Однако этот подход применяет модификацию ко всем линиям на графике. Для изменения только определенных линий печати используйте синтаксис, возвращающий графические дескрипторы, и точечное представление для индивидуальной настройки каждого свойства линии. Иллюстрация приведена в разделе «Настройка свойств линий при печати с параллельными координатами».

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

свернуть все

Графические дескрипторы для линейных объектов, возвращаемые как вектор Line графические ручки. Графические маркеры - это уникальные идентификаторы, которые можно использовать для запроса и изменения свойств определенной строки на графике. Для просмотра и задания свойств линейных объектов используйте точечное представление. Сведения об использовании точечных обозначений см. в разделе Значения свойств Access. Для получения информации о Line свойства, которые можно задать, см. в разделе Свойства линии.

Если вы используете 'Quantile' аргумент пары имя-значение, затем h содержит по одному дескриптору для каждого из трех созданных объектов-линий. Если вы используете оба 'Quantile' и 'Group' аргументы пары имя-значение, затем h содержит три дескриптора для каждой группы.

Альтернативная функциональность

Кроме того, можно создать ParallelCoordinatesPlot с помощью parallelplot функция.

  • В отличие от parallelcoords функция, parallelplot позволяет выводить табличные данные, включающие категориальные переменные.

  • parallelplot не поддерживает печать квантилей для числовых данных. Тем не менее, ParallelCoordinatesPlot объект содержит DataNormalization свойство, которое предоставляет несколько методов нормализации данных для координат с числовыми значениями.

Чтобы управлять появлением и поведением объекта, измените ParallelCoordinatesPlot Properties.

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