当 DISPLAY 未定义时使用 matplotlib 生成 PNG
问题:
尝试时在没有定义 DISPLAY 环境变量的情况下使用 matplotlib 创建 PNG 图像,您可能会遇到错误,表明matplotlib 找不到合适的后端。
原因:
matplotlib 默认使用基于 X 的后端,这需要有效的 DISPLAY 变量。当 DISPLAY 未定义时,matplotlib 将引发错误。
解决方案:使用 'Agg' 后端
要解决此问题,请强制 matplotlib 使用“Agg”后端,不需要图形显示。这可以通过在任何其他 matplotlib 导入之前添加以下代码来实现:
import matplotlib # Force matplotlib to not use any Xwindows backend. matplotlib.use('Agg')
说明:
Agg 后端是一个非交互式后端,它提供将图形保存为文件而不需要图形显示的方法。通过设置 matplotlib 使用此后端,即使没有有效的 DISPLAY 变量,您也可以生成 PNG 图像。
替代解决方案:
backend : Agg
以上是当 DISPLAY 未定义时如何使用 Matplotlib 生成 PNG 图像?的详细内容。更多信息请关注PHP中文网其他相关文章!