1. 普通饼图

普通饼图的绘制效果如下:

 

完整代码如下:

# -*- coding:utf-8 -*- # 申明编码格式为utf-8 import matplotlib as mpl import matplotlib.pyplot as plt mpl.rcParams["font.sans-serif"]=["SimHei"] #指定字体为SimHei,用于显示中文 ,如果Ariel,中文会乱码 mpl.rcParams["axes.unicode_minus"]=False #用来正常显示负号 g=["SCI一区","SCI二区","SCI三区","SCI四区","中文核心"] c=["r","b","g","y","c"] t=[1237,2134,3456,2345,1245] #上面定义饼图的各组份项目名称、颜色代码、具体的数值 plt.pie(t,labels=g,autopct="%3.1f%%",startangle=60,colors=c) #autopct="%3.1f%%" 代表三位数,其中一位是小数位。 plt.title("图8 近三年来发表论文的情况统计") plt.show()

 

PS:如有需要Python学习资料的小伙伴可以加下方的群去找免费管理员领取

 

2. 分列式饼图

只需要在“1. 普通饼图”代码的基础上,将第15行代码中增加explode参数。补充代码如下:

#分列式饼图 explode = (0.1,0.1,0.1,0.1,0.1) plt.pie(t,explode=explode,labels=g,autopct="%3.1f%%",startangle=60,colors=c)

 

绘图效果如下:

 

如果将explode参数中只设置某一元素的间隔,其他间隔为0 ,例如:

explode = (0.1,0,0,0,0)

 

则绘出的效果如下:

 

3. 双组饼图

 

代码如下:

# -*- coding:utf-8 -*- # 申明编码格式为utf-8 import matplotlib as mpl import matplotlib.pyplot as plt mpl.rcParams["font.sans-serif"]=["SimHei"] #指定字体为SimHei,用于显示中文,如果Ariel,中文会乱码 mpl.rcParams["axes.unicode_minus"]=False #用来正常显示负号 #数据 elements=["SCI一区","SCI二区","SCI三区","SCI四区","中文核心"] t1=[1237,2134,3456,2345,1245] t2=[120,134,456,845,245] #颜色 outer_colors=["r","b","g","y","c"] inner_colors=["r","b","g","y","c"] wedges1,texts1,autotexts1=plt.pie(t1,autopct="%3.1f%%",radius=1,pctdistance=0.85,colors=outer_colors,textprops=dict(color="w"),wedgeprops=dict(width=0.3,edgecolor="w")) wedges1,texts1,autotexts2=plt.pie(t2,autopct="%3.1f%%",radius=0.7,pctdistance=0.75,colors=inner_colors,textprops=dict(color="w"),wedgeprops=dict(width=0.3,edgecolor="w")) plt.legend(wedges1,elements,fontsize=12,title='论文级别',loc='center left',bbox_to_anchor=(0.91,0,0.3,1)) plt.setp(autotexts1,size=15) plt.setp(autotexts2,size=15) plt.setp(texts1,size=12) plt.title('本校及合作单位发表论文情况') plt.show()

 

本文的文字及图片来源于网络,仅供学习 、交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理 。

作者:谭编

文章来源于网络,如有侵权请联系站长QQ61910465删除
本文版权归趣营销www.SEOgUrublog.com 所有,如有转发请注明来出,竞价开户托管,seo优化请联系QQ卍61910465