统计图的绘制

主要包括条形图直方图面积类图形散点类图形矢量类图形

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');

matlab画出的权重图(MATLAB基础学习之统计图的绘制)(1)

bar(x,y,style),其中,x存储横坐标,y存储数据。X是向量,y是矩阵,需要满足矩阵的函数与向量的长度一致。

例题:

下表是某公司2015~2017年家电类商品1月份的销售数据,绘制条形图。

matlab画出的权重图(MATLAB基础学习之统计图的绘制)(2)

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');

matlab画出的权重图(MATLAB基础学习之统计图的绘制)(3)

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('指定区间中心点的直方图');

matlab画出的权重图(MATLAB基础学习之统计图的绘制)(4)

rose函数:

rose(theta,x)

其中,参数theta用于确定每一区间与原点的角度,选项x用于指定区间的划分方式。

y=randn(500,1);

theta=y*pi;

rose(theta);

title('在极坐标下的直方图');

matlab画出的权重图(MATLAB基础学习之统计图的绘制)(5)

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');

matlab画出的权重图(MATLAB基础学习之统计图的绘制)(6)

4.散点类图形

scatter函数:散点图

stairs函数:阶梯图

stem函数:杆图

scatter函数: scatter( ,选项,’filled’)

参数x、y用于定位数据点,选项用于指定线型、颜色、数据点标记。

例题:以散点图形式绘制桃心曲线,曲线的参数方程如下:

matlab画出的权重图(MATLAB基础学习之统计图的绘制)(7)

解答:

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');

matlab画出的权重图(MATLAB基础学习之统计图的绘制)(8)

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;

matlab画出的权重图(MATLAB基础学习之统计图的绘制)(9)

,