Matplotlib导入matplotlib.pyplot时出现TypeError错误

6
我刚刚使用conda更新了我的Anaconda安装程序,Matplotlib从v1.4.0升级到了v1.4.2。然而,现在所有使用Matplotlib.pyplot的Python作业都会抛出异常。
甚至简单的命令:
import matplotlib.pyplot as plt

抛出一个TypeError异常,错误信息如下:

无法从Unicode对象返回std::string

回溯信息告诉我该异常发生在font_manager.py文件中的这里:

try:
    font = ft2font.FT2Font(fpath)
except RuntimeError:
    verbose.report("Could not open font file %s" % fpath)
    continue
except UnicodeError:
    verbose.report("Cannot handle unicode filenames")
    continue

具体在font = ft2font.FT2Font(fpath)这一行出现了问题。

我尝试回到Matplotlib的v1.4.0版本,但它并没有解决问题。

然后我编辑了font_manager.py文件,添加了一个通用异常情况:

except:
    verbose.report("Some stupid error occurred")
    continue

希望通过这种方式暂时解决问题,它确实起到了作用,但之后出现了类似的错误。然后我删除了异常,但错误仍然在代码的后面发生(所以如果我运行import matplotlib.pyplot as plt,它可以工作,但执行其他命令可能会失败)。
我使用Matplotlib在一天中生成/更新数百个图表,现在一切都崩溃了。
请帮帮我!谢谢!

我在使用conda将matplotlib从1.3.x更新到1.4.2后,遇到了完全相同的问题。 - alberto
这里也遇到同样的问题...你最终找到解决方案了吗? - pbreach
我最终卸载并重新安装了Anaconda(真是让人头疼!)。但现在我可以导入matplotlib(v1.4.0)并继续我的工作了。 - pbreach
1
我进去编辑了Matplotlib代码,解决了问题。然后当我再次导入Matplotlib时,它就能够通过那个点了,现在会抛出一些关于某些字体缺失的警告,但是它可以工作。绝对不是理想的解决方案!我认为正确的解决方案是卸载并重新安装Anaconda的最新版本,正如@pbreach所建议的那样。 - Adrian Mc
1个回答

1
似乎卸载Anaconda并重新安装新版本可以解决问题,正如@pbreach所提到的,因此关闭此问题。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接