你还没有上传你的数据,所以我将张贴一个玩具的例子,并解释一些事情。在from matplotlib.colors import LogNorm
import matplotlib.pyplot as plt
import numpy as np
np.random.seed(0)
# normal distribution center at x=0 and y=5
x = np.random.randn(100000)
y = np.random.randn(100000) + 5
plt.hist2d(x, y, bins=40, norm=LogNorm())
plt.xlabel('x')
plt.ylabel('y')
cbar = plt.colorbar()
cbar.ax.set_ylabel('Counts')
plt.show()
这里,我创建了两个变量。x有{},而{}有{}。
绘制二维历史时,会看到一个二维直方图。把它想象成从“顶部”看直方图。在
^{pr2}$
现在,您可以看到这个2D直方图中心的颜色是淡黄色的,对应于colorbar的最高值。在
这是合理的。在
你把它们的位置标在x-y平面上,正如你所见,它们是如此密集,相互重叠。您想通过平面中的框数来更好地查看分布,所以您可以尝试使用2D图。在
这正是颜色和colorbar值的含义。如果你有一个一维的经典柱状图,它就是每个箱子的高度/频率/计数
编辑1:使用更少的箱子,就像放大初始绘图。from matplotlib.colors import LogNorm
import matplotlib.pyplot as plt
import numpy as np
np.random.seed(0)
# normal distribution center at x=0 and y=5
x = np.random.randn(100000)
y = np.random.randn(100000) + 5
plt.hist2d(x, y, bins=(5,5), norm=LogNorm())
plt.xlabel('x')
plt.ylabel('y')
cbar = plt.colorbar()
cbar.ax.set_ylabel('Counts')
plt.show()