Python 如何从hexbin()matplotlib方法的polycollection输出中获取六边形的顶点?

Python 如何从hexbin()matplotlib方法的polycollection输出中获取六边形的顶点?,python,matplotlib,hex,bin,Python,Matplotlib,Hex,Bin,我正在尝试使用matplotlib和python从hexbin()方法绘制六边形的顶点。使用.get_Array()获取每个六边形中的点数,并尝试使用get_paths()获取顶点坐标,但它只提供了1条路径(即仅1个六边形的顶点) 如何检索所有六边形的顶点?下面将使用输出编写试用代码 x, y = np.random.normal(size=(2, 10000)) fig, ax = plt.subplots() im = ax.hexbin(x, y, gridsize=20) paths=i

我正在尝试使用matplotlib和python从hexbin()方法绘制六边形的顶点。使用.get_Array()获取每个六边形中的点数,并尝试使用get_paths()获取顶点坐标,但它只提供了1条路径(即仅1个六边形的顶点)

如何检索所有六边形的顶点?下面将使用输出编写试用代码

x, y = np.random.normal(size=(2, 10000))
fig, ax = plt.subplots()
im = ax.hexbin(x, y, gridsize=20)
paths=im.get_paths()
print(paths)
fig.colorbar(im, ax=ax)

[正在生成的输出映射包含多个hexagon。由于帐户限制,我无法将其上载到此处,因为我是该映射的新手。][2]

 [Path(array([[ 0.18489907, -0.1102285 ],
   [ 0.18489907,  0.1102285 ],
   [ 0.        ,  0.22045701],
   [-0.18489907,  0.1102285 ],
   [-0.18489907, -0.1102285 ],
   [ 0.        , -0.22045701],
   [ 0.18489907, -0.1102285 ]]), array([ 1,  2,  2,  2,  2,  2, 79], dtype=uint8))]

我自己回答这个问题,就像我解决问题和解决问题的方式一样

步骤1:使用im获取样本六边形坐标。按照问题中的上述步骤获取路径()

步骤2:使用im.Get_offset()获取由hexbin()方法创建的所有六边形的偏移量。它为所有六边形提供x和y偏移


步骤3:只需将偏移量添加到步骤1中获得的样本“路径”坐标,这将给出六边形集合的实际坐标。

问题出在哪里?看起来路径对象中有顶点。问题是路径数组只有一个六边形的顶点,但不是所有的。我想要所有的六边形。但是如果没有一个最小但完整的工作示例,我们怎么知道呢?我用完整的代码更新了这个问题。请看一看,让我知道你是否有一个想法?你的最小的例子还应该包括代码,生成一个最小的数据集。除了你没有人有你正在读的文件。