在使用matplotlib工具栏“保存”按钮保存图形时,有没有办法提高图形的分辨率?在
我试着增加dpi,但当使用工具栏上的save按钮时,似乎没有多大区别。在
这就是我如何将dpi增加到用户指定的值。在
if self.txtDPI.toPlainText() == "":
DPI = 120
else:
DPI = int(self.txtDPI.toPlainText())
self.tempfig.set_dpi(DPI)
我有一个图形在上面的GUI,它下面是matplotlib工具栏,这样他们就可以编辑图表了。当用户点击matplotlib工具栏上的“save”按钮时,我试图让它用设置的dpi保存图形。我以为用用户输入dpi绘制图形会使它用dpi保存图形,但事实并非如此。如果用户将dpi提高到120以上,也会使图表脱离“画布”。在
编辑: 我通过执行以下操作来实现:
将matplotlib作为mpl导入
在mpl.rcParams公司['保存图dpi']=DPI
谢谢你的建议!在
如果您愿意在生成图形之前设置
dpi
,那么我建议您使用setting the rcParams。这可以在matplotlibrc
文件中完成,或者如果您只想增加dpi
的一个脚本,则添加如下内容:另一方面,如果希望在保存地物时能够设置dpi,则需要扩展交互式matplotlib窗口。Here is an example如何单独在matplotlib中完成
编辑:
添加交互性的一个简单方法是使用IPython交互式小部件。下面是一个屏幕截图,说明了这是如何工作的:
每次移动滑块时,它都会用更新后的值
plot
调用plot
,因此图形会重新保存。如果图形特别大且生成速度慢,您可能需要使用interact_manual
。为此,只需安装版本高于3.0的IPython notebook。在相关问题 更多 >
编程相关推荐