scatterhistogram

Создайте график рассеивания с гистограммами

Синтаксис

s = scatterhistogram(tbl,xvar,yvar)
s = scatterhistogram(tbl,xvar,yvar,'GroupVariable',grpvar)
s = scatterhistogram(xvalues,yvalues)
s = scatterhistogram(xvalues,yvalues,'GroupData',grpvalues)
s = scatterhistogram(___,Name,Value)
s = scatterhistogram(parent,___)

Описание

пример

s = scatterhistogram(tbl,xvar,yvar) создает график рассеивания с крайними гистограммами из таблицы tbl и возвращает объект ScatterHistogramChart. Вход xvar указывает на табличную переменную, чтобы отобразиться вдоль x - ось. Вход yvar указывает на табличную переменную, чтобы отобразиться вдоль y - ось. Используйте s, чтобы изменить объект после того, как это будет создано. Для списка свойств смотрите ScatterHistogramChart Properties.

пример

s = scatterhistogram(tbl,xvar,yvar,'GroupVariable',grpvar) использует табличную переменную, заданную grpvar, чтобы сгруппировать наблюдения, заданные xvar и yvar.

пример

s = scatterhistogram(xvalues,yvalues) создает график рассеивания данных в xvalues и yvalues и отображает крайние гистограммы для xvalues и данных yvalues вдоль x - оси и y - ось, соответственно.

пример

s = scatterhistogram(xvalues,yvalues,'GroupData',grpvalues) использует данные в grpvalues, чтобы сгруппировать данные в xvalues и yvalues.

пример

s = scatterhistogram(___,Name,Value) задает дополнительные опции для графика рассеивания с крайними гистограммами с помощью одного или нескольких аргументов пары "имя-значение". Задайте опции после всех других входных параметров. Для списка свойств смотрите ScatterHistogramChart Properties.

s = scatterhistogram(parent,___) создает график рассеивания с крайними гистограммами в фигуре, панели или вкладке, заданной parent.

Примеры

свернуть все

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

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

load patients
tbl = table(LastName,Age,Gender,Height,Weight);
s = scatterhistogram(tbl,'Height','Weight');

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

Загрузите набор данных patients и создайте поля точек график гистограммы от данных. Сравните Systolic пациентов и значения Diastolic. Сгруппируйте данные согласно состоянию курильщика пациентов путем установки аргумента пары "имя-значение" 'GroupVariable' 'Smoker'.

load patients
tbl = table(LastName,Diastolic,Systolic,Smoker);
s = scatterhistogram(tbl,'Diastolic','Systolic','GroupVariable','Smoker');

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

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

load patients
Smoker = categorical(Smoker);
s = scatterhistogram(Age,Smoker);
xlabel('Age')
ylabel('Smoker')

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

Создайте массивы данных. Затем создайте поля точек график гистограммы, чтобы визуализировать данные. Используйте пользовательские метки вдоль оси X и оси Y, чтобы задать имена переменных первых двух входных параметров. Можно задать заголовок, подписи по осям и заголовок легенды путем установки свойств объекта ScatterHistogramChart.

xvalues = [7 6 5 6.5 9 7.5 8.5 7.5 10 8];
yvalues = categorical({'onsale','regular','onsale','onsale', ...
    'regular','regular','onsale','onsale','regular','regular'});
grpvalues = {'Red','Black','Blue','Red','Black','Blue','Red', ...
    'Red','Blue','Black'};
s = scatterhistogram(xvalues,yvalues,'GroupData',grpvalues);

s.Title = 'Shoe Sales';
s.XLabel = 'Shoe Size';
s.YLabel = 'Price';
s.LegendTitle = 'Shoe Color';

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

s.Color = {'Red','Black','Blue'};
s.BinWidths = 1;

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

Загрузите набор данных patients и создайте поля точек график гистограммы от данных. Сравните Diastolic пациентов и значения Systolic, и сгруппируйте данные согласно значениям SelfAssessedHealthStatus пациентов. Настройте гистограммы путем определения опций LineWidth и NumBins. Поместите график рассеивания в местоположение 'NorthEast' фигуры при помощи опции ScatterPlotLocation. Гарантируйте, что легенда видима путем определения опции LegendVisible как 'on'.

load patients
tbl = table(LastName,Diastolic,Systolic,SelfAssessedHealthStatus);
s = scatterhistogram(tbl,'Diastolic','Systolic','GroupVariable','SelfAssessedHealthStatus', ...
    'NumBins',4,'LineWidth',1.5,'ScatterPlotLocation','NorthEast','LegendVisible','on');

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

Загрузите набор данных patients. Объедините Smoker и данные Gender, чтобы создать новую переменную. Создайте поля точек график гистограммы, который сравнивает Diastolic и значения Systolic пациентов. Используйте новую переменную SmokerGender, чтобы сгруппировать данные в поля точек графике гистограммы.

load patients
[idx,genderStatus,smokerStatus] = findgroups(string(Gender),string(Smoker));
SmokerGender = strcat(genderStatus(idx),"-",smokerStatus(idx));
s = scatterhistogram(Diastolic,Systolic,'GroupData',SmokerGender,'LegendVisible','on');
xlabel('Diastolic')
ylabel('Systolic')

Создайте график рассеивания с плотностью ядра крайние гистограммы. Этот пример требует лицензии Statistics and Machine Learning Toolbox™.

Загрузите набор данных carsmall и создайте поля точек график гистограммы от данных. Сравните значения MPG и Horsepower. Используйте количество цилиндров, чтобы сгруппировать данные путем установки опции GroupVariable на Cylinders. Задайте гистограммы плотности ядра путем установки опции HistogramDisplayStyle на 'smooth'. Задайте сплошную линию для всех гистограмм путем установки опции LineStyle на '-'.

load carsmall
tbl = table(Horsepower,MPG,Cylinders);
s = scatterhistogram(tbl,'Horsepower','MPG', ...
    'GroupVariable','Cylinders','HistogramDisplayStyle','smooth', ...
    'LineStyle','-');

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

свернуть все

Таблица Source, заданная как таблица.

Можно составить таблицу от переменных рабочей области с помощью функции table, или можно импортировать данные как таблицу с помощью функции readtable.

Свойство SourceTable объектно-ориентированной памяти ScatterHistogramChart исходная таблица.

Табличная переменная для x - ось, заданная в одной из следующих форм:

  • Вектор символов или скаляр строки — Указание на одни из имен переменных. Например, scatterhistogram(tbl,'Acceleration','Horsepower') выбирает переменную под названием 'Acceleration' для x - ось.

  • Числовой скаляр — Указание на индекс табличной переменной. Например, scatterhistogram(tbl,5,3) выбирает пятую переменную в таблице для x - ось.

  • Логический вектор — Содержащий один элемент true.

Значения, сопоставленные с вашей табличной переменной, должны иметь числовой тип или categorical.

Свойство XVariable объектно-ориентированной памяти ScatterHistogramChart имя выбранной переменной.

Табличная переменная для y - ось, заданная в одной из следующих форм:

  • Вектор символов или скаляр строки — Указание на одни из имен переменных. Например, scatterhistogram(tbl,'Acceleration','Horsepower') выбирает переменную под названием 'Horsepower' для y - ось.

  • Числовой скаляр — Указание на индекс табличной переменной. Например, scatterhistogram(tbl,5,3) выбирает третью переменную в таблице для y - ось.

  • Логический вектор — Содержащий один элемент true.

Значения, сопоставленные с вашей табличной переменной, должны иметь числовой тип или categorical.

Свойство YVariable объектно-ориентированной памяти ScatterHistogramChart имя выбранной переменной.

Табличная переменная для группировки данных, заданных в одной из следующих форм:

  • Вектор символов или скаляр строки — Указание на одни из имен переменных

  • Числовой скаляр — Указание на индекс табличной переменной

  • Логический вектор — Содержащий один элемент true

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

grpvar разделяет данные в xvar и yvar в уникальные группы. У каждой группы есть цвет по умолчанию и независимая гистограмма на каждой оси. В легенде scatterhistogram отображает названия группы в порядке их первого выступления в GroupData.

Пример: 'Model_Year'

Пример 2

Значения, появляющиеся вдоль x - ось, заданная как числовой векторный или категориальный массив.

Свойство XData объектно-ориентированной памяти ScatterHistogramChart данные xvalues.

Пример: [0.5 4.3 2.4 5.6 3.4]

Пример: categorical({'small','medium','small','large','medium','small'})

Значения, появляющиеся вдоль y - ось, заданная как числовой векторный или категориальный массив.

Свойство YData объектно-ориентированной памяти ScatterHistogramChart данные yvalues.

Пример: [0.5 4.3 2.4 5.6 3.4]

Пример: categorical({'small','medium','small','large','medium','small'})

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

grpvalues разделяет данные в xvalues и yvalues в уникальные группы. У каждой группы есть цвет по умолчанию и независимая гистограмма на каждой оси. В легенде scatterhistogram отображает названия группы в порядке их первого выступления в GroupData.

Пример: [1 2 1 3 2 1 3]

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

Родительский контейнер, в котором можно построить, заданный как Figure, Panel или объект Tab.

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

Укажите необязательные аргументы в виде пар ""имя, значение"", разделенных запятыми. Имя (Name) — это имя аргумента, а значение (Value) — соответствующее значение. Name должен появиться в кавычках. Вы можете задать несколько аргументов в виде пар имен и значений в любом порядке, например: Name1, Value1, ..., NameN, ValueN.

Пример: scatterhistogram(tbl,xvar,yvar,'GroupVariable',grpvar,'HistogramDisplayStyle','stairs') задает grpvar как группирующую переменную и отображает ступенчатые графики рядом с графиком рассеивания.

Примечание

Перечисленные здесь свойства являются только подмножеством. Для полного списка смотрите ScatterHistogramChart Properties.

Заголовок диаграммы, заданный как вектор символов или скаляр строки. График по умолчанию не имеет никакого заголовка.

Пример: s = scatterhistogram(__,'Title','My Title Text')

Пример: s.Title = 'My Title Text'

Количество интервалов гистограммы, заданных как положительный целочисленный скаляр, 2 1 положительный целочисленный вектор, или 2 n положительной целочисленной матрицей, где n является количеством групп в GroupData.

Заданное значениеОписание
скалярЗначение является количеством интервалов для гистограмм y и x.
2 1 векторПервое значение является количеством интервалов для данных x, и второе значение является количеством интервалов для данных y.
2 n матрицейЗначение (1,j) является количеством интервалов для гистограммы данных x, которые находятся в j th группа. Точно так же значение (2,j) является количеством интервалов для гистограммы данных y, которые находятся в j th группа.

scatterhistogram использует аргумент пары "имя-значение" 'BinMethod','auto' histogram, чтобы определить NumBins по умолчанию и значения BinWidths.

Вы не можете изменить NumBins для категориальных данных.

Пример: s = scatterhistogram(__,'NumBins',20)

Пример: s.NumBins = [10; 15]

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

DisplayStyle Описание
'stairs'Отобразите ступенчатый график, который показывает схему гистограммы, не заполняя панели.
'bar'Отобразите столбиковую диаграмму гистограммы.
'smooth'Отобразите сглаженный график, сгенерированный через оценки плотности ядра. Эта опция требует лицензии Statistics and Machine Learning Toolbox.

scatterhistogram использует тип 'pdf' нормализации, чтобы сгенерировать гистограммы. Для получения дополнительной информации смотрите аргумент пары "имя-значение" 'Normalization' histogram.

Пример: s = scatterhistogram(__,'HistogramDisplayStyle','smooth')

Пример: s.HistogramDisplayStyle = 'bar'

Ширина линии гистограммы, заданная как положительная скалярная величина или положительный вектор в точках. По умолчанию scatterhistogram присваивает ширину линии 0.5 к каждой сюжетной линии гистограммы.

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

Пример: s = scatterhistogram(__,'LineWidth',0.75)

Пример: s.LineWidth = [0.5 0.75 0.5]

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

  • Вектор символов, определяющий стиль маркера

  • Массив строк или массив ячеек из символьных векторов, определяющий один или несколько стилей маркера

Выберите среди этих опций маркера.

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

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

Пример: s = scatterhistogram(__,'MarkerStyle','x')

Пример: s.MarkerStyle = {'x','o'}

Местоположение графика рассеивания, заданного как одна из этих опций.

Местоположение Описание
'SouthWest'Постройте гистограммы выше и справа от графика рассеивания.
'SouthEast'Постройте гистограммы выше и слева от графика рассеивания.
'NorthEast'Постройте гистограммы ниже и слева от графика рассеивания.
'NorthWest'Постройте гистограммы ниже и справа от графика рассеивания.

Пример: s = scatterhistogram(__,'ScatterPlotLocation','NorthEast')

Пример: s.ScatterPlotLocation = 'SouthEast'

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

Если GroupData пуст ([]) или содержит одну группу, то scatterhistogram не отображает легенду. В противном случае scatterhistogram отображает легенду по умолчанию, если легенда не перекрывает график рассеивания или крайние гистограммы.

В легенде scatterhistogram отображает названия группы в порядке их первого выступления в GroupData.

Пример: s = scatterhistogram(__,'LegendVisible','on')

Пример: s.LegendVisible = 'off'

Советы

  • Чтобы в интерактивном режиме исследовать данные в вашем объекте ScatterHistogramChart, используйте эти опции. Некоторые из этих опций не доступны в Live Editor.

    • Изменение масштаба/панорамирование — Использование колесико прокрутки или кнопки + и -, чтобы масштабировать. Перетащите график рассеивания к панорамированию. scatterhistogram обновляет крайние гистограммы на основе данных в текущих пределах графика рассеивания.

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

Введенный в R2018b