问题描述
我试图了解2D直方图的值是什么。
我有2个相同长度X和Y的numpy数组(每个数字都有浮点数)。
例如X的前10个值:[88,193,60,98,78,100,75,76,130]
和Y:[18.,9.,36.1,18.5,34.3,32.9,32.2,22,15。]
我用的时候:
import matplotlib.pyplot as plt
plt.hist2d(X,Y, bins=(10,20))
我得到了一个2D直方图。
但是这是什么意思?
1D直方图只显示我拥有的每件物品的数量。
请解释一下2D中的含义。
提前致谢!
1楼
假设您有一维数组,您在x轴上绘制其值的位置,它们是如此密集以至于无法分辨空间分布,您使用一维直方图来显示沿x轴的方框数量的分布。 问题解决了。
然后你有两个一维数组,一个(x,y)轴的二维点列表。 你在xy平面上绘制它们的位置,它们又如此密集并且相互重叠。 您希望通过平面中的方框数更好地查看分布,因此您可以尝试2D图。 问题解决了。
这是一个例子
import numpy as np
import matplotlib.pyplot as plt
%matplotlib inline
# prepare 2D random dots centered at (0, 0)
n = 100000
x = np.random.randn(n)
y = x + np.random.randn(n)
# plot data
fig1 = plt.figure()
plt.plot(x,y,'.r')
plt.xlabel('x')
plt.ylabel('y')
给
# plot 2D histogram using pcolor
fig2 = plt.figure()
plt.hist2d(x, y, bins=100)
plt.xlabel('x')
plt.ylabel('y')
cbar = plt.colorbar()
cbar.ax.set_ylabel('Counts')
给