如何规范化六边形图?

Pau*_*aul 7 python matplotlib

我在hexbin图中有两个分布,如下所示: 在此输入图像描述

一个分布的最大值约为4000,而另一个分布的最大值约为2500.因此绘图颜色不同.

如果我知道hexbin图的最大值,我想我可以将其标准化.除了查看颜色条之外,我怎么知道最大六边形内有多少个点?我正在使用matplotlib.pyplot.hexbin

pel*_*son 8

您可以获得标准的最小值和最大值,这是用于标准化颜色拾取数据的标准.

hb = plt.hexbin(x, y)
print hb.norm.vmin, hb.norm.vmax
Run Code Online (Sandbox Code Playgroud)

然后,您可以继续将此信息传递给第二个图.这个问题是第一个图的范围必须大于第二个图,否则第二个图将不会全部着色.

或者,最好,您可以构建一个规范,您可以将其传递给两个图的hexbin函数:

norm = plt.normalize(min_v, max_v)
hb1 = plt.hexbin(x1, y1, norm=norm)
hb2 = plt.hexbin(x2, y2, norm=norm)
Run Code Online (Sandbox Code Playgroud)

HTH,