table.div(table.sum(1).astype(float), axis=0).plot(kind='bar', stacked=True) tkinter 绘图
时间: 2024-03-10 10:49:13 浏览: 61
对python中array.sum(axis=?)的用法介绍
这段代码使用了 pandas 库和 matplotlib 库,用于绘制堆叠条形图。
如果要在 tkinter 中绘制堆叠条形图,可以使用 matplotlib 的 FigureCanvasTkAgg 类将图形嵌入到 tkinter 窗口中。
以下是一个简单的例子:
```python
import tkinter as tk
from matplotlib.backends.backend_tkagg import FigureCanvasTkAgg
import matplotlib.pyplot as plt
import pandas as pd
# 创建 tkinter 窗口
root = tk.Tk()
# 创建图形
fig = plt.figure()
ax = fig.add_subplot(111)
# 创建数据
data = pd.DataFrame({'A': [1, 2, 3], 'B': [4, 5, 6], 'C': [7, 8, 9]})
# 绘制条形图
data.plot(kind='bar', stacked=True, ax=ax)
# 将图形嵌入到 tkinter 窗口中
canvas = FigureCanvasTkAgg(fig, master=root)
canvas.draw()
canvas.get_tk_widget().pack()
# 运行 tkinter 窗口
root.mainloop()
```
这样就可以在 tkinter 窗口中显示堆叠条形图了。
阅读全文