Python+matplotlib如何绘制堆叠图
发表于:2025-11-09 作者:千家信息网编辑
千家信息网最后更新 2025年11月09日,这篇文章主要介绍Python+matplotlib如何绘制堆叠图,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!一、水平堆叠图堆叠图其实就是柱状图的一种特殊形式from matp
千家信息网最后更新 2025年11月09日Python+matplotlib如何绘制堆叠图
这篇文章主要介绍Python+matplotlib如何绘制堆叠图,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!
一、水平堆叠图
堆叠图其实就是柱状图的一种特殊形式
from matplotlib import pyplot as plt plt.style.use('seaborn')plt.figure(figsize=(15,9))plt.rcParams.update({'font.family': "Microsoft YaHei"})plt.title("中国票房2021TOP9") plt.bar(cnbodfgbsort.index,cnbodfgbsort.PERSONS)plt.bar(cnbodfgbsort.index,cnbodfgbsort.PRICE)plt.bar(cnbodfgbsort.index,cnbodfgbsort.points)plt.show()堆叠图效果

可以看到有部分蓝色的数据被遮挡了,如果我们想全部展现,可以:
index_x=np.arange(len(cnbodfgbsort.index))index_xw=0.15
from matplotlib import pyplot as plt plt.style.use('classic')plt.figure(figsize=(15,9))plt.rcParams.update({'font.family': "Microsoft YaHei"})plt.title("中国票房2021TOP9")plt.bar(index_x,cnbodfgbsort.PERSONS,width=w)plt.bar(index_x+w,cnbodfgbsort.PRICE,width=w)plt.bar(index_x+2*w,cnbodfgbsort.points,width=w)plt.show()
可以看到Excel的数据源当中BO与PRICE和PERSONS的数字相差过大,如果做堆叠图的话,BO会将其他的都进行覆盖,无法显示好的效果:
因为数据相差实在太大,我们可以直接让BO除以1000:
from matplotlib import pyplot as plt plt.style.use('classic')plt.figure(figsize=(15,9))plt.rcParams.update({'font.family': "Microsoft YaHei"})plt.title("中国票房2021TOP9") plt.bar(cnbodfgbsort.index,cnbodfgbsort.PERSONS)plt.bar(cnbodfgbsort.index,cnbodfgbsort.PRICE)plt.bar(cnbodfgbsort.index,cnbodfgbsort.BO/1000)plt.bar(cnbodfgbsort.index,cnbodfgbsort.points)plt.show()from matplotlib import pyplot as plt plt.style.use('classic')plt.figure(figsize=(15,9))plt.rcParams.update({'font.family': "Microsoft YaHei"})plt.title("中国票房2021TOP9")plt.bar(index_x-w,cnbodfgbsort.BO/1000,width=w) # 直接让BO除以1000plt.bar(index_x,cnbodfgbsort.PERSONS,width=w)plt.bar(index_x+w,cnbodfgbsort.PRICE,width=w)plt.bar(index_x+2*w,cnbodfgbsort.points,width=w)plt.show()二、波浪形堆叠图
labels=['战争','爱情','动画','动作','惊悚','剧情'] colors=['tan','violet','turquoise','tomato','teal','steelblue'] plt.stackplot(cnbodfgbsort.index,cnbodfgbsort.PRICE,cnbodfgbsort.PERSONS,cnbodfgbsort.points,labels=labels,colors=colors)
labels=['战争','爱情','动画','动作','惊悚','剧情'] colors=['tan','violet','turquoise','tomato','teal','steelblue'] plt.stackplot(cnbodfgbsort.index,cnbodfgbsort.PRICE,cnbodfgbsort.BO/900,cnbodfgbsort.PERSONS,cnbodfgbsort.points,labels=labels,colors=colors)
三、加上数据标签
plt.legend()
labels=['票房','票价','人次','评分'] colors=['tan','violet','turquoise','tomato','teal','steelblue'] plt.stackplot(cnbodfgbsort.index,cnbodfgbsort.PRICE,cnbodfgbsort.BO/900,cnbodfgbsort.PERSONS,cnbodfgbsort.points,labels=labels,colors=colors)plt.legend()
以上是"Python+matplotlib如何绘制堆叠图"这篇文章的所有内容,感谢各位的阅读!希望分享的内容对大家有帮助,更多相关知识,欢迎关注行业资讯频道!
票房
数据
中国
惊悚
内容
剧情
动作
动画
战争
效果
爱情
篇文章
特殊
价值
兴趣
小伙
小伙伴
就是
形式
数字
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
联想移动互联软件开发
河北什么是软件开发服务技术规范
元组数据库
青岛李沧软件开发招聘
数据库如何修改列的唯一性
云服务器存储安全性有备份吗
中科大的网络安全专业怎么样
湖北综合软件开发近期价格
poi中国数据库
剑桥科技的工业互联网
网络技术前沿 课程论文
sd卡突然坏了恢复数据库
广州市五叶草互联网科技
上技校学计算机软件开发
网络安全的主要威胁有非授权访问
学软件开发学习
数据库char类型比较大小
游标 数据库
校园网络安全中队活动
海北州网络技术服务
修源网络技术
服务器和计算机是一对一联系吗
做一个数据库需要学哪些东西
中国联通宽带服务器禁用IP
叁稻友互联网科技
全球互联网科技圈大事件
什么是服务器和路由器
安徽干部在线网络安全法
三种网络安全体系架构
数据库 随机抽样