tk.mainloop() 在这个示例中,我们首先创建了一个Tkinter窗口(tk)。然后,我们创建了一个Figure对象(fig),并指定其大小为5x5单位。接下来,我们将Figure对象传递给FigureCanvasTkAgg对象(canvas),并使用draw()方法将其绘制出来。然后,我们使用get_tk_widget()方法获取canvas的Tkinter部件,并将其添加到窗口中。最后,我们...
from tkinter import * from matplotlib.backends.backend_tkagg import (FigureCanvasTkAgg, NavigationToolbar2Tk) import matplotlib.pyplot as plt import time root = Tk() figId = plt.figure() canvas = FigureCanvasTkAgg(figId, master=root) canvas.get_tk_widget().pack() canvas.draw() vals1 = [...
("Matplotlib Canvas Example") # 创建Figure对象并设置尺寸 fig = Figure(figsize=(5, 4), dpi=100) # figsize参数设置宽度和高度(英寸) # 创建Canvas对象 canvas = FigureCanvasTkAgg(fig, master=root) canvas.draw() canvas.get_tk_widget().pack(side=tk.TOP, fill=tk.BOTH, expand=1) # 运行主...
下面就是最重要的tkinter和matplotlib集成部分,matplotlib提供FigureCanvasTkAgg对象,只需三行代码,实现图形绘制在tkinter的Canvas中: canvas_l = FigureCanvasTkAgg(figure_l, frame_l) # 用draw代替 canvas_l.draw() canvas_l.get_tk_widget().pack() 第一行代码实现figure对象(matplotlib对象)与frame对象(tkinter...
canvas_l.draw()canvas_l.get_tk_widget().pack()第一行代码实现figure对象(matplotlib对象)与frame对象(tkinter组件)关系的建立,第二行使用集成后的对象中的draw方法绘图,最后拿到tkinter组件并组装到tkinter中。交互部分,选中Radiobutton中bar选项后,仅显示柱状图;选中pie选项时,仅显示饼状图;当选中both选项后...
self.mplcanvas.get_tk_widget().pack(side='bottom', fill='both') self.mplcanvas._tkcanvas.pack(side='bottom', fill='both', expand=1)#self.mpltoolbar = NavigationToolbar2TkAgg( self.mplcanvas, master ) self.mpltoolbar.update() self.mpltoolbar.pack()###defsay_hi(self):print"hi ...
() # 在Figure对象上创建子图 ax = fig.add_subplot(111) ax.plot([1, 2, 3, 4, 5], [1, 2, 3, 4, 5]) # 创建FigureCanvasTkAgg对象,将Figure对象嵌入到tkinter的canvas中 canvas = FigureCanvasTkAgg(fig, master=root) canvas.draw() # 在tkinter窗口中放置canvas canvas.get_tk_widget()....
canvas1.get_tk_widget().pack(side=tk.LEFT, fill=tk.BOTH, expand=True) canvas2.get_tk_widget().pack(side=tk.LEFT, fill=tk.BOTH, expand=True) 在Figure对象中添加图形: 代码语言:txt 复制 #在figure1中添加图形 ax1 = figure1.add_subplot(111) ax1.plot([1, 2, 3, 4], [1, 4, 9,...
def callback(event): canvas = event.widget x = canvas.canvasx(event.x) y = canvas.canvasy(event.y) print canvas.find_closest(x, y) 画布对象显示的顺序 Canvas 组件中创建的画布对象都会被列入显示列表中,越接近背景的画布对象位于显示列表的越下方。显示列表决定当两个画布对象重叠的时候是如何覆盖...
(5, 5)) fig.set_facecolor("grey") plot1 = fig.add_subplot(111) plot1.scatter(x1, y1) chart1 = FigureCanvasTkAgg(fig, canvas) chart1.get_tk_widget().grid(row=0, column=1) canvas.grid(row=0, column=0) plot_title.grid(row=0, column=0, padx=5, pady=5) canvas.delete('...