gpt4 book ai didi

django - setugid() 在 apache 和 django 中使用 matplotlib 时出错

转载 作者:行者123 更新时间:2023-12-02 08:36:45 33 4
gpt4 key购买 nike

我在 Mac OS X 10.7.5 上通过 apache 提供的 Django 应用程序中使用 matplotlib,但我无法让它为我绘制图形。我已导入 import matplotlib.pyplot as plt 以及我 View 中的行,

plt.plot(x, y)

(xy 是 numpy 数组)导致错误

2013-01-23 16:39:16.731 httpd[381:203] The application with bundle ID (null) is running setugid(), which is not allowed.

在我的 apache error_log 中。恐怕我不知道 setugid() 是什么,或者如何允许我的应用程序运行它。我的 $MPLCONFIGDIR 设置为 /tmp/.mplconfig ,并且 apache 作为用户 _www 已向其中写入了几个空目录,因此似乎工作正常。谁能给我一个线索吗?

更新:如果我

from matplotlib.backends.backend_agg import FigureCanvasAgg as FigureCanvas
from matplotlib.figure import Figure

并设置一个图形、子图和轴(整个堆),我可以 savefig() 而不会出现错误... pyplot 需要什么额外权限?

最佳答案

导入 matplotlib 后使用 agg 后端消除了在 OS X 下运行的 Flask 应用 中的 setugid() 错误服务器位于Sierra

import matplotlib as mpl

mpl.use('agg')

关于django - setugid() 在 apache 和 django 中使用 matplotlib 时出错,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14484962/

33 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com