我正在编写一个接口来在MatPlotLib中进行散点图,我希望能够从python脚本中访问数据。
现在,我的界面正在做:
scat = self.axes.scatter(x_data, y_data, label=label, s=size)
使用标准的axis.plot我可以做类似的事情:
line = self.axes.plot(x_data, y_data)
data = line[0].get_data()
这是有效的。我想要的是类似的东西,但散点图。
有人可以提出类似的方法吗?
答案 0 :(得分:2)
使用scatter
绘制PathCollection
图,因此x,y位置称为“偏移”:
import numpy as np
import matplotlib.pyplot as plt
f, ax = plt.subplots()
scat = ax.scatter(np.random.randn(10), np.random.randn(10))
print scat.get_offsets()
[[-0.17477838 -0.47777312]
[-0.97296068 -0.98685982]
[-0.18880346 1.16780445]
[-1.65280361 0.2182109 ]
[ 0.92655599 -1.40315507]
[-0.10468029 0.82269317]
[-0.09516654 -0.80651275]
[ 0.01400393 -1.1474178 ]
[ 1.6800925 0.16243422]
[-1.91496598 -2.12578586]]