当前位置: 首页 > news >正文

com的域名是指商业网站的域名.关键词代发排名

com的域名是指商业网站的域名.,关键词代发排名,青岛城市建设集团网站,找做模型方案去哪个网站目录 1. 使用plt.savefig保存无边框图形 2. 显示在屏幕上,并且去掉窗口的标题栏和工具栏 3. 通过配置 matplotlib 的 backend 和使用 Tkinter(或其他图形库) 方法 1:使用 TkAgg 后端,并禁用窗口的工具栏和标题栏 …

目录

1. 使用plt.savefig保存无边框图形

2. 显示在屏幕上,并且去掉窗口的标题栏和工具栏

3. 通过配置 matplotlib 的 backend 和使用 Tkinter(或其他图形库)

方法 1:使用 TkAgg 后端,并禁用窗口的工具栏和标题栏

示例代码:

解释:

方法 2:使用 Agg 后端保存图片,不显示工具栏

示例代码:

解释:

方法 3:使用 matplotlib 和 pyautogui 截图窗口区域

示例代码:

解释:

总结:


不知道是不是有人和我一样在苦恼在截取python plt绘制的图像时,不能快速截取图像显示区(因为存在窗口的标题栏和工具栏,所以需要使用截图工具自己选择图像显示区),这样截取的图像,质量和大小不一定满意。

下面就是尝试解决这个问题。

1. 使用plt.savefig保存无边框图形

如果你的目的是生成一个图形并保存为文件,而不是在屏幕上显示,可以使用plt.savefig方法,并设置bbox_inches='tight'参数来去除多余的空白边缘。此外,可以设置pad_inches=0来进一步减少边缘空白。

import matplotlib.pyplot as plt# 创建图形
plt.figure()
plt.plot([1, 2, 3], [4, 5, 6])
plt.title('Example Plot')# 保存图形,去除多余空白
plt.savefig('plot.png', bbox_inches='tight', pad_inches=0)# 清理
plt.close()

效果如下:

2. 显示在屏幕上,并且去掉窗口的标题栏和工具栏

import matplotlib.pyplot as pltdef on_key(event):if event.key == 'escape':  # 如果按下的是ESC键plt.close(fig)  # 关闭图像窗口# 禁用工具栏
plt.rcParams['toolbar'] = 'None'  # 禁用工具栏# 使用 TkAgg 后端,适用于禁用工具栏和标题栏
plt.switch_backend('TkAgg')# 创建图形
fig, ax = plt.subplots()# 设置图形内容
ax.plot([1, 2, 3], [4, 5, 6])
ax.set_title('Example Plot')# 去除标题栏并显示图像
fig.canvas.manager.window.overrideredirect(True)  # 去除窗口的标题栏
fig.canvas.mpl_connect('key_press_event', on_key)
# 保持图形显示 5 秒(可以根据需要调整时间)
# plt.pause(5)  # 这里是保持显示的时间
# 显示图形,直到手动关闭
plt.show(block=True)

在屏幕上显示:

这样很多截图工具(如weixin的alt+a)可以直接识别到整个区域。

在按下exc键的时候关闭图像:

import matplotlib.pyplot as plt# 禁用工具栏
plt.rcParams['toolbar'] = 'None'  # 禁用工具栏# 使用 TkAgg 后端,适用于禁用工具栏和标题栏
plt.switch_backend('TkAgg')# 创建图形
fig, ax = plt.subplots()# 设置图形内容
ax.plot([1, 2, 3], [4, 5, 6])
ax.set_title('Example Plot')# 去除标题栏并显示图像
fig.canvas.manager.window.overrideredirect(True)  # 去除窗口的标题栏
# 定义按键事件回调函数
def on_key(event):if event.key == 'escape':  # 如果按下的是ESC键plt.close(fig)  # 关闭图像窗口# 绑定按键事件
fig.canvas.mpl_connect('key_press_event', on_key)
# 保持图形显示 5 秒(可以根据需要调整时间)
# plt.pause(5)  # 这里是保持显示的时间
# 显示图形,直到手动关闭
plt.show(block=True)

import matplotlib.pyplot as plt# 禁用工具栏
plt.rcParams['toolbar'] = 'None'  # 禁用工具栏# 使用 TkAgg 后端,适用于禁用工具栏和标题栏
plt.switch_backend('TkAgg')# 创建图形
fig, ax = plt.subplots()# 设置图形内容
ax.plot([1, 2, 3], [4, 5, 6])
ax.set_title('Example Plot')# 获取 Tkinter 窗口对象
window = fig.canvas.manager.window# 去除窗口的标题栏
window.overrideredirect(True)# 设置窗口始终保持在最前面
window.attributes('-topmost', 1)  # 设置窗口为最上层# 定义按键事件回调函数
def on_key(event):if event.key == 'escape':  # 如果按下的是ESC键plt.close(fig)  # 关闭图像窗口# 绑定按键事件
fig.canvas.mpl_connect('key_press_event', on_key)# 显示图形
plt.show(block=True)

3. 通过配置 matplotlibbackend 和使用 Tkinter(或其他图形库)

要禁用 matplotlib 图形窗口中的工具栏和窗口标题栏,可以通过配置 matplotlibbackend 和使用 Tkinter(或其他图形库)来进行窗口控制。下面是两种常用的方式,能够帮助你轻松获取需要的图像,避免工具栏和窗口标题栏。

方法 1:使用 TkAgg 后端,并禁用窗口的工具栏和标题栏

matplotlib 中,TkAgg 是一个常用的后端,它允许你通过 Tkinter 控制窗口。你可以创建一个没有标题栏和工具栏的窗口。

示例代码:
import matplotlib.pyplot as plt
from matplotlib.backends.backend_tkagg import FigureCanvasTkAgg
import tkinter as tk# 创建 Tkinter 窗口
root = tk.Tk()# 禁用窗口标题栏
root.overrideredirect(True)  # 取消标题栏# 创建图形
fig, ax = plt.subplots()
ax.plot([1, 2, 3], [4, 5, 6])
ax.set_title('Example Plot')# 将图形嵌入 Tkinter 窗口
canvas = FigureCanvasTkAgg(fig, master=root)
canvas.draw()# 显示图形
canvas.get_tk_widget().pack()# 设置窗口大小
root.geometry("400x300")# 显示窗口
root.mainloop()

解释:

  • root.overrideredirect(True):这行代码会移除窗口的标题栏和工具栏,使得只有绘图区域显示在屏幕上。
  • 该方法只显示图形内容,去除了任何工具栏、标题栏和边框,非常适合截取图像。

方法 2:使用 Agg 后端保存图片,不显示工具栏

如果你的目的是直接保存图像而不是显示窗口,可以使用 Agg 后端来避免打开任何窗口(没有标题栏和工具栏),直接将图形保存为文件。

示例代码:
import matplotlib.pyplot as plt# 切换到Agg后端,这样不会弹出窗口
plt.switch_backend('Agg')# 创建图形
fig, ax = plt.subplots()
ax.plot([1, 2, 3], [4, 5, 6])
ax.set_title('Example Plot')# 保存图形,去除空白
fig.savefig('plot_without_toolbar.png', bbox_inches='tight', pad_inches=0)# 清理
plt.close()

解释:

  • plt.switch_backend('Agg'):切换到 Agg 后端,这种后端不会弹出图形窗口,而是直接将图像保存为文件。这样就没有标题栏、工具栏,也不会弹出任何窗口。
  • fig.savefig('plot_without_toolbar.png', bbox_inches='tight', pad_inches=0):保存图形时,使用 bbox_inches='tight' 去除多余的空白。

方法 3:使用 matplotlibpyautogui 截图窗口区域

如果你不希望关闭窗口,只是想截取窗口内容并去除工具栏和标题栏,可以使用 pyautogui 截取屏幕上的指定区域。你可以通过设置窗口的位置和尺寸,避免工具栏和标题栏的干扰。

示例代码:
import matplotlib.pyplot as plt
import pyautogui
import time# 创建图形
fig, ax = plt.subplots()
ax.plot([1, 2, 3], [4, 5, 6])
ax.set_title('Example Plot')# 显示图形
plt.show(block=False)# 等待图形显示
time.sleep(1)# 获取屏幕截图,排除标题栏和菜单栏
screenshot = pyautogui.screenshot(region=(100, 100, 800, 600))  # 根据实际窗口调整区域# 保存截图
screenshot.save('screenshot_no_toolbar.png')
print("Screenshot saved as 'screenshot_no_toolbar.png'")# 清理
plt.close()

解释:

  • pyautogui.screenshot(region=(x, y, width, height)):这行代码截取了屏幕的指定区域。你需要调整 (x, y, width, height),使其排除标题栏和工具栏,仅截取绘图区域。

总结:

  • 方法 1:使用 TkAgg 后端并禁用窗口标题栏和工具栏,可以让你只显示绘图区域。
  • 方法 2:使用 Agg 后端,直接保存图像而不弹出任何窗口。
  • 方法 3:使用 pyautogui 截取屏幕区域,以避免工具栏和标题栏的干扰。

这些方法可以帮助你轻松获取所需的图像,去除工具栏和标题栏的干扰。

http://www.mmbaike.com/news/51171.html

相关文章:

  • 电脑制作网站的软件玉林网站seo
  • 做网站上加入模块怎么加入百度权重查询网址
  • 重庆电子网站建设免费引流推广怎么做
  • wpautop wordpress南宁seo全网营销
  • 只卖域名的网站指数函数运算法则
  • 织梦儿童早教教育培训网站模板广州谷歌seo
  • 彩票网站做任务赚钱海外市场推广方案
  • 上海高端网站开发黑帽seo
  • 邯郸网站建设的地方福州seo推广外包
  • discuz做资讯网站合适吗什么是搜索引擎优化
  • 做58同城这样的网站atp最新排名
  • 网站多个页面要加引导网上推销产品去什么平台
  • 厦门网站流量优化价格今天最新新闻国内大事件
  • 微信做代理的网站seo网站关键词排名提升
  • 上海哪家做网站关键词排名谷歌海外推广怎么做
  • 电子政务和网站建设自评佛山市seo推广联系方式
  • 西班牙语网站建设关键词搜索指数
  • 做网站较好的公司百度一下马上知道
  • 个人可以做下载类网站吗百度客服人工
  • 网站404页面做晚了佛山seo代理计费
  • 做国外网站的公证要多少钱哪个网站是免费的
  • 成都网站建设 冠辰上海seo外包
  • 网站开发的发展趋势做网络推广费用
  • 做分销网站好吗廊坊网络推广公司
  • 自己做视频网站上传视频谷歌排名算法
  • 网站搭建的注意事项今日热点新闻事件
  • 哪里可以自己免费开网店行者seo无敌
  • 章丘住房建设委员会网站免费网络空间搜索引擎
  • 建材网站免费模板北京seo网络优化招聘网
  • 公司网站建设手续推广公司产品