MATLAB可以绘制的图(可能不全,请各位小可爱提出,我尽可能完善
~普通二维图 plot
~柱状图
1)、竖柱状图
2)、横柱状图
3)、限定柱子宽度的柱状图
4)、横纵坐标
5)、y是个矩阵,此时每一列堆在一块
6)、条形分段柱状图
7)、指定颜色
8)、使用RGB三元组设置条形内部颜色和轮廓颜色。设置条形轮廓的宽度 9)、通过索引到对象数组来更改特定条形图系列的属性。例如,使用b(2)
~饼状图
1)、X为无份东西中每一份的比例
2)、通过将相应的分解元素设置为1将其突出显示
3)、创建一个向量X的饼图并为切片添加标签。
4)、创建带标签的饼图,然后修改文本标签的颜色和字体大小
5)、创建向量X的饼图,其中元素的和小于1
6)、创建两个数据向量,并在其自己的饼图中绘制和标记每个向量
7)、使用与类别对应的偏移切片绘制分类饼图
8)、将explode指定为空数组,就不会有突出显示
~等高线
1)、已有x、y、z
2)、将峰值函数中得数据存储在矩阵x,y和z中,在z中绘制20个数据等高线
3)、设置x、y、z,通过将ShowText属性设置为on,创建等
4)、创建peaks函数得等高线图,并且在z=1得时候显示一个等高线级别
5)设置矩阵X、Y和Z。通过将ShowText属性
~三维等高线
1)使用meshgrid函数设置矩阵X和Y。绘制矩阵Z的30个等高线
2)contourc函数
3)contourf函数
~箱线图
1)创建一个表示每加仑英里数测量值的箱线图。添加标题并为坐标区加标签
2)为分组数据创建箱线图
3)创建带缺口的箱线图
4)创建紧凑箱线图
5)可变长度向量的箱线图
~奈奎斯特图-频率响应的奈奎斯特图
1)动态系统的奈奎斯特图
2)建立具有响应不确定性的辨识模型的Nyquist图
~伯德图-频率响应或幅度和相位数据的波德图
1)动力系统的博德图
2)在波德指定的绘图频率
3)用指定的线属性绘制Bode图
~阶梯图
1)创建在 0 到区间内的 40 个均匀分布的值处计算的正弦阶梯图
2)绘制多个数据序列
3)在指定的 x 值位置绘制单个数据序列
4)在唯一的 x 值集合处绘制多个数据序列
5)指定其他样式选项
6)为阶梯图指定坐标区
7)创建并修改阶梯图
8)使用绘图函数创建一个阶梯图-plot
~errorbar含误差条的线图
1)绘制长度相等的垂直误差条
2)绘制不同长度的垂直误差条
3)绘制水平误差条
4)绘制垂直和水平误差条
5)绘制不带线条的误差条
6)控制所有方向上的误差条长度
7)向每个数据点添加彩色标记
8)控制误差条端盖大小
9)创建后修改误差条
~area填充区二维绘图
1)创建区域图
2)指定区域图的颜色和线型
3)使用颜色图颜色的区域图
~stackedplot具有公共 x 轴的几个变量的堆叠图
1)绘制时间表变量
2)指定变量
3)重新排列变量
4)使用一个 Y 轴绘制多个变量
matlab可以绘制的图(可能不全,请各位小可爱提出,我尽可能完善)
clc
clear
普通二维图 plot
figure(1)
plot(1:0.01:20,sin(1:0.01:20));
title ('y=sin(x)')
xlabel('x');
ylabel('y');
柱状图
1)、竖柱状图
y=[9,8,3,4];
figure(2)bar(y)
title('竖柱状图')
2)、横柱状图
figure(3)
barh(y)
title('横柱状图')
3)、限定柱子宽度的柱状图
figure(4)
barh(y,0.5)
4)、横纵坐标
figure(5)x = 1900:10:2000;
y = [75 91 105 123.5 131 150 179 203 226 249 281.5];
bar(x,y)
5)、y是个矩阵,此时每一列堆在一块
figure(6)
y = [2 2 3; 2 5 6; 2 8 9; 2 11 12];
bar(y)
6)、条形分段柱状图
figure(7)
y = [2 2 3; 2 5 6; 2 8 9; 2 11 12];
bar(y,'stacked')
7)、指定颜色
figure(8)
y = [75 91 105 123.5 131 150 179 203 226 249 281.5];
bar(y,'r')
8)、使用RGB三元组设置条形内部颜色和轮廓颜色。设置条形轮廓的宽度
figure(9)
y = [75 91 105 123.5 131 150 179 203 226 249 281.5];
bar(y,'FaceColor',[0 .5 .5],'EdgeColor',[0 .9 .9],'LineWidth',4)
9)、通过索引到对象数组来更改特定条形图系列的属性。例如,使用b(2)
更改表示y的第二列的条形图的属性。从R2014b开始,可以使用点表示法来设置属性。如果您使用的是早期版本,请使用设置函数instea
figure(10)
y = [2 4 6; 3 4 5];
subplot(2,1,1)
b = bar(y);subplot(2,1,2)
b = bar(y);
b(2).LineWidth = 2;
b(2).EdgeColor = 'red';
饼状图
1)、X为无份东西中每一份的比例
figure(11)
X = [1 3 0.5 2.5 2];pie(X)
2)、通过将相应的分解元素设置为1将其突出显示
figure(12)
X = [1 3 0.5 2.5 2];
explode = [0 1 0 1 0];
pie(X,explode)
3)、创建一个向量X的饼图并为切片添加标签。
figure(13)
X = 1:3;
labels = {'Taxes','Expenses','Profit'};
pie(X,labels)
4)、创建带标签的饼图,然后修改文本标签的颜色和字体大小
figure(14)
X = 1:3;
labels = {'Taxes','Expenses','Profit'};
p = pie(X,labels)% 此时命令行窗口输出:% p =%% 1×6 graphics 数组:%% Patch Text Patch Text Patch Text
t = p(6);
t.BackgroundColor = 'cyan';
t.EdgeColor = 'red';
t.FontSize = 14;
5)、创建向量X的饼图,其中元素的和小于1
%其实就是不完整的饼状图
figure(15)
X = [0.19 0.22 0.41];
pie(X)
6)、创建两个数据向量,并在其自己的饼图中绘制和标记每个向量
figure(16)
X = [0.2 0.4 0.4];
labels = {'Taxes','Expenses','Profit'};%注意ax的使用,可以省去suplot的框
ax1 = subplot(1,2,1);
pie(ax1,X,labels)
title(ax1,'2012');
Y = [0.24 0.46 0.3];
ax2 = subplot(1,2,2);
pie(ax2,Y,labels)
title(ax2,'2013');
7)、使用与类别对应的偏移切片绘制分类饼图
如果这句话好好说就是:直接给你未统计数据,直接绘图 结果是已经统计好的数据
figure(17)
X = categorical({'North','North','South','North','East','South','West'});
explode = {'North','South'};
pie(X,explode)
8)、将explode指定为空数组,就不会有突出显示
figure(18)
X = categorical({'North','South','North','East','South','West'});
explode = {};
labels = {'E','N','S','W'};
pie(X,explode,labels)
、等高线
1)、已有x、y、z
x = linspace(-2*pi,2*pi);
y = linspace(0,4*pi);
[X,Y] = meshgrid(x,y);
Z = sin(X)+cos(Y);
figure(19)
contour(X,Y,Z)
2)、将峰值函数中得数据存储在矩阵x,y和z中,在z中绘制20个数据等高线
figure(20)
[X,Y,Z] = peaks;
figure
contour(X,Y,Z,20)
3)、设置x、y、z,通过将ShowText属性设置为on,创建等
%高线图并且显示等高线标签
figure(21)
x = -2:0.2:2;
y = -2:0.2:3;
[X,Y] = meshgrid(x,y);
Z = X.*exp(-X.^2-Y.^2);
figure
contour(X,Y,Z,'ShowText','on')
4)、创建peaks函数得等高线图,并且在z=1得时候显示一个等高线级别
x = -3:0.125:3;
y = -3:0.125:3;
[X,Y] = meshgrid(x,y);
Z = peaks(X,Y);
v = [1,1];
figure(22)
contour(X,Y,Z,v)
5)设置矩阵X、Y和Z。通过将ShowText属性
%设置为on,创建等高线图并显示等高线标签x = -2:0.2:2;
y = -2:0.2:3;
[X,Y] = meshgrid(x,y);
Z = X.*exp(-X.^2-Y.^2);
figure(23)
contour(X,Y,Z,'ShowText','on')
三维等高线
1)使用meshgrid函数设置矩阵X和Y。绘制矩阵Z的30个等高线
figure(24)
x = -2:0.25:2;
[X,Y] = meshgrid(x);
Z = X.*exp(-X.^2-Y.^2);
contour3(X,Y,Z,30)
2)contourc函数
figure(25)
C = contourc(Z);%从矩阵Z中的数据计算轮廓矩阵,其中Z必须至少是一个2乘2的矩阵。等高线是以Z为%单位的等值线,自动选择等高线的数目和相应的等值线值。
figure(26)
C = contourc(Z,10)%用n个等高线水平计算Z矩阵的等高线
figure(27)
C = contourc(x,x,Z,9)%使用向量x和y计算Z的轮廓,以确定x和y的值。x和y必须单调递增。
3)contourf函数
figure(28)
Z = peaks(20);
contourf(Z,10)%使用peaks函数将z定义为20×20矩阵。用10条等高线创建z的填充等高线图
箱线图
1)创建一个表示每加仑英里数 (MPG) 测量值的箱线图。添加标题并为坐标区加标签。
导入matlab系统加载样本数据
figure(29)
load carsmall
boxplot(MPG)
xlabel('All Vehicles')
ylabel('Miles per Gallon (MPG)')
title('Miles per Gallon for All Vehicles')%箱线图显示样本数据中所有车辆的平均每加仑英里数约为24英里。最小值约为9,最大值约为44;
2)为分组数据创建箱线图
figure(30)
boxplot(MPG,Origin)
title('Miles per Gallon by Vehicle Origin')
xlabel('Country of Origin')
ylabel('Miles per Gallon (MPG)')%每个框直观地表示来自指定国家的汽车的MPG数据。意大利的“框”显示为单行,因为样本数据仅包含该组的一个观察值
3)创建带缺口的箱线图
%生成两组样本数据。第一个样本 x1 包含从 mu = 5 和 sigma = 1 的正态分布生成的随机数。%第二个样本 x2 包含从 mu = 6 和 sigma = 1 的正态分布生成的随机数。
figure(31)
rng default % For reproducibility
x1 = normrnd(5,1,100,1);
x2 = normrnd(6,1,100,1);%创建 x1 和 x2 的带缺口的箱线图。用对应的 mu 值对每个箱子加标签。
boxplot([x1,x2],'Notch','on','Labels',{'mu = 5','mu = 6'})
title('Compare Random Data from Different Distributions')%箱线图显示两个组的中位数之间的差值约为 1。由于箱线图中的缺口不重叠,可以有 95% 的置信度%认为真实的中位数不同。下图显示了相同数据的箱线图,其中最大须线长度指定为四分位%差的 1.0 倍。须线以外的数据点使用 + 显示。
figure(32)
boxplot([x1,x2],'Notch','on','Labels',{'mu = 5','mu = 6'},'Whisker',1)
title('Compare Random Data from Different Distributions')
4)创建紧凑箱线图
%创建从标准正态分布生成的一个 100×25 随机数矩阵,用作样本数据
rng default % For reproducibility
x = randn(100,25);%在同一图上为 x 中的数据创建两个箱线图。顶部图使用默认格式,底部图使用紧凑格式。
figure(33)
subplot(2,1,1)
boxplot(x)
subplot(2,1,2)
boxplot(x,'PlotStyle','compact')
5)可变长度向量的箱线图
%通过使用分组变量为不同长度的数据向量创建箱线图。%随机生成三个不同长度的列向量:长度分别为 5、10 和 15。%将数据合并为一个长度为 30 的列向量。
rng('default') % For reproducibility
x1 = rand(5,1);
x2 = rand(10,1);
x3 = rand(15,1);
x = [x1; x2; x3];%创建一个分组变量,将同一值赋给 x 中来自于同一向量的行。例如,%g 的前五行具有相同的值 First,因为 x 的前五行都来自同一个向量 x1。
g1 = repmat({'First'},5,1);
g2 = repmat({'Second'},10,1);
g3 = repmat({'Third'},15,1);
g = [g1; g2; g3];%创建箱线图
figure(34)
boxplot(x,g)%%对箱线图也可也像二维图进行设置
奈奎斯特图-频率响应的奈奎斯特图
1)动态系统的奈奎斯特图
%H(s)=分子/分母%分子=2s^2+5s+1%分母=s^2+2s+3
figure(35)
H = tf([2 5 1],[1 2 3]);
nyquist(H)
2)建立具有响应不确定性的辨识模型的Nyquist图
load iddata2 z2;%使用数据确定传递函数模型
sys_p = tfest(z2,2);%获得512个频率组的频率响应实部和虚部的标准偏差,w。
w = linspace(-10*pi,10*pi,512);
[re,im,wout,sdre,sdim] = nyquist(sys_p,w);%这里re和im是频率响应的实部和虚部,sdre和sdim分别是它们的标准差。%wout中的频率与您在w中指定的频率相同。%创建一个显示响应及其3σ不确定度的Nyquist图。
figure(36)
re = squeeze(re);
im = squeeze(im);
sdre = squeeze(sdre);
sdim = squeeze(sdim);
plot(re,im,'b',re+3*sdre,im+3*sdim,'k:',re-3*sdre,im-3*sdim,'k:')
xlabel('Real Axis');
ylabel('Imaginary Axis');
伯德图-频率响应或幅度和相位数据的波德图
1)动力系统的博德图
%创建以下连续时间SISO动态系统的Bode图%H(s)=分子/分母%分子=s^2+0.1s+7.5%分母=s^4+0.12s^3+9s^2
figure(37)
H = tf([1 0.1 7.5],[1 0.12 9 0 0]);
bode(H)
2)在波德指定的绘图频率
%在指定的频率范围内创建波特图。当你想关注特定频率范围内的动力学时,可以使用这种方法。
figure(38)
H = tf([-0.1,-2.4,-181,-1950],[1,3.3,990,2600]);
bode(H,{1,100})
grid on%单元数组{1100}指定Bode图中的最小和最大频率值。以这种方式提供频率边界时,%函数将为频率响应数据选择中间点。
figure(39)%或者,指定用于评估和绘制频率响应的频率点向量。
w = [1 5 10 15 20 23 31 40 44 50 85 100];
bode(H,w,'.-')
grid on
3)用指定的线属性绘制Bode图
%使用LineSpec输入参数为Bode打印中的每个系统指定线型、颜色或标记
figure(40)
H = tf([1 0.1 7.5],[1 0.12 9 0 0]);
Hd = c2d(H,0.5,'zoh');
bode(H,'r',Hd,'b--')%第一行规范“r”为H的响应指定一条实心红线。第二行规范“b--”为Hd的响应指定蓝色虚线
阶梯图
1)创建在 0 到区间内的 40 个均匀分布的值处计算的正弦阶梯图。
X = linspace(0,4*pi,40);
Y = sin(X);
figure(41)
stairs(Y)
2)绘制多个数据序列
%创建在 0 到 4π 区间内的 50 个均匀分布的值处计算的两个余弦函数阶梯图。
X = linspace(0,4*pi,50)';
Y = [0.5*cos(X), 2*cos(X)];
figure(42)
stairs(Y)
3)在指定的 x 值位置绘制单个数据序列
%创建在 0 到 4π 区间内均匀分布的值处计算的正弦波阶梯图。指定该图的 x 值集。
X = linspace(0,4*pi,40);
Y = sin(X);
figure(43)
stairs(X,Y)
4)在唯一的 x 值集合处绘制多个数据序列
%创建一个阶梯图,将线型设置为点划线,将标记符号设置为圆,将颜色设置为红色
X = linspace(0,4*pi,20);
Y = sin(X);
figure(44)
stairs(Y, '-.or')
5)指定其他样式选项
%使用 Name,Value 对组参数创建一个阶梯图并将线宽设置为 2,将标记符号设置为菱形,%并将标记面颜色设置为青色。
X = linspace(0,4*pi,20);
Y = sin(X);
figure(45)
stairs(Y,'LineWidth',2,'Marker','d','MarkerFaceColor','c')
6)为阶梯图指定坐标区
%从 R2019b 开始,您可以使用 tiledlayout 和 nexttile 函数显示分块图。调用 tiledlayout%函数以创建一个 2×1 分块图布局。调用 nexttile 函数以创建坐标区对象 ax1 和 ax2。%通过将坐标区对象指定为 stairs 的第一个参数,在坐标区中创建单独的阶梯图。
figure(46)
x = linspace(0,2*pi);
y1 = 5*sin(x);
y2 = sin(5*x);
tiledlayout(2,1)% Top plot
ax1 = nexttile;
stairs(ax1,x,y1)% Bottom plot
ax2 = nexttile;
stairs(ax2,x,y2)
7)创建并修改阶梯图
%创建两个数据序列的阶梯图并返回两个阶梯图对象。
figure(47)
X = linspace(0,1,30)';
Y = [cos(10*X), exp(X).*sin(10*X)];
h = stairs(X,Y);%对第一个数据序列使用小圆形标记。对第二个序列使用填充品红色的圆形。%使用圆点表示法设置属性。
h(1).Marker = 'o';
h(1).MarkerSize = 4;
h(2).Marker = 'o';
h(2).MarkerFaceColor = 'm';
8)使用绘图函数创建一个阶梯图-plot
%在 0 和 4π 区间内的 50 个均匀分布的值处计算两个余弦函数并使用 plot 创建一个阶梯图
X = linspace(0,4*pi,50)';
Y = [0.5*cos(X), 2*cos(X)];
[xb,yb] = stairs(X,Y);
figure(48)
plot(xb,yb)
errorbar含误差条的线图
1)绘制长度相等的垂直误差条
%创建向量 x 和 y。绘制 y 对 x 的图。在每个数据点处,显示长度相等的垂直误差条
x = 1:10:100;
y = [20 30 45 40 60 65 80 75 95 90];
figure(49)
err = 8*ones(size(y));
errorbar(x,y,err)
2)绘制不同长度的垂直误差条
%在每个数据点处创建带误差条的线图。改变误差条的长度
x = 1:10:100;
y = [20 30 45 40 60 65 80 75 95 90];
err = [5 8 2 9 3 3 8 3 9 3];
figure(50)
errorbar(x,y,err)
3)绘制水平误差条
%在每个数据点处创建带水平误差条的线图。
x = 1:10:100;
y = [20 30 45 40 60 65 80 75 95 90];
err = [1 3 5 3 5 3 6 4 3 3];
figure(51)
errorbar(x,y,err,'horizontal')
4)绘制垂直和水平误差条
%在每个数据点处创建带垂直和水平误差条的线图
figure(52)
x = 1:10:100;
y = [20 30 45 40 60 65 80 75 95 90];
err = [4 3 5 3 5 3 6 4 3 3];
errorbar(x,y,err,'both')
5)绘制不带线条的误差条
%绘制向量 y 对 x 的图。在每个数据点处显示一个圆形标记以及垂直和水平误差条。%通过省略 linespec 输入参数的线型选项,不显示连接数据点的线。
x = 1:10:100;
y = [20 30 45 40 60 65 80 75 95 90];
err = [4 3 5 3 5 3 6 4 3 3];
figure(53)errorbar(x,y,err,'both','o')
6)控制所有方向上的误差条长度
%在每个数据点处显示垂直和水平误差条。使用 yneg 和 ypos 输入参数选项分别控制垂直误差条下部和上部的长度。%使用 xneg 和 xpos 输入参数选项分别控制水平误差条左侧和右侧的长度。
x = 1:10:100;
y = [20 30 45 40 60 65 80 75 95 90];
yneg = [1 3 5 3 5 3 6 4 3 3];
ypos = [2 5 3 5 2 5 2 2 5 5];
xneg = [1 3 5 3 5 3 6 4 3 3];
xpos = [2 5 3 5 2 5 2 2 5 5];
figure(54)
errorbar(x,y,yneg,ypos,xneg,xpos,'o')
7)向每个数据点添加彩色标记
%创建带误差条的线图。在每个数据点处显示标记。使用名称-值对组参数控制标记的外观。使用 MarkerSize 以磅为单位指%定标记大小。使用 MarkerEdgeColor 和 MarkerFaceColor 分别指定标记轮廓和内部颜色。%将颜色设置为颜色名称字符向量(例如 'red')或 RGB 三元组
x = linspace(0,10,15);
y = sin(x/2);
err = 0.3*ones(size(y));
figure(55)
errorbar(x,y,err,'-s','MarkerSize',10,... 'MarkerEdgeColor','red','MarkerFaceColor','red')
8)控制误差条端盖大小
%通过将 CapSize 属性设置为以磅为单位的正值,控制每个误差条末端的端盖大小。
x = linspace(0,2,15);
y = exp(x);
err = 0.3*ones(size(y));figure(56)
errorbar(x,y,err,'CapSize',18)
9)创建后修改误差条
%创建带误差条的线图。将误差条对象赋给变量 e
x = linspace(0,10,10);
y = sin(x/2);
err = 0.3*ones(size(y));
figure(57)
e = errorbar(x,y,err)
e.Marker = '*';
e.MarkerSize = 10;
e.Color = 'red';
e.CapSize = 15;
area填充区二维绘图
1)创建区域图
%默认情况下,area 使用 y 轴作为基值。通过将 basevalue 输入参数设置为 -4 改变基值
Y = [1, 5, 3; 3, 2, 7; 1, 5, 3; 2, 6, 1];
figure(58)
basevalue = -4;
area(Y,basevalue)
2)指定区域图的颜色和线型
%创建 Y 区域图,并使用点线样式。%返回数组 h 中的三个区域对象。area 函数为 Y 中的每列创建一个区域对象。
Y = [1, 5, 3; 3, 2, 7; 1, 5, 3; 2, 6, 1];
figure(59)
h = area(Y,'LineStyle',':');%使用 RGB 三元组颜色值更改区域颜色。使用圆点表示法设置属性
h(1).FaceColor = [0 0.25 0.25];
h(2).FaceColor = [0 0.5 0.5];
h(3).FaceColor = [0 0.75 0.75];
3)使用颜色图颜色的区域图
%通过将 FaceColor 属性设置为 'flat',创建一个使用颜色图颜色的区域图
y = [1 3 5; 3 2 7; 3 4 2];
figure(60)
area(y,'FaceColor','flat')%注意:如果 Y 包含 NaN 值,则 area 函数会在缺失值附近的区域断开绘图。
stackedplot具有公共 x 轴的几个变量的堆叠图
1)绘制时间表变量
%将电子表格中的数据读取到一个表中。然后将该表转换为时间表。包含日期和时间%的第一个变量 OutageTime 提供时间表的行时间。显示前五行。
figure(61)
tbl = readtable('outages.csv');
tbl = table2timetable(tbl);
head(tbl,5);% % ans=5×5 timetable% % OutageTime Region Loss Customers RestorationTime Cause% % ________________ _____________ ______ __________ ________________ ___________________% %% % 2002-02-01 12:18 {'SouthWest'} 458.98 1.8202e+06 2002-02-07 16:50 {'winter storm' }% % 2003-01-23 00:49 {'SouthEast'} 530.14 2.1204e+05 NaT {'winter storm' }% % 2003-02-07 21:15 {'SouthEast'} 289.4 1.4294e+05 2003-02-17 08:14 {'winter storm' }% % 2004-04-06 05:44 {'West' } 434.81 3.4037e+05 2004-04-06 06:10 {'equipment fault'}% % 2002-03-16 06:18 {'MidWest' } 186.44 2.1275e+05 2002-03-18 23:23 {'severe storm' }%对时间表进行排序,使其行时间按顺序排列。时间表的行时间不需要按顺序排列。但是,%如果将行时间用作绘图的 x 轴,则最好确保时间表按行时间排序。
tbl = sortrows(tbl);
head(tbl,5);
stackedplot(tbl)
2)指定变量
%根据患者数据创建一个表。显示前三行。
figure(62)
tbl = readtable('patients.xls');
head(tbl,3);%仅绘制表中的四个变量。
stackedplot(tbl,{'Height','Weight','Systolic','Diastolic'})
3)重新排列变量
%创建一个时间表并显示其前三行
tbl = readtable('outages.csv');
tbl = table2timetable(tbl);
tbl = sortrows(tbl);
head(tbl,3);
figure(63)%通过以与表中的顺序不同的顺序指定变量,对变量重新排序。%例如,RestorationTime 是时间表中可以绘制的最后一个变量。默认情况下,stackedplot%将其放置在绘图的底部。但是,您可以对变量重新排序以将 RestorationTime 放在顶部。
stackedplot(tbl,{'RestorationTime','Loss','Customers'})
4)使用一个 Y 轴绘制多个变量
%使用 Weight、Systolic 和 Diastolic 变量基于患者数据的子集创建一个表
load patients
tbl = table(Weight,Systolic,Diastolic);
head(tbl,3)
figure(64)
vars = {{'Systolic','Diastolic'},'Weight'}
stackedplot(tbl,vars)