python 做界面时如何使图片保持透明背景_Python利用matplotlib生成图片背景及图例透明的效果...
前言
最近工作中遇到一个需求,在使用matplotlib生成图片,想要背景透明,而且图例部分也显示透明效果,通过查找相关资料找到了大概的设置方法,特此记录,方便自己或者有需要的朋友们参考学习。
示例代码
# coding=utf-8
# matplotlib背景透明示例图
# python 3.5
import numpy as np
import matplotlib.pyplot as plt
from pylab import mpl
import scipy.stats as stats
# 设置中文字体
mpl.rcParams['font.sans-serif'] = ['SimHei']
def autolabel(rects):
# attach some text labels
for rect in rects:
height = rect.get_height()
# 设置标注文字及位置
ax.text(rect.get_x() + rect.get_width() / 2, 0.03 + height, '%.4f' % height, ha='center', va='bottom')
# 数据
testData = [[0.87, 0.40, 0.56],
[0.97, 0.50, 0.33],
[0.88, 0.30, 0.44],
[0.25, 0.23, 0.17],
[0.73, 0.33, 0.45]]
N = 3
width = 0.5
ind = np.arange(width, width*6*N, width*6)
fig, ax = plt.subplots()
rectsTest1 = ax.bar(ind, (testData[0][0], testData[0][1], testData[0][2]), width, color=(0, 0, 1, 1), edgecolor=(0, 0, 1, 1))
rectsTest2 = ax.bar(ind + width, (testData[1][0], testData[1][1], testData[1][2]), width, color=(1, 0, 0, 1), edgecolor=(1, 0, 0, 1))
rectsTest3 = ax.bar(ind + 2*width, (testData[2][0], testData[2][1], testData[2][2]), width, color=(0, 1, 0, 1), edgecolor=(0, 1, 0, 1))
rectsTest4 = ax.bar(ind + 3*width, (testData[3][0], testData[3][1], testData[3][2]), width, color=(1, 0.6471, 0, 1), edgecolor=(1, 0.6471, 0, 1))
rectsTest5 = ax.bar(ind + 4*width, (testData[4][0], testData[4][1], testData[4][2]), width, color=(0.5804, 0, 0.8275, 1), edgecolor=(0.5804, 0, 0.8275, 1))
ax.set_xlim(0, 9.5)
ax.set_ylim(0, 1.4)
ax.set_ylabel('数值')
ax.yaxis.grid(True)
ax.set_xticks(ind + width * 2.5)
ax.set_xticklabels(('P', 'R', 'F'))
# 设置图例
legend = ax.legend((rectsTest1, rectsTest2, rectsTest3, rectsTest4, rectsTest5), ('test1', 'test2', 'test3', 'test4', 'test5'))
frame = legend.get_frame()
frame.set_alpha(1)
frame.set_facecolor('none') # 设置图例legend背景透明
# 给每个数据矩形标注数值
autolabel(rectsTest1)
autolabel(rectsTest2)
autolabel(rectsTest3)
autolabel(rectsTest4)
autolabel(rectsTest5)
plt.savefig('C:/Users/XX/Desktop/test.png', format='png', bbox_inches='tight', transparent=True, dpi=600) # bbox_inches='tight'
图片边界空白紧致, 背景透明
效果可能在网页上看不出来,但还是把图片贴上来吧。
总结
以上就是这篇文章的全部内容了,希望本文的内容对大家学习或者使用python能带来一定的帮助,如果有疑问大家可以留言交流,谢谢大家对脚本之家的支持。
python 做界面时如何使图片保持透明背景_Python利用matplotlib生成图片背景及图例透明的效果...相关推荐
- python 做界面时如何使图片保持透明背景_Python matplotlib生成图片背景透明的示例代码...
使用matplotlib生成图片,想要背景透明,而且图例部分也显示透明效果,找到了大概的设置方法,特此记录. # coding=utf-8 # matplotlib背景透明示例图 # python 3 ...
- python 做界面时如何使图片保持透明背景_Python matplotlib生成图片背景透明
使用matplotlib生成图片,想要背景透明,而且图例部分也显示透明效果,找到了大概的设置方法,特此记录. # coding=utf-8 # matplotlib背景透明示例图 # python 3 ...
- python 三维图 背景_Python利用matplotlib生成图片背景及图例透明的效果
前言 最近工作中遇到一个需求,在使用matplotlib生成图片,想要背景透明,而且图例部分也显示透明效果,通过查找相关资料找到了大概的设置方法,特此记录,方便自己或者有需要的朋友们参考学习. 示例代 ...
- python绘制散点图、如何选两列作为横坐标_Python利用matplotlib绘制散点图的新手教程...
前言 上篇文章介绍了使用matplotlib绘制折线图,参考:https://www.jb51.net/article/198991.htm,本篇文章继续介绍使用matplotlib绘制散点图. 一. ...
- Pyqt设计界面时无法显示图片问题
** Pyqt设计界面时无法显示图片问题 个人学习中遇到的问题,比较有效的解决方法^ ^ ** 设计好的pyqt界面加入了图片,但是通过pyinstaller 生成exe文件,却不显示出来,主要问题是 ...
- 做网页时如何使格式不随浏览器大小改变而是出现滚动条
Q:做网页时如何使格式不随浏览器大小改变而是出现滚动条? A:网页中的代码指定宽度长度的地方都改成像素,而不是百分比,举例如下: <table name="xxx" widt ...
- 用python将图片写入ppt_用python做ppt服务用于导入图片
项目需要做WINFORM程序与powerpoint交互,把winform生成的图片自动拷贝到ppt中.目前使用python做了一个简单的服务解决.由于要求是32位程序,所以下面全都是32位的版本. 第 ...
- python 美化ppt_用python做ppt服务用于导入图片
项目需要做WINFORM程序与powerpoint交互,把winform生成的图片自动拷贝到ppt中.目前使用python做了一个简单的服务解决.由于要求是32位程序,所以下面全都是32位的版本. 第 ...
- 如何用python做界面_Python+AutoIt实现界面工具开发
原标题:Python+AutoIt实现界面工具开发 前言 不同于Linux服务器上的命令行操作,在windows系统上用户的使用习惯还是倾向于使用有界面的工具.如果工具是命令行交互操作的方式,可能是有 ...
- html怎么把图片当作导航栏,css利用一张背景图制作导航菜单实现思路及代码
今天介绍的这款简单非常简单,利用一张背景图片来实现菜单的悬停状态.我们看下面的图片: 仅这一张图片,我们实现一个横行CSS菜单.并设置它们的悬停效果.我们该如何做呢?看下面的图片: 这是一个示意图.最 ...
最新文章
- 涉密文件检查工具_肇庆高要销毁资料文件公司粉碎销毁文件资料公司欢迎您
- session_unset()和session_destroy()的区别
- 坐标系旋转变换公式图解
- 1.Linux下libevent和memcached安装
- 网站的服务器区域可以造假吗,如何伪造DNS服务器?
- 机器学习第九篇:详解Adaboost算法
- 如何在Firefox 3中重新启用about:config警告消息
- WMI 使用教程_.NET 入门教程
- 谷歌服务器——为什么选择Jetty?
- 人工智能人才缺口巨大,是否要从大学生抓起?
- jsoup爬虫简书首页数据做个小Demo
- 软件测试为什么需要学习Linux的知识?Linux学到什么程度?-log5
- mysql自动更新时间的触发器
- ppt里quicktime不可用_PPT插入音乐、视频的全部疑难问题,一站式帮你解决!
- Node连接MySQL数据库进行基本的增删改查操作(一看就会)
- 覆盖索引与联合索引_MySQL:你知道什么是覆盖索引吗?
- active mq topic消费后删除_天天在用消息队列,却不知道为啥要用 MQ ,这就尴尬了...
- 鸟哥的 linux 的私房菜 基础学习篇,鸟哥的 Linux 私房菜 -- 基础学习篇
- 读取FBX文件踩坑清单
- 【PDF合并】滴滴出行电子发票及行程报销单【一页打印】
热门文章
- 自动化测试介入的时机
- 剑指offer 66题 -- 丑数
- RPi 2B Raspbian system install
- Oracle10g expdp impdp
- GPO备份还原复制及导入
- 使用WUCDCreator将SCSI、RAID、SATA、SAS驱动程序集成到光盘中
- 项目管理九要与八不要
- 【Linux】目录中 / 和 ~ 的区别
- mysql language sql immutable_sql - PostgreSQL是否支持“不区分重音”排序规则?
- python小游戏,植物大战僵尸,免费源代码分享,少儿编程体验项目,项目注释详细,可更改游戏参数,关注私聊“关注即送植物大战僵尸源代码”即可免费获得