Python利用matplotlib生成图片背景及图例透明的效果

Python利用matplotlib生成图片背景及图例透明的效果,第1张

概述前言最近工作中遇到一个需求,在使用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,1,1),edgecolor=(0,1))  rectsTest2 = ax.bar(ind + wIDth,(testData[1][0],testData[1][1],testData[1][2]),color=(1,edgecolor=(1,1))  rectsTest3 = ax.bar(ind + 2*wIDth,(testData[2][0],testData[2][1],testData[2][2]),1))  rectsTest4 = ax.bar(ind + 3*wIDth,(testData[3][0],testData[3][1],testData[3][2]),0.6471,1))  rectsTest5 = ax.bar(ind + 4*wIDth,(testData[4][0],testData[4][1],testData[4][2]),color=(0.5804,0.8275,edgecolor=(0.5804,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利用matplotlib生成图片背景及图例透明的效果全部内容,希望文章能够帮你解决Python利用matplotlib生成图片背景及图例透明的效果所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/1202263.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-04
下一篇 2022-06-04

发表评论

登录后才能评论

评论列表(0条)

保存