概述
背景
画图的的时候发现两哥柱子之间的间隔太大,不好看
解决办法
rects1 = plt.bar(x=xx, height=mean1, width=0.6, alpha=0.8,align='edge', color='blue')
这个宽度是由 width 决定的 ,调整width 的大小即可,比如,我这儿的横坐标是range(0,5),所以 width 设置成1那就把地方都占满了,也就是柱子之间没空隙
width 等于0.8的时候
当然,如果你设定的x是 range(0,10,2),那可能要 width =2.0 才是无空隙
我最后设置的是 width 等于0.6,得到一个较好的效果
附加
在这个过程中涉及到重设图窗的大小,主要用到如下代码
params = {
'figure.figsize': '5, 5'
}
plt.rcParams.update(params)
目的是通过等比例放大(缩小)图窗让我的图更好看,更切合,不突兀
完整代码
mean1,mean2,mean3=avgSlove(X,y)
plt.rcParams['font.sans-serif']=['SimHei'] #用来正常显示中文标签
plt.rcParams['axes.unicode_minus']=False #用来正常显示负号
label_list = ['色调', '红色均值', '相对红色分量', '粗度','高频能量'] # 横坐标刻度显示值
print(len(label_list))
xx = range(len(label_list))
'''调整图窗大小'''
params = {
'figure.figsize': '5, 5'
}
plt.rcParams.update(params)
'''调整图窗大小'''
rects1 = plt.bar(x=xx, height=mean1, width=0.6, alpha=0.8,align='edge', color='blue')
plt.ylim(0, 1) # y轴取值范围
plt.ylabel("归一化后的值")
plt.xticks([index + 0.3 for index in xx], label_list) #这儿的0.3是配合宽度0.6来的,是他的一半,目的是让刻度线在柱子的中间
plt.xlabel("特征",labelpad=8.5)
plt.show()
最后
以上就是寒冷香菇为你收集整理的plt 棒状图(柱状图)减小柱子间距的全部内容,希望文章能够帮你解决plt 棒状图(柱状图)减小柱子间距所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复