matplotlib.pyplot画柱形图,python plt画柱状图
大蟒是一个很有趣的语言,可以在命令行窗口运行,下面这篇文章主要给大家介绍了关于大蟒中如何利用绘制精美的图表画多个并列的柱状图的相关资料,需要的朋友可以参考下
首先如果柱状图中有中文,比如X轴和Y轴标签需要写中文,解决中文无法识别和乱码的情况,加下面这行代码就可以解决了:
PLT。RC params[ font。sans-serif ]=[ sim hei ]#解决中文乱码
以下总共展示了三种画不同需求的柱状图:
画多组两个并列的柱状图:
导入绘制精美的图表
将matplotlib.pyplot作为血小板计数导入
将数组作为铭牌导入
PLT。RC params[ font。sans-serif ]=[ sim hei ]
labels=[G1 , G2 , G3 , G4 , G5]
男人手段=[20,34,30,35,27]
women_means=[25,32,34,20,25]
x=np.arange(len(labels)) #标签位置
宽度=0.35 #条的宽度
fig,ax=plt.subplots()
rects1=ax.bar(x - width/2,men_means,width,label=Men )
rects2=ax.bar(x width/2,women_means,width,label=Women )
#为标签、标题和自定义x轴刻度标签等添加一些文本。
ax.set_ylabel(分数)
ax.set_title(按组和性别划分的分数)
ax.set_xticks(x)
ax.set_xticklabels(标签)
ax.legend()
定义自动标签(矩形):
在*矩形*中的每个条形上方附加一个文本标签,显示其高度。
对于rects:中的矩形
height=rect.get_height()
ax.annotate({} ).格式(高度),
xy=(rect。get _ x()rect。get _ width()/2,height),
xytext=(0,3),# 3点垂直偏移
textcoords=偏移点,
哈=中心,va=底部)
自动标签(矩形1)
自动标签(矩形2)
图。紧密布局()
plt.show()
绘制好的柱状图如下:
画两组5个并列的柱状图:
导入绘制精美的图表
将matplotlib.pyplot作为血小板计数导入
将数组作为铭牌导入
PLT。RC params[ font。sans-serif ]=[ sim hei ]#解决中文乱码
标签=[第一项, 第二项]
a=[4.0,3.8]
b=[26.9,48.1]
c=[55.6,63.0]
d=[59.3,81.5]
e=[89,90]
x=np.arange(len(labels)) #标签位置
宽度=0.1 #柱状图的宽度,可以根据自己的需求和审美来改
fig,ax=plt.subplots()
rects1=ax.bar(x - width*2,a,width,label=a )
rects2=ax.bar(x - width 0.01,b,width,label=b )
rects3=ax.bar(x 0.02,c,width,label=c )
rects4=ax.bar(x width 0.03,d,width,label=d )
rects5=ax.bar(x width*2 0.04,e,width,label=e )
# 为y轴、标题和x轴等添加一些文本。
ax.set_ylabel(Y轴,fontsize=16)
ax.set_xlabel(X轴,fontsize=16)
ax.set_title(这里是标题)
ax.set_xticks(x)
ax.set_xticklabels(标签)
ax.legend()
定义自动标签(矩形):
在*矩形*中的每个柱状条上方附加一个文本标签,显示其高度
对于rects:中的矩形
height=rect.get_height()
ax.annotate({} ).格式(高度),
xy=(rect。get _ x()rect。get _ width()/2,height),
xytext=(0,3),# 3点垂直偏移
textcoords=偏移点,
哈=中心,va=底部)
自动标签(矩形1)
自动标签(矩形2)
自动标签(矩形3)
自动标签(矩形4)
自动标签(矩形5)
图。紧密布局()
plt.show()
绘制好的柱状图如下:
3.要将柱状图的样式画成适合论文中使用的黑白并且带花纹的样式:
将matplotlib.pyplot作为血小板计数导入
将数组作为铭牌导入
PLT。RC params[ font。sans-serif ]=[ sim hei ]#解决中文乱码
标签=[第一项, 第二项]
a=[50,80]
b=[37,69]
c=[78,60]
d=[66,86]
e=[80,95]
# marks=[o , X , , *,O]
x=np.arange(len(labels)) #标签位置
宽度=0.1 #柱状图的宽度
fig,ax=plt.subplots()
rects1=ax.bar(x - width * 2,a,width,label=a ,hatch= . ,color=w ,edgecolor=k )
rects2=ax.bar(x - width 0.01,b,width,label=b ,hatch=oo ,color=w ,edgecolor=k )
rects3=ax.bar(x 0.02,c,width,label=c ,hatch= ,color=w ,edgecolor=k )
rects4=ax.bar(x width 0.03,d,width,label=d ,hatch=XX ,color=w ,edgecolor=k )
rects5=ax.bar(x width * 2 0.04,e,width,label=e ,hatch=** ,color=w ,edgecolor=k )
#为Y轴、标题、X轴等添加一些文本。
ax.set_ylabel(Y ,fontsize=16)
ax.set_xlabel(X ,fontsize=16)
Ax.set_title(标题)
ax.set_xticks(x)
ax.set_xticklabels(标签)
ax.legend()
超过
总结
关于如何用python中的matplotlib绘制多个并行直方图的文章到此结束。关于pythonmatplotlib绘制平行直方图的更多信息,请搜索热门IT软件开发工作室之前的文章或者继续浏览下面的相关文章。希望大家以后多多支持热门的IT软件开发工作室!
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。