我在表单中有一个数据集
我有兴趣为Z列中的每个值绘制线性拟合,以便o / p图看起来像这样:
我使用以下代码为整个数据集创建线性拟合:
----- fit = polyfit(p1 [' X],p1 [' Y'],1)
----- fit_fn = poly1d(fit)
----- x =情节(p1 [' X'],p1 [' Y'],' r。',p1 [& #39; X'],fit_fn(p1 [' X']),' - k',linewidth = 2)
但是在绕过Z col时,它会断开。
请建议
答案 0 :(得分:3)
你需要正确地循环遍历Z值组(目前还不清楚你在所展示的代码中是如何做到这一点的),你需要确保所有的图最终都在同一个轴上。
import matplotlib.pyplot as plt
fig, ax = plt.subplots()
for _, group in p1.groupby('Z'):
fit = polyfit(group['X'], group['Y'], 1)
fit_fn = poly1d(fit)
ax.plot(group['X'], group['Y'], 'r.',
group['X'], fit_fn(group['X']), '--k',linewidth=2)