MATLAB hist()函数:绘制条形直方图(附带实例)
条形直方图中的 x 轴反映了数据中元素数值的范围,直方图的 y 轴显示参量中的元素落入该组的数目。所有向量中的元素或矩阵列向量中的元素都是根据它们的数值范围来分组的,每一组作为一个条形进行显示。
在 MATLAB 中,利用 hist() 函数绘制条形直方图,可以显示出数据的分布情况。
hist() 函数的调用格式如下:
【实例】绘制条形直方图示例。在编辑器窗口中编写 M 文件并命名为 ex5_25.m。

图 1 条形直方图
在 MATLAB 中,利用 hist() 函数绘制条形直方图,可以显示出数据的分布情况。
hist() 函数的调用格式如下:
- n=hist(y):把向量 y 中的元素放入等距的 10 个条形中,且返回每个条形中元素的个数。若 y 为矩阵,则该命令按列对 y 进行处理。
- n=hist(y,x):参量 x 为向量,把 y 中的元素放到 m[m=length(x)] 个以 x 中元素指定的位置为中心的条形中。
- n=hist(y,nbins):参量 nbins 为标量,用于指定条形的数目。
- [n,xout]=hist(...):返回向量 n 与包含频率计数和条形位置的向量 xout,用户可以用命令 bar(xout,n)画出条形直方图。
- hist(...):生成直方图,但不产生输出。
- hist(axes_handle,...):将图形绘制到坐标轴句柄 axes_handle 中,而不是当前坐标轴句柄中。
【实例】绘制条形直方图示例。在编辑器窗口中编写 M 文件并命名为 ex5_25.m。
clear all x = -4:0.1:4; y = randn(5000,1); hist(y,x) %绘制条形直方图运行程序,条形直方图如下图所示:

图 1 条形直方图