CentOS下matplotlib的安装中图形显示问题
来源:互联网 发布:两小无猜网络剧是bl吗 编辑:程序博客网 时间:2024/06/05 06:08
按照官网(http://matplotlib.org/users/installing.html)的节奏,安装完其他基本扩展后,在选择tcl/tk作为backend后,遇到tcl/tk头文件版本和tcl/tk库版本不一致的问题,如下:
Traceback (most recent call last): File "<stdin>", line 1, in <module> File "/usr/local/lib/python2.6/site-packages/matplotlib/pyplot.py", line 2810, in plot ax = gca() File "/usr/local/lib/python2.6/site-packages/matplotlib/pyplot.py", line 707, in gca ax = gcf().gca(**kwargs) File "/usr/local/lib/python2.6/site-packages/matplotlib/pyplot.py", line 370, in gcf return figure() File "/usr/local/lib/python2.6/site-packages/matplotlib/pyplot.py", line 343, in figure **kwargs) File "/usr/local/lib/python2.6/site-packages/matplotlib/backends/backend_tkagg.py", line 79, in new_figure_manager return new_figure_manager_given_figure(num, figure) File "/usr/local/lib/python2.6/site-packages/matplotlib/backends/backend_tkagg.py", line 87, in new_figure_manager_given_figure window = Tk.Tk() File "/usr/local/lib/python2.6/lib-tk/Tkinter.py", line 1645, in __init__ self._loadtk() File "/usr/local/lib/python2.6/lib-tk/Tkinter.py", line 1665, in _loadtk # % (_tkinter.TCL_VERSION, tcl_version)RuntimeError: tcl.h version (8.6) doesn't match libtcl.a version (8.4)
捣鼓了两天,各种搜索,就是解决不了版本不匹配的问题,最后在某处看到,如下做法就成功解决了,也能show()出图形来:只要把Tkinter.py里面检测头文件和库文件版本的几行代码注销掉就行了. #if tcl_version != _tkinter.TCL_VERSION: # raise RuntimeError, \ # "tcl.h version (%s) doesn't match libtcl.a version (%s)" \ # % (_tkinter.TCL_VERSION, tcl_version)