exponenta event banner

gplotmatrix

Матрица графиков рассеяния по группам

Описание

пример

gplotmatrix(X,[],group) создает матрицу графиков рассеяния и гистограмм данных в X, сгруппированный по переменной группировки в group. Каждый внедиагональный график на результирующей фигуре является графиком рассеяния столбца X против другого столбца X. Программа также строит контуры сгруппированных гистограмм на диагональных графиках матрицы графика. X и group должно иметь одинаковое количество строк.

пример

gplotmatrix(X,Y,group) создает матрицу графиков рассеяния. Каждый график на результирующей фигуре представляет собой график рассеяния столбца X по столбцу Y. Например, если X имеет столбцы p и Y имеет q столбцов, то фигура содержит матрицу q-за-p графиков рассеяния. Все графики сгруппированы по переменной группировки group. Входные аргументы X, Y, и group все должны иметь одинаковое количество строк.

gplotmatrix(X,Y,group,clr,sym,siz) задает цвет маркера clr, символ sym, и размер siz для каждой группы.

gplotmatrix(X,Y,group,clr,sym,siz,doleg) определяет, отображается ли легенда на рисунке. gplotmatrix создает легенду по умолчанию.

gplotmatrix(X,[],group,clr,sym,siz,doleg,dispopt) управляет опциями отображения диагональных графиков в матрице графика X.

пример

gplotmatrix(X,[],group,clr,sym,siz,doleg,dispopt,xnam) маркирует оси X и Y графиков рассеяния с использованием имен столбцов, указанных в xnam. Входной аргумент xnam должен содержать одно имя для каждого столбца X. Набор dispopt кому 'variable' отображение имен переменных по диагонали матрицы графика рассеяния.

пример

gplotmatrix(X,Y,group,clr,sym,siz,doleg,[],xnam,ynam) маркирует оси X и Y графиков рассеяния с использованием имен столбцов, указанных в xnam и ynam. Входные аргументы xnam и ynam должен содержать одно имя для каждого столбца X и Yсоответственно.

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

пример

[h,ax,bigax] = gplotmatrix(___) возвращает графические дескрипторы для отдельных графиков и всей матрицы графика рассеяния.

Вы можете пройти [] для clr, sym, siz, doleg, и dispopt для использования значений по умолчанию.

Примеры

свернуть все

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

Загрузить fisheriris набор данных, содержащий цветочные данные. Четыре столбца meas - длина чашелистика, ширина чашелистика, длина лепестка и ширина лепестка цветков. species содержит названия видов цветов: сетоза, версиколор и virginica. Визуально сравните измерения цветка между видами цветов.

load fisheriris
gplotmatrix(meas,[],species)

Figure contains 16 axes. Axes 1 contains 3 objects of type line. Axes 2 contains 3 objects of type line. Axes 3 contains 3 objects of type line. Axes 4 contains 3 objects of type line. Axes 5 contains 3 objects of type line. Axes 6 contains 3 objects of type line. Axes 7 contains 3 objects of type line. Axes 8 contains 3 objects of type line. Axes 9 contains 3 objects of type line. Axes 10 contains 3 objects of type line. Axes 11 contains 3 objects of type line. Axes 12 contains 3 objects of type line. Axes 13 contains 3 objects of type line. Axes 14 contains 3 objects of type line. Axes 15 contains 3 objects of type line. Axes 16 contains 3 objects of type line. These objects represent setosa, versicolor, virginica.

В матрице графиков рассеяния ось X крайнего левого столбца графиков рассеяния соответствует длине чашелистика, первый столбец в meas. Аналогично, ось y нижнего ряда графиков рассеяния соответствует ширине лепестка, последний столбец в meas. Поэтому график рассеяния в левом нижнем углу матрицы сравнивает значения длины чашелистиков (вдоль оси x) со значениями ширины лепестков (вдоль оси y). Окраска каждой точки зависит от вида цветка.

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

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

Загрузить discrim набор данных.

load discrim

ratings массив содержит рейтинговые значения 329 городов США для девяти категорий, перечисленных в categories массив. group массив содержит код размера города, равный 2 для 26 крупнейших городов, и 1 в противном случае.

Создайте матрицу графиков рассеяния для сравнения первых двух категорий. climate и housing, с четвертой и седьмой категориями, crime и arts. Определить group в качестве переменной группировки для визуального различения данных для больших и малых городов.

X = ratings(:,1:2);
Y = ratings(:,[4 7]);
gplotmatrix(X,Y,group)

Figure contains 4 axes. Axes 1 contains 2 objects of type line. Axes 2 contains 2 objects of type line. Axes 3 contains 2 objects of type line. Axes 4 contains 2 objects of type line. These objects represent 1, 2.

Матрица графиков рассеяния показывает заданные сравнения, причем каждая группа размеров города представлена различным цветом.

Настройте внешний вид графиков, указав цвета и символы маркеров, а также присвоив осям метки категорий оценок.

xnames = categories(1:2,:);
ynames = categories([4 7],:);
gplotmatrix(X,Y,group,'br','.o',[],'on',[],xnames,ynames)

Figure contains 4 axes. Axes 1 contains 2 objects of type line. Axes 2 contains 2 objects of type line. Axes 3 contains 2 objects of type line. Axes 4 contains 2 objects of type line. These objects represent 1, 2.

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

Загрузить patients набор данных. Сравните значения диастолического и систолического артериального давления пациента. Сгруппируйте пациентов в соответствии с их полом и статусом курильщика. Новообращенный Smoker категориальной переменной, чтобы иметь более описательные метки в легенде. Отображение сгруппированных гистограмм по диагонали матрицы графика с помощью 'grpbars' и пометить оси.

load patients
X = [Diastolic Systolic];
labeledSmoker = categorical(Smoker,[true false],{'Smoker','Nonsmoker'});
group = {Gender,labeledSmoker};
color = lines(4)
color = 4×3

         0    0.4470    0.7410
    0.8500    0.3250    0.0980
    0.9290    0.6940    0.1250
    0.4940    0.1840    0.5560

xnames = {'Diastolic','Systolic'};
gplotmatrix(X,[],group,color,[],[],[],'grpbars',xnames)

Figure contains 4 axes. Axes 1 contains 4 objects of type line. Axes 2 contains 4 objects of type line. Axes 3 contains 4 objects of type line. Axes 4 contains 4 objects of type line. These objects represent Male,Smoker, Male,Nonsmoker, Female,Smoker, Female,Nonsmoker.

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

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

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

load carsmall
X = [Acceleration Displacement Horsepower MPG Weight];
color = lines(3)
color = 3×3

         0    0.4470    0.7410
    0.8500    0.3250    0.0980
    0.9290    0.6940    0.1250

xnames = {'Acceleration','Displacement','Horsepower','MPG','Weight'};
[h,ax] = gplotmatrix(X,[],Cylinders,color,[],[],[],'variable',xnames);
title('Car Data')

Figure contains 25 axes. Axes 1 contains 3 objects of type line. Axes 2 contains 3 objects of type line. Axes 3 contains 3 objects of type line. Axes 4 contains 3 objects of type line. Axes 5 contains an object of type text. Axes 6 contains 3 objects of type line. Axes 7 contains 3 objects of type line. Axes 8 contains 3 objects of type line. Axes 9 contains an object of type text. Axes 10 contains 3 objects of type line. Axes 11 contains 3 objects of type line. Axes 12 contains 3 objects of type line. Axes 13 contains an object of type text. Axes 14 contains 3 objects of type line. Axes 15 contains 3 objects of type line. Axes 16 contains 3 objects of type line. Axes 17 contains an object of type text. Axes 18 contains 3 objects of type line. Axes 19 contains 3 objects of type line. Axes 20 contains 3 objects of type line. Axes 21 contains an object of type text. Axes 22 contains 3 objects of type line. Axes 23 contains 3 objects of type line. Axes 24 contains 3 objects of type line. Axes 25 contains 3 objects of type line. These objects represent 4, 6, 8.

Изменение внешнего вида графика рассеяния в левом нижнем углу матрицы с помощью h и ax. Сначала измените цвета точек данных на графике рассеяния. Затем добавьте линии сетки к графику рассеяния.

bottomleftPlot = h(5,1,:);
bottomleftPlot(1).Color = 'blue';
bottomleftPlot(2).Color = 'red';
bottomleftPlot(3).Color = 'yellow';

bottomleftAxes = ax(5,1);
bottomleftAxes.XGrid = 'on';
bottomleftAxes.YGrid = 'on';

Figure contains 25 axes. Axes 1 contains 3 objects of type line. Axes 2 contains 3 objects of type line. Axes 3 contains 3 objects of type line. Axes 4 contains 3 objects of type line. Axes 5 contains an object of type text. Axes 6 contains 3 objects of type line. Axes 7 contains 3 objects of type line. Axes 8 contains 3 objects of type line. Axes 9 contains an object of type text. Axes 10 contains 3 objects of type line. Axes 11 contains 3 objects of type line. Axes 12 contains 3 objects of type line. Axes 13 contains an object of type text. Axes 14 contains 3 objects of type line. Axes 15 contains 3 objects of type line. Axes 16 contains 3 objects of type line. Axes 17 contains an object of type text. Axes 18 contains 3 objects of type line. Axes 19 contains 3 objects of type line. Axes 20 contains 3 objects of type line. Axes 21 contains an object of type text. Axes 22 contains 3 objects of type line. Axes 23 contains 3 objects of type line. Axes 24 contains 3 objects of type line. Axes 25 contains 3 objects of type line. These objects represent 4, 6, 8.

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

свернуть все

Входные данные, указанные как числовая матрица n-by-p, массив datetime или массив duration. gplotmatrix создает матрицу графиков с использованием столбцов X. Если дополнительная матрица ввода не указана Y, то gplotmatrix создает матрицу p-by-p графиков. Внедиагональные графики - это графики рассеяния, и диагональные графики зависят от значения dispopt. В каждом графике рассеяния, gplotmatrix строит график в одном столбце X против другого столбца X. Точки на графиках рассеяния группируются в соответствии с group.

При указании Y, то gplotmatrix создает матрицу q-by-p графиков рассеяния с использованием столбцов p X и q-столбцы Y.

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

Входные данные, указанные как числовая матрица n-by-q, массив datetime или массив duration. gplotmatrix создает матрицу q-by-p графиков рассеяния с использованием столбцов p X и q-столбцы Y. Для каждого столбца матрицы графика значения по оси X графиков рассеяния совпадают со значениями в соответствующем столбце X. Аналогично, для каждой строки матрицы графика значения по оси Y графиков рассеяния совпадают со значениями в соответствующем столбце Y. Точки на графиках рассеяния группируются в соответствии с group.

X и Y должно иметь одинаковое количество строк.

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

Группировка переменных, указанных как категориальный вектор, числовой вектор, логический вектор, символьный массив, строковый массив или массив ячеек символьных векторов. В качестве альтернативы, group может быть массивом ячеек, содержащим несколько переменных группировки (например, {g1 g2 g3}), и в этом случае наблюдения находятся в одной группе, если они имеют общие значения всех переменных группировки. В любом случае, group должно иметь то же количество строк, что и X. Точки в одной группе отображаются на графике с одинаковыми цветом маркера, символом и размером.

Пример: categorical({'blue','red','yellow','blue','yellow','red','red','yellow','blue','red'})

Пример: {Smoker,Gender} где Smoker и Gender являются переменными группировки

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

Цвета маркеров, указанные как один из следующих:

  • Вектор символов или строковый скаляр цветных коротких имен.

  • Строковый массив или массив ячеек символьных векторов, обозначающих имена цветов или короткие имена.

  • Матрица из трех столбцов значений RGB в диапазоне [0,1]. Три столбца представляют значение R (красный), значение G (зеленый) и значение B (синий).

Можно выбрать один из этих предопределенных цветов и эквивалентных триплетов RGB.

Имя цветаКраткое имяТриплет RGBВнешность
'red''r'[1 0 0]

'green''g'[0 1 0]

'blue''b'[0 0 1]

'cyan' 'c'[0 1 1]

'magenta''m'[1 0 1]

'yellow''y'[1 1 0]

'black''k'[0 0 0]

'white''w'[1 1 1]

Если общее число групп превышает количество указанных цветов, gplotmatrix циклически использует указанные цвета.

Пример: {'blue','black','green'}

Пример: [0 0 1; 0 0.5 0.5; 0.5 0.5 0.5]

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

Символы маркеров, заданные как вектор символов или скаляр строки.

Можно выбрать один из этих параметров маркера.

СтоимостьОписание
'o'Круг
'+'Знак «Плюс»
'*'Звездочка
'.'Пункт
'x'Крест
's'Квадрат
'd'Алмаз
'^'Треугольник, направленный вверх
'v'Треугольник, направленный вниз
'>'Прямоугольный треугольник
'<'Треугольник, указывающий влево
'p'Пятиконечная звезда (пентаграмма)
'h'Шестиконечная звезда (гексаграмма)
'none'Без маркеров

По умолчанию gplotmatrix назначает '.' в качестве обозначения маркера для каждой группы. Если общее число групп превышает количество указанных символов, gplotmatrix циклически просматривает указанные символы.

Пример: 'x'

Пример: 'xo+'

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

Размеры маркера, заданные как положительный числовой вектор. Значение по умолчанию определяется количеством наблюдений. Если общее число групп превышает количество указанных размеров, gplotmatrix циклически проходит через указанные размеры.

Пример: [6 12]

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

Параметр для включения легенды, указанный как 'on' или 'off'. По умолчанию легенда отображается на рисунке.

Параметры отображения диагональных графиков в матрице графика, указанные как 'stairs', 'hist','grpbars', 'none', или 'variable'. В этой таблице описаны различные опции отображения.

СтоимостьОписание
'stairs'Постройте графики сгруппированных гистограмм.
'hist'Построить гистограммы.
'grpbars'Постройте график сгруппированных гистограмм.
'none'Отображение пустых графиков.
'variable'Отображение имен переменных. Чтобы использовать этот параметр отображения, необходимо указать xnam.

Значение по умолчанию: 'stairs' когда group содержит более одной группы. В противном случае gplotmatrix отображает одну гистограмму на каждом диагональном графике.

Для генерации гистограмм gplotmatrix использует 'pdf' тип нормализации для числовых данных и 'count' тип нормализации для данных datetime и duration. (См. раздел 'Normalization' аргумент пары имя-значение histogram.) Обратите внимание, что метки засечек по оси Y не применяются к гистограммам. Используйте подсказки данных для просмотра правильных значений гистограммы.

X имена столбцов, указанные как символьный массив, строковый массив или массив ячеек символьных векторов. xnam должен содержать одно имя для каждого столбца X.

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

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

Y имена столбцов, указанные как символьный массив, строковый массив или массив ячеек символьных векторов. ynam должен содержать одно имя для каждого столбца Y.

Пример: {'Diastolic','Systolic'}

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

Родительский контейнер, указанный как Figure или Panel объект.

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

свернуть все

Обработка линий для отдельных участков, возвращаемых как один из следующих массивов:

  • массив p-by-p-by-k Line и Histogram объекты, если не указано Y

  • q-by-p-by-k массива Line при указании обоих объектов X и Y

p - количество столбцов в X, q - количество столбцов в Y, и k - количество уникальных групп в group.

Каждый график рассеяния имеет k соответствующих Line объекты в h, и каждая гистограмма имеет k соответствующих Histogram объекты в h.

Оси обрабатываются отдельными участками, возвращаемыми в виде матрицы Axes объекты. Если dispopt является 'hist', 'stairs', или 'grpbars', то ax Содержит один дополнительный ряд маркеров перемещения к невидимым осям, где строятся гистограммы.

Дескриптор осей для всей матрицы графика, возвращаемый как Axes объект. bigax указывает на текущие оси, поэтому последующий title, xlabel, или ylabel команда создает метки, центрированные относительно всей матрицы печати.

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