Python中Matplotlib绘制破碎的、有间隙的条形图(broken_barh)步骤详细介绍 代码示例

本文详细介绍了如何使用Python的matplotlib库中的broken_barh函数绘制破碎的水平条形图,包括数据准备、参数设置和个性化定制,以在Gantt图中展示任务时间范围。
摘要由CSDN通过智能技术生成

绘制破碎的、间隙的水平条形图可以通过matplotlib库中的broken_barh函数来实现。这种类型的图表适用于需要突出时间段或某个范围的情况,比如在 Gantt 图中展示任务的开始和结束时间。在下面的步骤中,我将详细解释如何使用broken_barh函数来创建这样的水平条形图。
在这里插入图片描述

1 导入库

首先,确保你已经安装了matplotlib库。如果没有安装,可以使用以下命令进行安装:

pip install matplotlib

接下来,导入所需的库:

import matplotlib.pyplot as plt

2 准备数据

为了创建破碎的、间隙的水平条形图,你需要有一组时间段数据。以下是一个简单的例子:

# 数据
segments = [(1, 3), (5, 8), (10, 12)]

每个元组表示一个时间段,比如 (1, 3) 表示从1到3的时间段。

3 绘制破碎的、间隙的水平条形图

使用broken_barh函数绘制破碎的、间隙的水平条形图。这个函数接受两个参数:x_ranges表示每个时间段的x坐标范围,y表示y坐标。

# 绘制破碎的、间隙的水平条形图
plt.broken_barh(segments, yrange=(0, 1), facecolors='skyblue', edgecolors='black')
  • segments是包含时间段的列表。
  • yrange表示y坐标的范围,这里是从0到1。
  • facecolors是条形的填充颜色。
  • edgecolors是条形的边框颜色。

4 添加标签和标题

添加一些标签和标题,以提高图表的可读性:

# 添加标签和标题
plt.xlabel('Time')
plt.ylabel('Categories')
plt.title('Broken Horizontal Bar Chart')

5 定制化图表

你可以根据需要进行个性化,比如调整坐标轴的刻度、设置颜色、添加网格线等:

# 设置x轴刻度和标签
plt.xticks(range(0, 13, 1), ['0', '1', '2', '3', '4', '5', '6', '7', '8', '9', '10', '11', '12'])

# 添加网格线
plt.grid(axis='x', linestyle='--', alpha=0.6)

6 显示图形

最后一步是显示你的图形:

# 显示图形
plt.show()

完整代码

将以上步骤整合在一起,得到一个完整的破碎的、间隙的水平条形图绘制代码:

import matplotlib.pyplot as plt

# 数据
segments = [(1, 3), (5, 8), (10, 12)]

# 绘制破碎的、间隙的水平条形图
plt.broken_barh(segments, yrange=(0, 1), facecolors='skyblue', edgecolors='black')

# 添加标签和标题
plt.xlabel('Time')
plt.ylabel('Categories')
plt.title('Broken Horizontal Bar Chart')

# 设置x轴刻度和标签
plt.xticks(range(0, 13, 1), ['0', '1', '2', '3', '4', '5', '6', '7', '8', '9', '10', '11', '12'])

# 添加网格线
plt.grid(axis='x', linestyle='--', alpha=0.6)

# 显示图形
plt.show()

matplotlib提供了丰富的选项,可以查阅官方文档以获取更多信息。可以调整颜色、边框、透明度等参数,以及使用其他图形元素来丰富图表。

  • 10
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Pandas120

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值