如何标准化六边形图?
问题内容:
我在hexbin图中有两个分布,如图所示:
一种分布的最大值约为4000,而另一种分布的最大值约为2500。因此,绘制颜色不同。
我以为如果知道hexbin图的最大值,就可以将其标准化。除了查看颜色栏,我如何知道最大六边形内有多少个点?我正在使用matplotlib.pyplot.hexbin
问题答案:
您可以获取规范的最小值和最大值,该规范用于对数据进行标准化以进行颜色选择。
hb = plt.hexbin(x, y)
print hb.norm.vmin, hb.norm.vmax
然后,您可以继续将此信息的范数传递给第二个图。问题在于,第一个图必须比第二个图具有更大的范围,否则第二个图将不会全部被着色。
另外,最好是,您可以构造一个范式,并传递给两个图的hexbin函数:
norm = plt.normalize(min_v, max_v)
hb1 = plt.hexbin(x1, y1, norm=norm)
hb2 = plt.hexbin(x2, y2, norm=norm)
HTH,