【问题标题】:Splitting a graph into squares将图形拆分为正方形
【发布时间】:2020-04-21 05:31:41
【问题描述】:

我在散点图中绘制了 n 个点的图。我想将绘图拆分为 x 长度的正方形网格,然后从我刚刚制作的网格中为图表中的每个点分配一个特定的正方形。我将如何在 Python 中执行此操作?

图表的代码是这样的:

diagram = pos_table.plot.scatter('x', 'y', c = 'purple', s = 2)

导致:

我如何将其分成正方形,然后计算每个正方形中的点数? 谢谢

【问题讨论】:

  • 你不需要一个情节。只需计算输入集合中的点(我想是pos_table),其中 x 和 y 在您喜欢的范围内。
  • 对不起,我不太明白你的意思..
  • 这能回答你的问题吗? Scatterplot Contours In Matplotlib

标签: python matplotlib plot celllist


【解决方案1】:

我相信你正在寻找hist2d,这里有一个可能对你有帮助的sn-p:

import numpy as np
import pandas as pd

np.random.seed(42)
x = np.random.uniform(0,40,size=20)
y = np.random.uniform(0,40,size=20)

pos_table = pd.DataFrame({'x':x, 'y':y})
diagram = pos_table.plot.scatter('x', 'y', c = 'purple', s = 2)
plt.show()

import matplotlib.pyplot as plt
bins = np.arange(0,41,10)
h = plt.hist2d(pos_table.x, pos_table.y, bins=(bins, bins))
plt.colorbar(h[3])

bins 定义示例中的方形网格 (4X4),h[3] 包含有关每个 bin 中包含的点数的信息。

【讨论】:

  • 是的,这就是我需要的,谢谢。但是我没有像你那样生成我的情节。我的情节是从熊猫表生成的。我将如何去做你所做的事情?
  • 据我所知,pandas 还没有包含hist2d 绘图功能,但您仍然可以将它与matplotlib 一起使用。我将编辑我的答案
  • 非常感谢,我能够调整代码!虽然现在右边的栏不见了?
  • 关于pos_table = pd.DataFrame({'x':x, 'y':y})pd指的是什么?
  • 到 pansas 库:import pandas as pd
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2022-11-13
  • 2017-09-09
  • 2013-03-01
  • 2013-12-30
  • 2017-06-13
  • 2013-04-18
相关资源
最近更新 更多