python画图窗口保留_保存绘图时更改Matplotlib图形窗口的分辨率?

一个人可以在按键时注册一个事件,该事件将以先前给定的大小和dpi保存图形。下面使用一个存储一些figsize和dpi的类,在按下twll时,将更改图形的大小和dpi。然后它将保存这个图形并恢复旧的大小和dpi,以便屏幕上的图形保持不变。import matplotlib

matplotlib.use("TkAgg")

import matplotlib.pyplot as plt

fig,ax=plt.subplots()

ax.plot([1,3,1])

class AnySizeSaver():

def __init__(self, fig=None, figsize=None, dpi=None, filename=None):

if not fig: fig=plt.gcf()

self.fig = fig

if not figsize: figsize=self.fig.get_size_inches()

self.figsize=figsize

if not dpi: dpi=self.fig.dpi

self.dpi=dpi

if not filename: filename="myplot.png"

self.filename=filename

self.cid = self.fig.canvas.mpl_connect("key_press_event", self.key_press)

def key_press(self, event):

if event.key == "t":

self.save()

def save(self):

oldfigsize = self.fig.get_size_inches()

olddpi=self.fig.dpi

self.fig.set_size_inches(self.figsize)

self.fig.set_dpi(self.dpi)

self.fig.savefig(self.filename, dpi=self.dpi)

self.fig.set_size_inches(oldfigsize, forward=True)

self.fig.set_dpi(olddpi)

self.fig.canvas.draw_idle()

print(fig.get_size_inches())

ass = AnySizeSaver(fig=fig, figsize=(3,3), dpi=600)

plt.show()

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值