【问题标题】:How do I normalize a hexbin plot?如何标准化 hexbin 图?
【发布时间】:2012-07-25 08:20:56
【问题描述】:

我在一个 hexbin 图中有两个分布,如图所示:

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

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

【问题讨论】:

  • 您是否尝试过对分布本身进行规范化?
  • 是的,我试过了,效果很好,直到我想把它们加在一起......

标签: python matplotlib


【解决方案1】:

您可以获得用于标准化颜色选择数据的规范的最小值和最大值。

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,

【讨论】:

  • 这帮助我得到了我想要的东西。谢谢。
  • 你知道我是如何将多个归一化图加在一起形成一个大图的吗?
猜你喜欢
  • 2015-06-04
  • 2018-10-20
  • 1970-01-01
  • 2016-01-13
  • 2020-10-09
  • 2012-11-29
  • 2013-05-17
  • 2012-12-05
  • 2017-07-05
相关资源
最近更新 更多