matplotlib.axes.axes.hist2d()
matplotlib.axes.axes.hist2d()函数,使用matplotlib库的Axes模块中的Axes.hist2d()函数绘制2D直方图。
语法:
Axes.hist2d(self, x, y, bins=10, range=None, density=False, weights=None, cmin=None, cmax=None, *, data=None, **kwargs)
参数:该方法接受如下参数说明:
- x, y:这些参数是数据序列。
- bins:可选参数,包含整数、序列或字符串。
- range:可选参数,表示容器的上下范围。
- density:可选参数,包含布尔值。
- weights:该参数是一个可选参数,它是一个权重数组,形状与x相同。
- cmin:该参数表示所有小于cmin的bin都不显示。
- cmax:该参数将不显示所有计数大于cmax的箱子。
返回如下内容:
- h:返回样本x和y的二维直方图。
- xedges :返回沿x轴的bin边。
- yedges:这将返回沿y轴的bin边。
- image:这将返回QuadMesh。
下面的例子演示了matplotlib.axes中的matplotlib.axes.axes.hist2d()函数:
示例1
# Implementation of matplotlib function
from matplotlib import colors
from matplotlib.ticker import PercentFormatter
import numpy as np
import matplotlib.pyplot as plt
N_points = 100000
x = np.random.randn(N_points)
y = .4 * x + np.random.randn(100000) + 5
fig, ax = plt.subplots()
ax.hist2d(x, y, bins = 100,
norm = colors.LogNorm(),
cmap ="Greens")
ax.set_title('matplotlib.axes.Axes.\
hist2d() Example')
plt.show()
输出:
示例2
# Implementation of matplotlib function
from matplotlib import colors
import numpy as np
from numpy.random import multivariate_normal
import matplotlib.pyplot as plt
result = np.vstack([
multivariate_normal([10, 10],
[[3, 2], [2, 3]], size = 100000),
multivariate_normal([30, 20],
[[2, 3], [1, 3]], size = 1000)
])
fig, [axes, axes1] = plt.subplots(nrows = 2,
ncols = 1,
sharex = True)
axes.hist2d(result[:, 0], result[:, 1],
bins = 100, cmap ="GnBu",
norm = colors.LogNorm())
axes1.hist2d(result[:, 0], result[:, 1],
bins = 100, norm = colors.LogNorm())
axes.set_title('matplotlib.axes.Axes.\
hist2d() Example')
plt.show()
输出: