我想创建一个既具有要绘制的数据又具有将其添加到图中的方法的对象。类似于以下代码的示例试图说明这一点:
from numpy.random import random
import matplotlib.pyplot as plt
class Point(object):
def __init__(self, x, y):
self.x = x
self.y = y
def plot(self, ax):
# update data in the ax if this object data exists in the plot or create it if it doesn't exist yet.
# Create object to exemplify
p = [Point(random(), random()) for pi in range(10000)]
# Create figure and axes
ax, fig = subplot(111)
# update ax with all new points
[pi.plot(ax) for pi in p]
# change one point
p[5].x = 10
p[5].y = 3
# update the changed point in the ax
p[5].plot(ax)
plt.show()
如代码所示,我想在对象外部创建图形,但使用对象更新图形。 由于我可能有很多对象,因此我不需要遍历所有数据或在每次需要时都绘制所有内容。有可能吗?