python 不显示图片 直接保存图片 matplotlib 后端执行指令

在服务器上画图的时候没有 matplotlib的绘图的环境提示“没有显示的环境变量”

no display name and no $DISPLAY environment variable

之后去matplotlib找解决方案,终于知道原因了。matplotlib用pyplot画图的时候用的是一种交互的模式,matplotlib库里本身就包含一些后端,这些后端能够适应不同的编辑器,尽管有点时候画完了不进行show()后者draw()会不显示,但依旧是在交互的默认后端里进行操作的。

然鹅,用服务器想画图的时候,发现居然不支持matplotlib画图,最终在帮助文档中找到的解决方案。用户开可以通过指定“非交互式后端”来实现。

import matplotlib
matplotlib.use('Agg')    #指定后端渲染器

除了‘Agg’以外,matplotlibh还支持其他的后端渲染器的指令

matplotlib渲染器
渲染器支持类型描述
AGGpng栅格图像——agg库
PSps,eps向量图——ps格式
PDFpdf向量图——pdf
SVGsvg向量图——svg
Cairopng, ps, pdf, svg

栅格图像、矢量图——Cairo库

在用的时候发现,各种渲染器支持的类型很宽泛, 常用的格式(jpg,png,tiff...)各种渲染器保存的类型都支持。

此外,matplotlib还支持其他QT5,QT4,GTK,macosx操作,具体可以看帮助文档https://matplotlib.org/Matplotlib.pdf,网页版https://www.matplotlib.org.cn/tutorials/introductory/usage.html#what-is-a-backend

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值