gplotmatrix

Матрица точечных графиков по группам

Описание

пример

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

пример

gplotmatrix(X,Y,group) создает матрицу графиков рассеивания. Каждый график в получившейся фигуре является графиком рассеивания столбца X против столбца Y. Например, если X имеет столбцы p и Y имеет столбцы q, затем фигура содержит q-by-p матрица графиков рассеивания. Все графики сгруппированы сгруппированной переменной group. Входные параметры XY, и 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 содержит цветочные имена разновидностей: setosa, versicolor, и virginica. Визуально сравните цветочные измерения через цветочные разновидности.

load fisheriris
gplotmatrix(meas,[],species)

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

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

свернуть все

Входные данные в виде n-by-p числовая матрица, массив datetime или массив длительности. 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 или массив длительности. 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'тсс, 'grpbars''none', или 'variable'. Эта таблица описывает различные параметры отображения.

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

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

Сгенерировать гистограммы, gplotmatrix использует 'pdf' тип нормализации для числовых данных и 'count' тип нормализации для datetime и данных о длительности. (См. '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'лестница, или 'grpbars', затем ax содержит одну дополнительную строку указателей на невидимые оси, где гистограммы построены.

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

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