当前位置: 首页 > news >正文

如何绘制带有误差线的堆叠柱状图

如何绘制带有误差线的堆叠柱状图

工作或学习中,总要绘制一些看起来高大上的图形,如论文中经常出现带有误差线的堆叠柱状图,本文简单介绍下绘制方法。

代码实现

导入相关库

# -*- coding: UTF-8 -*-
# 导入相关库
import matplotlib.pyplot as plt
import numpy as np

定义图例颜色等信息

定义绘图所需要的详细信息:

# 创建图形和轴对象
fig, ax = plt.subplots(figsize=(10, 8))# 绘制柱状图,设置不同的底部空白和颜色
bars = []
for i, category in enumerate(categories):bar = ax.bar(i, warming_rates[i], bottom=bottom_values[i], color=colors[i], edgecolor='black', capsize=5)bars.append(bar)# 在纵轴3的位置添加一条横虚线
ax.axhline(y=0.2, color='k', linestyle='--')# 计算每个柱子的中间位置并绘制横线
for bar, bottom in zip(bars, bottom_values):middle_y = bar[0].get_height() / 2 + bottomx_start = bar[0].get_x()x_end = bar[0].get_x() + bar[0].get_width()ax.plot([x_start, x_end], [middle_y, middle_y], color='black', linewidth=1, linestyle='-')# 设置y轴标签
ax.set_ylabel('Warming rate (W m$^{-2}$)')
# 设置y轴的范围,确保底部空白可见
ax.set_ylim(bottom=0)
# 添加数据标签
for bar, bottom in zip(bars, bottom_values):height = bar[0].get_height()ax.annotate(f'{height:.2f}',xy=(bar[0].get_x() + bar[0].get_width() / 2, height + bottom),xytext=(0, 3),  # 3 points vertical offsettextcoords="offset points",ha='center', va='bottom')# 设置x轴的刻度和标签
ax.set_xticks(np.arange(len(categories)))  # 设置刻度的位置
ax.set_xticklabels(categories)  # 设置刻度的标签

结果展示

如下,根据自定义的数据绘制的堆叠柱状图。由于篇幅有限,只展示了部分代码,完整代码可以回复关键词获取。

推荐阅读
  • 【可视化】用pyecharts绘制我国人口分布
  • 【爬虫】软科2024中国大学榜爬取
  • 【可视化】绘制中国标准行政区划地图(2024版)

欢迎关注我的公众号“AI拾贝”,原创技术文章第一时间推送。后台发送chart3,自动回复源码和数据。


http://www.mrgr.cn/news/64147.html

相关文章:

  • VBA字典与数组第二十讲:如何在代码运行时创建数组
  • Global Season of AI - 渐入佳境的生成式 AI
  • Ubantu/Linux 采用Repo或Git命令报错!!
  • 机器人大模型GR2——在大规模视频数据集上预训练且机器人数据上微调,随后预测动作轨迹和视频(含GR1详解)
  • Java项目实战II基于Java+Spring Boot+MySQL的植物健康系统(开发文档+数据库+源码)
  • 无法启动此程序win10玩游戏找不到d3dx9_43.dll缺失的五种常用有效解决方法
  • 【C语言】文件操作
  • 2021 icpc南京(A,M,C,H,J,D)
  • Java和C++有什么区别?JVM不是跨平台的?JVM是用什么语言编写的?
  • 前端性能优化 | 响应式布局、响应式图片最全解析
  • 智能呼叫中心详细介绍
  • 消息队列mq有哪些缺点?
  • 【Python】进程、线程、协程篇 (无偿分享一份全套的 Python 学习资料)
  • 真题与解析 202212三级 青少年软件编程(Python)考级
  • web服务器
  • YOLOv11改进策略【注意力机制篇】| WACV-2024 D-LKA 可变形的大核注意 针对大尺度、不规则的目标图像
  • 分段线性回归
  • 前端用canvas绘图并支持下载
  • yarn install 出现 error Error: certificate has expired
  • AWS RDS Oracle hit ORA-39405
  • 基于SSM的游戏交易网站的设计与实现
  • 一个指针可以被声明为 `volatile`
  • 力扣每日一题2024/11/2 3226. 使两个整数相等的位更改次数
  • 【棋盘覆盖——匈牙利算法】
  • 课程讲解---深搜
  • 使用NCNN在树莓派部署深度学习模型流程