matlab histogram2
时间: 2025-01-17 13:54:34 浏览: 68
### MATLAB 中 `histogram2` 函数的使用
#### 创建二维直方图
`histogram2` 函数用于绘制两个变量之间的双变量分布情况。该函数会自动计算并显示这些数据点如何分布在不同的区间内。
对于简单的调用形式:
```matlab
h = histogram2(X,Y);
```
这将基于输入向量 X 和 Y 自动生成合适的 bin 数目,并展示它们之间关系的热力图表示[^1]。
可以指定特定数量的 bins 或者自定义边界的数组来控制分区方式:
```matlab
% 指定bin的数量
nbins = [nx, ny]; % nx 是X轴上的bins数目;ny是Y轴上
h = histogram2(X, Y, nbins);
% 自定义边界
edges_x = linspace(min(X), max(X), numBinsX + 1);
edges_y = linspace(min(Y), max(Y), numBinsY + 1);
h = histogram2(X, Y, edges_x, edges_y);
```
如果已经知道了具体的 bin 边界以及对应的计数,则可以直接通过如下命令构建图形对象而无需重新统计原始数据:
```matlab
counts = randi([0, 10], length(edges_x)-1, length(edges_y)-1);
h = histogram2('BinEdges', {edges_x, edges_y}, 'BinCounts', counts);
```
还可以设置其他属性来自定义图表外观,比如颜色映射表 (Colormap),透明度(Alpha)等特性都可通过 Name-Value 参数对来进行调整。
最后值得注意的是,在某些情况下可能希望把新绘制成的对象附加到某个已存在的坐标系中去,这时就需要额外提供目标 Axes 的句柄作为第一个参数给 `histogram2()` 函数.
```matlab
ax = gca; % 获取当前Axes句柄
h = histogram2(ax, ... );
```
阅读全文
相关推荐

















