1
我對Python相當陌生。我寫了下面的代碼,當按下「繪圖」按鈕時,它應該顯示一個嵌入式繪圖。代碼運行沒有任何錯誤;但是我沒有得到任何數字。我應該補充一點,繪圖儀類有意地使用了plot_figure和show_plot兩種方法。畫布圖不顯示
#!/usr/bin/env python
import matplotlib
matplotlib.use('TkAgg')
from matplotlib.backends.backend_tkagg import FigureCanvasTkAgg, NavigationToolbar2TkAgg
from matplotlib.figure import Figure
import sys
if sys.version_info[0] < 3:
import Tkinter as Tk
else:
import tkinter as Tk
root = Tk.Tk()
root.wm_title("Embedding in TK")
class Plotter(object):
def __init__(self):
self.f = Figure()
def plot_figure(self):
self.figarray = self.f.add_subplot(111)
self.figarray.plot((1,2,3,4),(1,2,3,4))
return self.f
def show_plot(self):
self.canvas = FigureCanvasTkAgg(self.f, master=root)
self.canvas.show()
self.canvas.get_tk_widget().pack(side=Tk.TOP, fill=Tk.BOTH, expand=1)
self.toolbar = NavigationToolbar2TkAgg(self.canvas, root)
self.toolbar.update()
self.canvas._tkcanvas.pack(side=Tk.TOP, fill=Tk.BOTH, expand=1)
plot1 = Plotter()
button = Tk.Button(master=root, text='Plot', command=plot1.show_plot)
button.pack(side=Tk.BOTTOM)
Tk.mainloop()
我很感激任何幫助。
你是什麼意思「我沒有數字」?你的意思是你有灰色地帶嗎?因爲這就是我得到的,這只是因爲你永遠不會調用'self.plot_figure',它實際上會創建(子)圖並繪製數據。 – fhdrsdg
傻我,謝謝:) – Sepehr