我正在使用Linux服务器来设置django项目。我收到此错误:“无法创建/var/www/.matplotlib;请考虑将MPLCONFIGDIR设置为matplotlib配置数据的可写目录”
然后我发现$ MPLCONFIGDIR为空。所以我这样设置:
lab@base:~$ export MPLCONFIGDIR=~/website/graph
lab@base:~$ echo $MPLCONFIGDIR
/home/lab/website/graph
该路径是我要存储Matplotlib创建的图像的目录。
然后,我在python命令行中确保此设置:
>>> import matplotlib
>>> import os
>>> os.environ.get('MPLCONFIGDIR')
'/home/lab/website/graph'
但是,在使用mod_wsgi在Apache中部署的django项目中,上述错误仍然存在。我添加了以下几行:
import os
os.environ['MPLCONFIGDIR'] = "/home/lab/website/graph"
print(os.environ.get('MPLCONFIGDIR'))
它打印“无”!
谁能帮我?
谢谢。
最佳答案
导入matplotlib之前,请在代码中设置MPLCONFIGDIR。确保目录具有权限,以便应用程序可以将其写入。
import os
os.environ['MPLCONFIGDIR'] = "/home/lab/website/graph"
import matplotlib
或者,您可以将其设置为临时文件。
import os
import tempfile
os.environ['MPLCONFIGDIR'] = tempfile.mkdtemp()
import matplotlib