1. from matplotlib import pyplot as plt
    2. import numpy as np
    3. import time
    4. x=np.array([0.1,0.2,0.4,0.8,1.6,3.2])#输入x
    5. y=np.array([102,288,495,1110,2022,4226])#输入y
    6. mean1 = np.mean(x)#计算平均数
    7. mean2 = np.mean(y)
    8. step1 =x- mean1#计算x-平均数
    9. step2 = y-mean2
    10. step3=step1*step2#乘法计算
    11. sum1=np.sum(step3)#加和计算
    12. np1=np.sum(pow(step1,2))
    13. npb=sum1/np1#斜率
    14. print('斜率',npb)
    15. npa = mean2-npb*mean1
    16. print('截距',npa)
    17. y2 = npb*x+npa
    18. x1 = range(len(x))#x
    19. y3 =y-y2#y轴
    20. npr =sum(step1*step2) /(np.sqrt(np.sum(pow(step1,2)))*np.sqrt(np.sum(pow(step2,2))))#r
    21. plt.title('Residual diagram',y=1,loc='left')#做标题Residual diagram,竖向1,横向居左的位置
    22. plt.title(str(npr),y=1,loc='right')#做标题内容为r值,竖向1,横向居右的位置
    23. plt.title('r=',x=0.58,y=1)#做标题r,在横向0.58,竖向1的位置
    24. plt.plot(x1,y3,color='black',marker="o",linewidth = 1)#作图,x轴为x1y轴为y3,颜色黑色,每个点用o标注,线细为1
    25. plt.axhline(y=0,color='r',xmin=0, xmax=1, linestyle ='--',alpha = 0.2,linewidth = 0.5)#增加辅助线在y轴为0的位置,颜色为红色,从0开始至1划线,使用--虚线,透明度0.2,线细0.5
    26. file1 = './'+str(time.time())+'.png'
    27. print(file1)
    28. plt.savefig(file1)#保存图片到同目录下
    29. plt.show()#显示绘图