import numpy as np
import matplotlib.pyplot as plt
%pylab inline
def fun (x): #piecewise functions
if x< -1:
return 2*x + 4
elif -1<= x <= 1:
return 2*x**2
elif x>1:
return 2
vfun = np.vectorize(fun)
a=-4 #as provided in question paper
b=5
N=50
x = np.linspace(a, b, N)
pylab.xlim(a, b)
pylab.ylim(vfun(x).min(), vfun(x).max())
axvline(x=-1.,color='k',ls='dashed')
axvline(x=1.,color='k',ls='dashed')
y= vfun(x)
pylab.xlabel('x') #labeling
pylab.ylabel('y')
pylab.title('My First Plot')
plt.plot(x, y, '.') # dotted style of line
plt.show()
如果对间隔进行了更改,如何更新标题。例如,如果我的标题是"f(x) E [-4,5], N=50"
。如果间隔更改为[-2,3]
,如何使标题自动更新
答案 0 :(得分:1)
您可以使用str.format()插入a,b和N的当前值:
pylab.title('f(x) E [{0},{1}], N={2}'.format(a,b,N))
答案 1 :(得分:-1)
这个怎么样?
pylab.title("f(x) E ["+str(a)+","+str(b)+"], N="+str(N))
而不是
pylab.title('My First Plot')