统计图的绘制
主要包括条形图、直方图、面积类图形、散点类图形和矢量类图形。
1.条形图
bar函数:绘制二维垂直条形图的函数;
barh函数:绘制水平条形图的函数。
bar(y,style) 其中,参数y是数据,选项style用于指定分组排列模式。Style有两种:“grouped”指簇状分组,默认为该类型。“staked”指分组排列模式。
例:绘制分组条形图。
y=[1,2,3,4,5;1,2,1,2,1;5,4,3,2,1];
subplot(1,2,1);
bar(y);
title('Group');
subplot(1,2,2);
bar(y,'stacked');
title('Stacked');
bar(x,y,style),其中,x存储横坐标,y存储数据。X是向量,y是矩阵,需要满足矩阵的函数与向量的长度一致。
例题:
下表是某公司2015~2017年家电类商品1月份的销售数据,绘制条形图。
x=[2015,2016,2017];
y=[68,80,115,98,102;75,88,102,99,110;81,86,125,105,115];
bar(x,y);
title('Group');
2.直方图
hist函数:绘制直角坐标系下的直方图;
rose函数:绘制极坐标系下的直方图。
hist函数:
hist(y) hist(y,x)
其中,参数y是要统计的数据,x用于指定区间的划分方式。
例题:绘制服从高斯分布的直方图。
y=randn(500,1);
subplot(2,1,1);
hist(y);
title('高斯分布直方图');
subplot(2,1,2);
x=-3:0.2:3;
hist(y,x);
title('指定区间中心点的直方图');
rose函数:
rose(theta,x)
其中,参数theta用于确定每一区间与原点的角度,选项x用于指定区间的划分方式。
y=randn(500,1);
theta=y*pi;
rose(theta);
title('在极坐标下的直方图');
3.面积类图形
扇形图(pie函数)和面积图(area函数)
pie函数:
pie(x,explode)
其中,参数x存储待统计数据,选项explode控制图块的显示模式。
例题:
score=[5,17,23,9,4];
ex=[0,0,0,0,1];
pie(score,ex)
legend('优秀','良好','中等','及格','不及格','location','eastoutside');
4.散点类图形
scatter函数:散点图
stairs函数:阶梯图
stem函数:杆图
scatter函数: scatter( ,选项,’filled’)
参数x、y用于定位数据点,选项用于指定线型、颜色、数据点标记。
例题:以散点图形式绘制桃心曲线,曲线的参数方程如下:
解答:
t=0:pi/50:2*pi;
x=16*sin(t).^3;
y=13*cos(t)-5*cos(2*t)-2*cos(3*t)-cos(4*t);
scatter(x,y,'rd','filled');
5.矢量类图形
compass函数:罗盘图
feather函数:羽毛图
quiver函数:箭头图
quiver函数: quiver (x,y,u,v)
其中,(x,y)指定矢量起点,(u,v)指定矢量终点。
例:已知向量A和B,求A+B,并用矢量图表示。
A=[4,5];B=[-10,0];C=A+B;
hold on
quiver(0,0,A(1),A(2));
quiver(0,0,B(1),B(2));
quiver(0,0,C(1),C(2));
text(A(1),A(2),'A');text(B(1),B(2),'B');text(C(1),C(2),'C');
axis([-12,6,-1,6]);
grid on;