Python实现部分地区男人身高/体重数据的线性拟合

# Python实现部分地区男人身高/体重数据的线性拟合
import numpy as np
import matplotlib.pyplot as plt
from scipy import optimize

def f_1(x, A, B):
    return A * x + B

plt.figure()
# 拟合数据点
x0 = [163, 168, 169, 170, 171, 172, 183, 160, 178, 175]
y0 = [63, 71, 80, 75, 72, 78, 83, 65, 72, 77]

# 绘制散点图
plt.scatter(x0[:], y0[:], 30, "Blue")

# 直线拟合与绘制
A1, B1 = optimize.curve_fit(f_1, x0, y0)[0]
x1 = np.arange(160, 190, 0.1) 
y1 = A1 * x1 + B1
plt.plot(x1, y1, "red")
print(A1)
print(B1)
plt.title("部分地区男人身高/体重数据")
plt.xlabel('Height(cm)')

plt.ylabel('weight(kg)')
plt.show()

绘制出如下数据图表

在这里插入图片描述


版权声明:本文为weixin_42829461原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。