如何使用Python删除绘图?
我有一些用Python绘制的数据,但现在我想删除这些绘图,而不是图形本身 我有这样的事情:如何使用Python删除绘图?,python,numpy,matplotlib,Python,Numpy,Matplotlib,我有一些用Python绘制的数据,但现在我想删除这些绘图,而不是图形本身 我有这样的事情: import numpy as np import pylab as plt a = np.array([1,2,3,4,5,6,7,8,9,10]) b = np.array([1,2,3,4,5,6,7,8,9,10]) c = plt.plot(a,b,'r.') 为了澄清这一点,我尝试了以下方法: a = np.array([]) b = np.array([]) c = plt.plot(a
import numpy as np
import pylab as plt
a = np.array([1,2,3,4,5,6,7,8,9,10])
b = np.array([1,2,3,4,5,6,7,8,9,10])
c = plt.plot(a,b,'r.')
为了澄清这一点,我尝试了以下方法:
a = np.array([])
b = np.array([])
c = plt.plot(a,b,'r.')
但它不起作用。实现这一点的最佳方法是什么?您可以使用返回的plot对象的方法。这适用于从Artist
继承的任何打印对象
c = plt.plot(a,b,'r.')
for handle in c:
handle.remove()
从这里开始:
plt.cla()清除轴,即当前处于活动状态的轴
当前图形。它使其他轴保持不变
clf()清除整个当前图形及其所有轴,但
使窗口保持打开状态,以便可以将其重新用于其他绘图
plt.close()关闭一个窗口,如果不是,它将是当前窗口
另有规定
此外,如果您喜欢逐行执行,即使您丢失了原始引用,也可以像这样删除它们:
for l in ax.get_lines():
xval = l.get_xdata()[0]
if (xval == my_criteria):
l.remove()
或者简单地说:
for l in ax.get_lines():
l.remove()
同样,您可以通过y值进行相同的索引。要使轴具有与a、b数组相同的值,您可以执行以下操作:
import matplotlib.pyplot as plt
plt.clf() # To clear the figure.
plt.axis([1,10,1,10])
可能存在的副本