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实现模拟时钟代码推荐
Nov 08 Python
基于Python_脚本CGI、特点、应用、开发环境(详解)
May 23 Python
名片管理系统python版
Jan 11 Python
解决Python pandas df 写入excel 出现的问题
Jul 04 Python
Python 生成 -1~1 之间的随机数矩阵方法
Aug 04 Python
Python代码太长换行的实现
Jul 05 Python
简单了解Python3里的一些新特性
Jul 13 Python
python处理RSTP视频流过程解析
Jan 11 Python
离线状态下在jupyter notebook中使用plotly实例
Apr 24 Python
python实现邮件循环自动发件功能
Sep 11 Python
python3美化表格数据输出结果的实现代码
Apr 14 Python
Python语言内置数据类型
Feb 24 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
使用GDB调试PHP代码,解决PHP代码死循环问题
2015/03/02 PHP
PHP查询并删除数据库多列重复数据的方法(利用数组函数实现)
2016/02/23 PHP
你不知道的文件上传漏洞php代码分析
2016/09/29 PHP
PHP策略模式定义与用法示例
2017/07/27 PHP
刷新页面实现方式总结(HTML,ASP,JS)
2008/11/13 Javascript
菜鸟学习JavaScript小实验之函数引用
2010/11/17 Javascript
深入理解javascript中defer的作用
2013/12/11 Javascript
jquery选择器之层级过滤选择器详解
2014/01/27 Javascript
jquery实现的鼠标拖动排序Li或Table
2014/05/04 Javascript
node.js中的http.request.end方法使用说明
2014/12/10 Javascript
JS实现方向键切换输入框焦点的方法
2015/08/19 Javascript
使用bootstrap实现多窗口和拖动效果
2016/09/22 Javascript
基于Bootstrap的Java开发问题汇总(Spring MVC)
2017/01/15 Javascript
JQueryMiniUI按照时间进行查询的实现方法
2017/06/07 jQuery
简单谈谈原生js的math对象
2017/06/27 Javascript
Node.js如何使用Diffie-Hellman密钥交换算法详解
2017/09/05 Javascript
vue+element实现批量删除功能的示例
2018/02/28 Javascript
JS高级技巧(简洁版)
2018/07/29 Javascript
详解如何解决Vue和vue-template-compiler版本之间的问题
2018/09/17 Javascript
微信小程序 冒泡事件原理解析
2019/09/27 Javascript
微信小程序实现抖音播放效果的实例代码
2020/04/11 Javascript
Vue-router中hash模式与history模式的区别详解
2020/12/15 Vue.js
[35:43]2018DOTA2亚洲邀请赛 4.1 小组赛B组 paiN vs Effect
2018/04/03 DOTA
[40:29]2018DOTA2亚洲邀请赛 4.7总决赛 LGD vs Mineski 第一场
2018/04/10 DOTA
Python中类的定义、继承及使用对象实例详解
2015/04/30 Python
Python中查看文件名和文件路径
2017/03/31 Python
用python的requests第三方模块抓取王者荣耀所有英雄的皮肤实例
2017/12/14 Python
JAVA SWT事件四种写法实例解析
2020/06/05 Python
用python给csv里的数据排序的具体代码
2020/07/17 Python
matplotlib.pyplot.plot()参数使用详解
2020/07/28 Python
利用canvas实现图片压缩的示例代码
2018/07/17 HTML / CSS
美国领先的奢侈手表在线零售商:WatchMaxx
2017/12/17 全球购物
Desigual英国官网:在线购买原创服装
2018/03/09 全球购物
小学四年级学生评语
2014/12/26 职场文书
Python实战之用tkinter库做一个鼠标模拟点击器
2021/04/27 Python
CentOS8.4安装Redis6.2.6的详细过程
2021/11/20 Redis