当我想在同一个绘图上显示多行时,我可以随意调用pyplot.plot(x,y)
,然后用pyplot.show()
显示绘图。但是,当我定义一个函数来绘制,并且我多次调用该函数,而不是在同一个绘图上有多行,我得到了多个绘图。例如:
import numpy as np
import matplotlib.pyplot as plt
def plotsub(x, y):
plt.plot(x, y)
plt.show()
x = np.arange(0,10,1);
y = x*x
plt.plot(x,y)
plt.plot(x*10,y)
plt.show()
plotsub(x,y)
plotsub(x*10,y)
但是,我希望对plotsub
的两个调用的作用与多次调用plt.plot
的方式相同。在
基本上,我试图获取pyplot的句柄,将其作为参数发送给函数,但我找不到该怎么做。在
{{cd2>你的功能在里面。因此,每次调用
plotsub
,matplotlib就会如预期那样显示绘图。在如果只想在调用
plotsub
之后显示绘图,可以将其移到函数之外:或者,您可以将其保留在函数内,但使其成为可选的,这样您只会在最后一次调用
^{pr2}$plotsub
中显示。比如:最后,要获得对您在函数中绘制的线的引用,可以从函数中
return
,如下所示:相关问题 更多 >
编程相关推荐