GTP*_*TPE 3 csv numpy matplotlib python-2.7
我有一些代码片段可以读取两个csv并使用matplotlib.pyplot绘制它们并在相同的两个csv上执行多项式回归.我想要做的是在同一图表上绘制数据和我的多项式回归.
import matplotlib.pyplot as plt
import csv
import numpy as np
datax=np.genfromtxt('Delta R.csv')
datay=np.genfromtxt('Example R.csv')
plt.title ('Test graph ')
plt.xlabel('x axis')
plt.ylabel('y axis ')
plt.plot(datax, datay,'o-')
plt.show()
Run Code Online (Sandbox Code Playgroud)
我的第二段代码只执行多项式回归
import matplotlib.pyplot as plt
import csv
import numpy as np
datax=np.genfromtxt('Delta R.csv')
datay=np.genfromtxt('Example R.csv')
z = np.polyfit(datax,datay,5)
print z
Run Code Online (Sandbox Code Playgroud)
任何人都可以帮我在与原始数据相同的图中绘制这个5阶polynomail回归的结果.谢谢GTPE
编辑
tcaswell提供的代码完美无缺.我唯一的问题是为什么多项式在某些地方出现如此棱角分明.这是我的示例图片:
plot
再打电话:
datax=np.genfromtxt('Delta R.csv')
datay=np.genfromtxt('Example R.csv')
z = np.polyfit(datax,datay,5)
p = np.poly1d(z)
plt.title ('Test graph ')
plt.xlabel('x axis')
plt.ylabel('y axis ')
plt.plot(datax, datay,'o-')
plt.plot(datax, p(datax), '-')
datax_os = np.linspace(np.min(datax), np.max(datax), 1024)
plt.plot(datax_os, f(datax_os)) # 'smoother' line
plt.show()
Run Code Online (Sandbox Code Playgroud)
plot
在np.polyfit
文档中可以看到使用多个争论的替代方法.