簡體   English   中英

在Tkinter中顯示matplotlib條形圖

[英]Displaying a matplotlib bar chart in Tkinter

我試圖在Tkinter窗口中顯示matplotlib條形圖。 我找到了很多關於如何放置折線圖的教程,例如: http//matplotlib.org/examples/user_interfaces/embedding_in_tk.html

但我找不到一個放入條形圖。 我知道制作條形圖的唯一方法是這樣的: http//matplotlib.org/examples/api/barchart_demo.html 顯然,條形圖示例中導入的模塊與Tkinter示例中的模塊不同,如果可以的話,我不知道如何使其工作。

長話短說,任何人都可以向我提供一個在Tkinter窗口內顯示的matplotlib條形圖的示例嗎? 謝謝。

對於任何可能在將來想知道的人,我想出了如何讓它發揮作用。 基本上,您的條形圖必須在圖上,以便FigureCanvasTkAgg可以生成Tkinter要使用的小部件。 我原以為你需要使用pyplot,這不是真的。 這就是我想出的:

import matplotlib, numpy, sys
matplotlib.use('TkAgg')
from matplotlib.backends.backend_tkagg import FigureCanvasTkAgg
from matplotlib.figure import Figure
if sys.version_info[0] < 3:
    import Tkinter as Tk
else:
    import tkinter as Tk

root = Tk.Tk()

f = Figure(figsize=(5,4), dpi=100)
ax = f.add_subplot(111)

data = (20, 35, 30, 35, 27)

ind = numpy.arange(5)  # the x locations for the groups
width = .5

rects1 = ax.bar(ind, data, width)

canvas = FigureCanvasTkAgg(f, master=root)
canvas.show()
canvas.get_tk_widget().pack(side=Tk.TOP, fill=Tk.BOTH, expand=1)

Tk.mainloop()

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM