我正在尝试为可以选择不同回归模式的人提供一个用户界面,并且每种模式都可以编辑自由度。例如,我为回归模型选择多项式回归,而我想对其进行第二次多项式回归。但是真的不知道如何编写这种情况。
这是我在没有GUI时使用Sklearn进行回归的回归方法。
import Tkinter
from matplotlib.backends.backend_tkagg import FigureCanvasTkAgg
from matplotlib.figure import Figure
class App:
def __init__(self, master):
# Create a container
frame = Tkinter.Frame(master)
# Create 2 buttons
self.button_left = Tkinter.Button(frame,text="< Decrease Slope",
command=self.decrease)
self.button_left.pack(side="left")
self.button_right = Tkinter.Button(frame,text="Increase Slope >",
command=self.increase)
self.button_right.pack(side="left")
fig = Figure()
ax = fig.add_subplot(111)
self.line, = ax.plot(range(10))
self.canvas = FigureCanvasTkAgg(fig,master=master)
self.canvas.show()
self.canvas.get_tk_widget().pack(side='top', fill='both', expand=1)
frame.pack()
def decrease(self):
x, y = self.line.get_data()
self.line.set_ydata(y - 0.2 * x)
self.canvas.draw()
def increase(self):
x, y = self.line.get_data()
self.line.set_ydata(y + 0.2 * x)
self.canvas.draw()
root = Tkinter.Tk()
app = App(root)
root.mainloop()
我在Stackflow Interactive plot based on Tkinter and matplotlib上看到了有用的代码之一
Date
但是当我可以选择不同程度的多项式回归时,我陷入了如何在画布中实现回归模块的问题?