Python matplotlib生成图片背景透明的示例代码


Posted in Python onAugust 30, 2019

使用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 matplotlib生成图片背景透明的示例代码

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python做文本按行去重的实现方法
Oct 19 Python
Python中文分词工具之结巴分词用法实例总结【经典案例】
Apr 15 Python
Python并发编程协程(Coroutine)之Gevent详解
Dec 27 Python
Python找出微信上删除你好友的人脚本写法
Nov 01 Python
python2.7的flask框架之引用js&css等静态文件的实现方法
Aug 22 Python
scrapy数据存储在mysql数据库的两种方式(同步和异步)
Feb 18 Python
使用Python打造一款间谍程序的流程分析
Feb 21 Python
Python处理PDF与CDF实例
Feb 26 Python
pycharm部署、配置anaconda环境的教程
Mar 24 Python
keras读取h5文件load_weights、load代码操作
Jun 12 Python
opencv+pyQt5实现图片阈值编辑器/寻色块阈值利器
Nov 13 Python
Python软件包安装的三种常见方法
Jul 07 Python
Python 批量刷博客园访问量脚本过程解析
Aug 30 #Python
快速解决docker-py api版本不兼容的问题
Aug 30 #Python
Python 使用 Pillow 模块给图片添加文字水印的方法
Aug 30 #Python
python pillow模块使用方法详解
Aug 30 #Python
docker-py 用Python调用Docker接口的方法
Aug 30 #Python
tesserocr与pytesseract模块的使用方法解析
Aug 30 #Python
Django获取应用下的所有models的例子
Aug 30 #Python
You might like
第一个无线电台是由谁发明的
2021/03/01 无线电
生成php程序的php代码
2008/04/07 PHP
js中将多个语句写成一个语句的两种方法小结
2007/12/08 Javascript
基于jquery的高性能td和input切换并可修改内容实现代码
2011/01/09 Javascript
基于jquery实现状态限定编辑的代码
2012/02/11 Javascript
JavaScript 命名空间 使用介绍
2013/08/29 Javascript
jquery插件jTimer(jquery定时器)使用方法
2013/12/23 Javascript
JQuery 在线引用及测试引用是否成功
2014/06/24 Javascript
Jquery实现由下向上展开效果的例子
2014/12/08 Javascript
JavaScript生成的动态下雨背景效果实现方法
2015/02/25 Javascript
JavaScript实现可拖拽的拖动层Div实例
2015/08/05 Javascript
高性能JavaScript DOM编程(1)
2015/08/11 Javascript
JavaScript实现iframe自动高度调整和不同主域名跨域
2016/02/27 Javascript
angularjs封装bootstrap时间插件datetimepicker
2016/06/20 Javascript
详解Vue 实例中的生命周期钩子
2017/03/21 Javascript
JS简单实现数组去重的方法示例
2017/03/27 Javascript
jQuery插件select2利用ajax高效查询大数据列表(可搜索、可分页)
2017/05/19 jQuery
JS module的导出和导入的实现代码
2019/02/25 Javascript
在Python中处理XML的教程
2015/04/29 Python
Scrapy框架CrawlSpiders的介绍以及使用详解
2017/11/29 Python
Python实现的求解最大公约数算法示例
2018/05/03 Python
Python高级特性切片(Slice)操作详解
2018/09/27 Python
使用pandas把某一列的字符值转换为数字的实例
2019/01/29 Python
Python 占位符的使用方法详解
2019/07/10 Python
TensorFlow实现模型断点训练,checkpoint模型载入方式
2020/05/26 Python
使用HTML5的File实现base64和图片的互转
2013/08/01 HTML / CSS
中国跨镜手机配件批发在线商店:TVC-Mall
2019/08/20 全球购物
小米俄罗斯授权商店:Xiaomi俄罗斯
2019/12/08 全球购物
英国电信商店:BT Shop
2019/12/17 全球购物
VisionPros美国站:加拿大在线隐形眼镜和眼镜零售商
2020/02/11 全球购物
成功的酒店创业计划书
2013/12/27 职场文书
乡镇精神文明建设汇报材料
2014/08/15 职场文书
英语课外活动总结
2014/08/27 职场文书
担保书怎么写 ?
2019/04/22 职场文书
【海涛dota解说】一房久违的影魔魂守二连发
2022/04/01 DOTA
进行数据处理的6个 Python 代码块分享
2022/04/06 Python