将 Matplotlib 图形嵌入 Tkinter 在 Python 3.5 上崩溃

2024-04-13

将 Python 2.7 脚本移植到 Python 3.5 时,此代码在 Windows Anaconda 2.4.1(64 位)中崩溃:

import tkinter as Tk
import matplotlib.pyplot as plt
from matplotlib.backends.backend_tkagg import FigureCanvasTkAgg

root = Tk.Tk()

fig = plt.figure()
canvas = FigureCanvasTkAgg(fig, master=root)
canvas.get_tk_widget().place(relx=0.02, rely=0.14, relheight=0.83, relwidth=0.96)

Tk.mainloop()

根本原因是get_tk_widget().place()方法。 Windows 事件视图提供以下信息:

Faulting application name: python.exe, version: 3.5.1150.1013, time stamp: 0x5665f370
Faulting module name: tcl86t.dll, version: 8.6.2.4, time stamp: 0x55dbf93d
Exception code: 0xc0000005
Fault offset: 0x00000000000165a9
Faulting process id: 0x26a4
Faulting application start time: 0x01d1364cdb6d7ba9
Faulting application path: C:\Anaconda3\python.exe
Faulting module path: C:\Anaconda3\DLLs\tcl86t.dll

这是一个众所周知的错误吗?如何解决这个问题?


我通过 pip 重新安装 matplotlib 来解决:

pip uninstall matplotlib
pip install matplotlib
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

将 Matplotlib 图形嵌入 Tkinter 在 Python 3.5 上崩溃 的相关文章

随机推荐