我只想删除python包matplotlib中命令“plt.plot(x,y)”绘制的点。你能给我一些特定的命令吗?
x,y=self.forward(x,y,v,target1)
print a
print x,y
plt.plot(x, y, '*')
您无法从一行删除点。你有三个选择:
import matplotlib.pyplot as plt
import numpy as np
x=np.array([1,3,4,6,7])
y=np.array([2,2,2,2,2])
line, = plt.plot(x, y, '*')
#points to keep
ind = [True,True,False,False,True]
line.remove()
newx = x[ind]
newy = y[ind]
line, = plt.plot(newx, newy, '*')
plt.show()
import matplotlib.pyplot as plt
import numpy as np
x=np.array([1,3,4,6,7])
y=np.array([2,2,2,2,2])
line, = plt.plot(x, y, '*')
#points to keep
ind = [True,True,False,False,True]
newx = x[ind]
newy = y[ind]
line.set_data(newx, newy)
plt.show()
import matplotlib.pyplot as plt
import numpy as np
x=np.array([1,3,4,6,7])
y=np.array([2,2,2,2,2])
line, = plt.plot(x, y, '*')
#points to keep
ind = [True,True,False,False,True]
line.set_markevery(ind)
plt.show()
就像欧内斯特说的那样:“你无法从一条线上删除点”。
如果你想为某种动画做这个,请看看animation module
另一个非常不推荐的黑客将是用相当于背景的颜色“涂抹”点。
x_del = x[2]
y_del = y[2]
plt.plot(x_del, y_del, '*', color='white')