RuntimeError: Python is not installed as a framework. The Mac OS X backend will not be able to funct

Posted 小随

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了RuntimeError: Python is not installed as a framework. The Mac OS X backend will not be able to funct相关的知识,希望对你有一定的参考价值。

在virtualenv环境下使用matplotlib绘图时遇到了这样的问题:

>>> import matplotlib.pyplot as plt
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
...

in <module>
from matplotlib.backends import _macosx
RuntimeError: Python is not installed as a framework. The Mac OS X backend will not be able to function correctly if Python is not installed as a framework. See the Python documentation for more information on installing Python as a framework on Mac OS X. Please either reinstall Python as a framework, or try one of the other backends. If you are Working with Matplotlib in a virtual enviroment see ‘Working with Matplotlib in Virtual environments‘ in the Matplotlib FAQ

 

似乎是因为虚拟环境与默认环境的安装配置不同造成的。

搜索错误信息之后,在STO上找到了解决方案:

 

1、pip安装matplotlib之后,会在根目录下产生一个.matplotlib的目录:

? bin ll ~/.matplotlib          

我是通过cd ~/.matplotlib 进入这个文件夹的    cd ~命令是进入home目录    (就是进入home目录下的一个.matplotlib文件夹下)

total 280
-rw-r--r-- 1 me staff 78K 10 4 2015 fontList.cache
-rw-r--r-- 1 me staff 59K 1 17 15:56 fontList.py3k.cache
drwxr-xr-x 2 me staff 68B 10 4 2015 tex.cache

 

2、在这个目录下创建一个名为matplotlibrc的文件,内容是:

backend: TkAgg

然后保存退出,重启Python交互界面或重新运行脚本,import正常执行。











以上是关于RuntimeError: Python is not installed as a framework. The Mac OS X backend will not be able to funct的主要内容,如果未能解决你的问题,请参考以下文章

RuntimeError: Python is not installed as a framework 错误解决方案

[未解决问题记录]python asyncio+aiohttp出现Exception ignored:RuntimeError('Event loop is closed')(代码片段

Python 成功解决报错 asyncio RuntimeError: This event loop is already running

RuntimeError: Python is not installed as a framework. The Mac OS X backend will not be able to funct

RuntimeError: module compiled against API version 0xb but this version of numpy is 0xa

RuntimeError: module compiled against API version 0xa but this version of numpy is 0x9 / ImportError