我可以使用 blitting 删除 matplotlib 艺术家,例如补丁吗?
"""Some background code:"""
from matplotlib.figure import Figure
from matplotlib.backends.backend_wxagg import FigureCanvasWxAgg as FigureCanvas
self.figure = Figure()
self.axes = self.figure.add_subplot(111)
self.canvas = FigureCanvas(self, -1, self.figure)
要使用blit将补丁添加到 matplotlib 图,您可以执行以下操作:
"""square is some matplotlib patch"""
self.axes.add_patch(square)
self.axes.draw_artist(square)
self.canvas.blit(self.axes.bbox)
这行得通。但是,我可以使用blit将同一位艺术家从情节中移除吗?我设法将其删除,并且可以使用该功能square.remove()
更新绘图。self.canvas.draw()
但是当然这很慢,我想改用blitting。
"""square is some matplotlib patch"""
square.remove()
self.canvas.draw()
以下不起作用:
square.remove()
self.canvas.blit(self.axes.bbox)