200字范文,内容丰富有趣,生活中的好帮手!
200字范文 > python 柱状图折线图共用一个图例_使用python的seaborn绘制折线图与柱状图的组合图...

python 柱状图折线图共用一个图例_使用python的seaborn绘制折线图与柱状图的组合图...

时间:2018-07-15 22:18:55

相关推荐

python 柱状图折线图共用一个图例_使用python的seaborn绘制折线图与柱状图的组合图...

前言

今天入职,小组长给我们布置了数据可视化的作业,让大家浏览一个可视化系统,然后找到三个结论,其实很简单,但是自己又拓展一点。然后需要画一个折线图与柱状图的组合图,下面是我的代码和结果。11

代码#-*-coding:utf-8-*-importseabornassnsimportmatplotlib.pyplotaspltimportnumpyasnpplt.rcParams['font.sans-serif']=['SimHei']#中文字体设置-黑体plt.rcParams['axes.unicode_minus']=False#解决保存图像是负号'-'显示为方块的问题sns.set(font='SimHei',style='white',)#解决Seaborn中文显示问题#取出作图的数据y1=[4088,2451,3896,2921,3116,3189,2697,1380]#发病数y2=[30,15,20,24,20,16,6,4]#死亡数x=[,,,,,,,]#设置图形大小plt.rcParams['figure.figsize']=(12.0,8.0)fig=plt.figure()#画柱形图ax1=fig.add_subplot(111)ax1.set_ylim([0,4500])ax1.bar(x,y1,alpha=0.7,color='k')ax1.set_ylabel(u'发病数',fontsize='20')#ax1.set_xlabel(u'年份',fontsize='20')ax1.tick_params(labelsize=15)fori,(_x,_y)inenumerate(zip(x,y1)):plt.text(_x,_y,y1[i],color='black',fontsize=20,ha='center',va='bottom')#将数值显示在图形上#ax1.set_title(u'-中国疟疾发病数与死亡数',fontsize='20')#画折线图ax2=ax1.twinx()#组合图必须加这个ax2.set_ylim([0,35])ax2.plot(x,y2,'r',ms=10,lw=3,marker='o')#设置线粗细,节点样式ax2.set_ylabel(u'死亡数',fontsize='20')sns.despine(left=True,bottom=True)#删除坐标轴,默认删除右上ax2.tick_params(labelsize=15)forx,yinzip(x,y2):##添加数据标签plt.text(x,y-2.5,str(y),ha='center',va='bottom',fontsize=20,rotation=0)plt.savefig(r'F:\学习文档\0723数据可视化\1.png',dpi=1000,bbox_inches='tight')plt.show()12345678910111213141516171819222324252627282930313233343536373839404142431234567891011121314151617181922232425262728293031323334353637383940414243

结果

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。