Python柱状图:对比不同类别数据
告别干瘪报表!用Python画柱状图,让数据对比一眼看透
每次做月度汇报,看着Excel里挤成一团的柱状图,是不是总觉得差点意思?数据明明很精彩,图表却像打翻了的调色盘,老板看一眼就皱眉头。其实,对比不同类别的数据,柱状图依然是永远的神。今天咱们就抛开繁琐的鼠标点击,用Python把柱状图玩出花,让数据对比真正“说话”。
想要让数据站起来,得先请出Python数据可视化的老大哥——Matplotlib。别被代码吓到,核心逻辑就是告诉程序“X轴是谁,Y轴是谁”。
准备两组数据:产品类别和对应的销量。导入matplotlib.pyplot库并设置中文字体,这一步很多新手会卡住,导致图表里的中文变成小方块。接着,使用plt.bar()函数绘制基础柱状图,把类别传给x,销量传给y。跑完这几行,最基础的柱子就立起来了。但这只是毛坯房,离能直接放进PPT还差得远。
职场人看图表,第一眼找的是“谁最高”“谁最低”。如果柱子上光秃秃的,还得自己去估算数值,这就无形中增加了阅读成本。
遍历柱状图容器,使用plt.text()为每个柱子添加具体数值标签。把数值标在柱子正上方,稍微留点边距,视觉上更透气。颜色也是个大坑,默认的单色蓝看着太像学生作业。通过color参数传入自定义色值,比如用低饱和度的莫兰迪色系,或者根据数值大小做渐变,高级感瞬间拉满。另外,使用plt.xticks()调整X轴标签的旋转角度,防止类别名称太长互相打架。
现实业务里,很少只对比单一维度。比如你想看“一季度”和“二季度”不同产品的销量对比。这时候单根柱子就不够用了,得请出分组柱状图。
这里的 tricky 地方在于X轴坐标的计算。如果直接画,两组柱子会重叠在一起。利用numpy的arange生成基础X轴坐标,并通过加减一个固定的偏移量来错开不同组别的柱子位置。画完两组柱子后,重新设置X轴的刻度标签,把标签放在两组柱子的正中间,这样视觉对齐才最舒服。
工具再炫,核心还是业务逻辑。画柱状图不是为了炫技,而是为了降低沟通成本,让看图表的人一秒get到核心差异。下次再遇到需要对比类别数据的场景,不妨放下鼠标,敲几行Python代码。当你看着那些干瘪的数字变成清晰、美观、直击痛点的图表时,你会发现,做数据分析其实也可以很优雅。


还没有评论,来说两句吧...