Графики та поддержка таблицы

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

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

Создайте график поля точек из таблицы

Считайте patients.xls как таблица и график Diastolic переменная по сравнению с Systolic переменная. По умолчанию подписи по осям автоматически установлены в имена переменных.

tbl = readtable("patients.xls");
figure
scatter(tbl,"Systolic","Diastolic")

Figure contains an axes object. The axes object contains an object of type scatter.

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

Поскольку y-координаты прибывают из двух различных табличных переменных, не ясно, какова метка оси Y должна быть, таким образом, метка остается пробел.

scatter(tbl,"Weight",["Systolic","Diastolic"],"filled")
legend

Figure contains an axes object. The axes object contains 2 objects of type scatter.

Обновите график путем изменения таблицы

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

Считайте patients.xls как таблица и график Weight переменная по сравнению с Height переменная. Возвратите Scatter возразите как s, таким образом, можно получить доступ к его свойствам позже.

tbl = readtable("patients.xls");
figure
s = scatter(tbl,"Height","Weight","filled");

Figure contains an axes object. The axes object contains an object of type scatter.

Чтобы изменить значение в таблице, используйте запись через точку, чтобы сослаться на таблицу от SourceTable свойство Scatter объект. В этом случае найдите максимальное значение Weight переменная и изменение это к 300. График автоматически обновляется.

Примечание: Внесение изменений в таблицу в вашей рабочей области не оказывает влияния на график.

[~,idx] = max(s.SourceTable.Weight);
s.SourceTable.Weight(idx) = 300;

Figure contains an axes object. The axes object contains an object of type scatter.

Настройте внешний вид маркера с табличными переменными

Для некоторых графиков можно варьироваться цвет, размер и прозрачность маркеров в графике согласно определенным переменным в таблице. Некоторые функции имеют аргументы для определения тех аспектов. Например, создайте пузырьковый график набора данных пациентов. Постройте Weight переменная по сравнению с Height переменная. Используйте четвертый аргумент, чтобы варьироваться пузырьковые размеры согласно Diastolic переменная. Используйте пятый аргумент, чтобы варьироваться цвет согласно Age переменная.

Добавьте шкалу палитры и измените размер пузырей так, чтобы они расположились между 5 и 20 'points'.

tbl = readtable("patients.xls");
figure
bubblechart(tbl,"Height","Weight","Diastolic","Age")

% Add a colorbar and resize the bubbles
colorbar
bubblesize([5 20])

Figure contains an axes object. The axes object contains an object of type bubblechart.

Когда вы используете scatter функция, можно использовать аргументы name-value или установить свойства на Scatter возразите, чтобы управлять различными аспектами маркеров. Например, создайте график рассеивания с заполненными маркерами и установите ColorVariable свойство путем определения аргумента значения имени. Затем добавьте шкалу палитры.

figure
s = scatter(tbl,"Height","Weight","filled","ColorVariable","Age");
colorbar

Figure contains an axes object. The axes object contains an object of type scatter.

Затем варьируйтесь прозрачность маркеров согласно Systolic переменная. Для этого необходимо также установить MarkerFaceAlpha свойство к 'flat'.

s.AlphaVariable = "Systolic";
s.MarkerFaceAlpha = "flat";

Figure contains an axes object. The axes object contains an object of type scatter.

Постройте табличные координаты со скалярным размером маркера

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

Например, считайте patients.xls как таблица и график Weight переменная по сравнению с Height переменная. Используйте SizeData аргумент значения имени, чтобы задать маркеры с 200 точками.

tbl = readtable("patients.xls");
figure
scatter(tbl,"Weight","Height","SizeData",200)

Figure contains an axes object. The axes object contains an object of type scatter.

Объедините таблицу и векторные данные

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

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

tbl = readtable("patients.xls");
figure
s = scatter(tbl,"Height","Weight","filled");

Figure contains an axes object. The axes object contains an object of type scatter.

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

Окрасьте каждую точку согласно отношению артериального давления путем установки CData свойство к bpratio. Затем добавьте шкалу палитры.

% Vary the color by blood pressure ratio
bpratio = tbl.Systolic./tbl.Diastolic;
s.CData = bpratio;

% Add a colorbar
colorbar

Figure contains an axes object. The axes object contains an object of type scatter.

Можно также построить векторы или матрицы, и изменить график с помощью табличных переменных. После того, как вы создаете график, устанавливаете SourceTable свойство, и затем набор связанные с таблицей свойства, которые вы хотите. Связанные с таблицей свойства обычно имеют слово Variable на их имена. Например, постройте два вектора из 100 случайных чисел.

x = rand(100,1);
y = rand(100,1);
figure
s = scatter(x,y,"filled");

Figure contains an axes object. The axes object contains an object of type scatter.

Измените цвета маркера так, чтобы они варьировались согласно значениям по табличной переменной. Считайте patients.xls как таблица tbl. Установите SourceTable свойство и варьируется цвета маркера согласно Age переменная в таблице. Поскольку таблица имеет 100 строк, и график имеет 100 точек, Age переменная совместима с графиком. Затем добавьте шкалу палитры в график.

% Set source table and vary color by age
s.SourceTable = tbl;
s.ColorVariable = "Age";

% Add a colorbar
colorbar

Figure contains an axes object. The axes object contains an object of type scatter.

Примечание: Автономная визуализация, такая как heatmap не поддерживайте комбинации таблицы и векторных данных.

Смотрите также

Функции

Свойства

Похожие темы