我有一个关于matplotlib函数triplot的问题。 我用triplot函数在画布上画了一个网格,我想在一个动作之后清除这个网格。我的画布嵌入了我的空地窗口的一个区域。 下面是我的一段代码:
from matplotlib.figure import Figure
from matplotlib.backends.backend_gtkagg import FigureCanvasGTKAgg as FigureCanvas
fig = Figure()
ax = fig.add_subplot(111)
canvas = FigureCanvas(fig)
place = builder.get_object("vbox_visu")
place.pack_start(canvas)
mesh = ax.triplot(x,y)
canvas.draw()
这很好用,但我现在不知道如何清理我的网。 说明:在背景中,我使用Basemap绘制大陆(和蓝色大理石),我不想清除其他图形。 我希望有人能帮我。 谢谢你
应在v1.4中解决:
https://github.com/matplotlib/matplotlib/pull/2781
通常,matplotlib函数返回它们添加的艺术家。在
不幸的是,}。在
triplot
没有(这可以说是一个bug)注意,在上面的例子中,mesh
是{但是,}。在
triplot
添加了PathPatch
和Line2D
。它们分别附加到ax.patches
和{因此,可以通过执行以下操作移除网格:
这假设
triplot
是最后一个调用的绘图函数。(如果不是,只需在用triplot
绘图后立即执行类似line = ax.lines[-1]
等操作来挂接补丁和线的引用。在相关问题 更多 >
编程相关推荐