2015-12-14 3 views
4

При переносе Python 2.7 скрипт на Python 3.5, этот код вылетает в Windows, Anaconda 2.4.1 (64-бит):Embeded Matplotlib Graph в Tkinter падает на Python 3.5

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 Event View предоставляет эту информацию:

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 

Это известная ошибка? Как это исправить?

ответ

4

выясню только переустановкой Matplotlib через пип:

pip uninstall matplotlib 
pip install matplotlib 
Смежные вопросы