MATLAB scatterhistogram()函数的用法(附带实例)
在 MATLAB 中,利用函数 scatterhistogram() 可以创建带直方图的散点图,其调用格式如下:
【实例 1】基于医疗患者数据表创建边缘带直方图的散点图。在编辑器中编写以下程序并运行:

图 1 边缘带直方图的散点图
【实例 2】创建一个具有核密度边缘直方图的散点图。在编辑器中编写以下程序并运行:

图 2 具有核密度边缘直方图的散点图
scatterhistogram(tbl,xvar,yvar) % 基于表 tbl 创建一个边缘带直方图的散点图
% xvar 为沿 x 轴显示的表变量,yvar 为沿 y 轴显示的表变量
scatterhistogram(tbl,xvar,yvar,'GroupVariable',grpvar) % 使用 grpvar 指定的表变量对 xvar 和 yvar 指定的观测值进行分组
scatterhistogram(xvalues,yvalues) % 创建 xvalues 和 yvalues 数据的散点图
% 沿 x 轴和 y 轴的边缘分别显示 xvalues 和 yvalues 数据的直方图
scatterhistogram(xvalues,yvalues,'GroupData',grpvalues) % 使用 grpvalues 中的数据对 xvalues 和 yvalues 中的数据进行分组
【实例 1】基于医疗患者数据表创建边缘带直方图的散点图。在编辑器中编写以下程序并运行:
load patients
subplot(2,2,1)
tbl = table(LastName,Age,Gender,Height,Weight);
s = scatterhistogram(tbl,'Height','Weight');
subplot(2,2,2)
tbl = table(LastName,Diastolic,Systolic,Smoker);
s = scatterhistogram(tbl,'Diastolic','Systolic',... % 比较患者
'GroupVariable','Smoker'); % 指定用于对数据分组的表变量
subplot(2,2,[3 4])
[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')
运行程序后,输出如下图所示的图形:
图 1 边缘带直方图的散点图
【实例 2】创建一个具有核密度边缘直方图的散点图。在编辑器中编写以下程序并运行:
load carsmall
tbl = table(Horsepower,MPG,Cylinders);
s = scatterhistogram(tbl,'Horsepower','MPG',...
'GroupVariable','Cylinders',...
'HistogramDisplayStyle','smooth',...
'LineStyle','-');
运行程序后,输出如下图所示的图形:
图 2 具有核密度边缘直方图的散点图
ICP备案:
公安联网备案: