不让我用colors或者color,那就直接这样:
plt.figure(dpi=150)
def f_fit(x,y_fit):
a,b,c,d = y_fit.tolist()
return a*x**3 + b*x**2 +c*x + d
def perdict(y_xinyu,colors,shape,degree):
y_fit = np.polyfit(xinyu.贷款年利率,y_xinyu,3) # 3表示3次函数
y_show = np.poly1d(y_fit)
print(y_show)
y = f_fit(xinyu.贷款年利率,y_fit)
plt.plot(xinyu.贷款年利率,y_xinyu,shape,label=f'信誉{degree}')
plt.plot(xinyu.贷款年利率,y,colors,label='拟合线')
colors = ['b','y','r']; shape=['b.','y*','r^']; degree=['A','B','C']
for i in range(len(xinyu.columns)-1):
perdict(xinyu.iloc[:,i+1],colors[i],shape[i],degree[i])
plt.legend()
plt.title('客户流失率与年利率拟合图'); plt.xlabel('年利率'); plt.ylabel('客户流失率')