matplotlib示例代码抛出TclError

时间:2014-09-20 16:16:57

标签: python python-2.7 ubuntu matplotlib

每当我尝试使用matplotlib(f.e。this example code)绘制任何内容时,我都会遇到同样的错误:

     jfm@ubuntu$  python test_for_matplotlib.py 
     Traceback (most recent call last):
  File "test_for_matplotlib.py", line 5, in <module>
    fig, ax = plt.subplots()
  File "/usr/lib/pymodules/python2.7/matplotlib/pyplot.py", line 1046, in subplots
    fig = figure(**fig_kw)
  File "/usr/lib/pymodules/python2.7/matplotlib/pyplot.py", line 423, in figure
    **kwargs)
  File "/usr/lib/pymodules/python2.7/matplotlib/backends/backend_tkagg.py", line 79, in new_figure_manager
    return new_figure_manager_given_figure(num, figure)
  File "/usr/lib/pymodules/python2.7/matplotlib/backends/backend_tkagg.py", line 87, in new_figure_manager_given_figure
    window = Tk.Tk()
  File "/usr/lib/python2.7/lib-tk/Tkinter.py", line 1767, in __init__
    self.tk = _tkinter.create(screenName, baseName, className, interactive, wantobjects, useTk, sync, use)
_tkinter.TclError: unknown color name "S_base3"

我试着解决这个问题几个小时了,但我没有找到任何关于互联网的解决方案:(

我刷新了python和matplotlib:

sudo apt-get install python2.7 

sudo apt-get install python-matplotlib

但错误消息保持不变:/

我的设置:我使用Python 2.7在64位Ububtu 14.04 VM上运行pythoncode。

2 个答案:

答案 0 :(得分:1)

我通过设置新VM解决了这个问题。我想旧的设置无法修复。

答案 1 :(得分:0)

您应该在matplotlibrc文件中(在您的家中或/ etc / matplotlibrc中)选择另一个后端。 替换:

backend=TkInter

使用:

backend=Qt4Agg

或另一个后端:http://matplotlib.org/faq/usage_faq.html#what-is-a-backend

如果找不到您的rc文件,请使用locate matplotlibrc