- 积分
- 1104
- 贡献
-
- 精华
- 在线时间
- 小时
- 注册时间
- 2016-9-23
- 最后登录
- 1970-1-1
|
楼主 |
发表于 2023-7-3 08:16:14
|
显示全部楼层
关于python绘图,结题了兄弟们,我都测试过了,有实实在在的实验数据,结论如下:
1. 开头增加或删除matplotlib.use('Agg')对内存堆积和时间都没影响
2. 将plt.figure(), plt.colse()置于循环外比置于循环内,内存堆积更少,但并不影响时间
3. 绘图完毕后,无论是fig.delaxes(), 还是ax.cla, 抑或ax.remove,只要最后加了plt.clf(),内存堆积都一样
但是加上gc.collect()后,内存堆积更少
4. 绘图过程中产生的其他数据变量,如果是由其他函数处理返回的,不必在其他函数中添加清理程序
(理论上,从其他程序返回后,那些变量的作用域消失,自然被删除了)经验证不会造成内存堆积
5.关于plt.close和fig.close效果是否一样,答案是,fig类没有close方法('Figure' object has no attribute 'close')。plt.close源代码里则是默认销毁当前fig( _pylab_helpers.Gcf.destroy(manager))
6.关于降低分辨率,因为涉及到图片各个元素的调整,所以没有测试,结论未知 |
|