matplotlib---保存图片出现的问题
undefined
1.保存图片为空白
当使用如下代码保存使用 plt.savefig
保存生成的图片时,结果打开生成的图片却是一片空白。
1 2 3 4 5 6 | import matplotlib.pyplot as plt """ 一些画图代码 """ plt.show() plt.savefig( "filename.png" ) |
原因:在 plt.show()
后调用了 plt.savefig()
,在 plt.show()
后实际上已经创建了一个新的空白的图片(坐标轴),这时候你再 plt.savefig()
就会保存这个新生成的空白图片。
方法一:在 plt.show()
之前调用 plt.savefig()
;
1 2 3 4 5 6 | import matplotlib.pyplot as plt """ 一些画图代码 """ plt.savefig( "filename.png" ) plt.show() |
方法二:画图的时候获取当前图像(这一点非常类似于 Matlab 的句柄的概念):
1 2 3 4 | # gcf: Get Current Figure fig = plt.gcf() plt.show() fig1.savefig( 'tessstttyyy.png' , dpi = 100 ) |
2.matplotlib画的图保存为emf格式
在用matplotlib保存图片时,发现不能直接保存为emf格式。百度有人说要先另存为svg格式,再使用INKSCAPE软件转换成emf格式。我试了一下,发现还是不行,后来,发现先用matplotlib存为svg格式,再用visio另存为emf是可以的。
matplotlib支持的图片存储格式:eps, jpeg, jpg, pdf, pgf, png, ps, raw, rgba, svg, svgz, tif, tiff
1 | plt.savefig( 'loc_svg.svg' ,dpi = 600 ) #指定分辨率保存 |
参考文献:
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 使用C#创建一个MCP客户端
· ollama系列1:轻松3步本地部署deepseek,普通电脑可用
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· 按钮权限的设计及实现