首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

matplotlib barh:如何在两组条之间创建视觉间隙?

在matplotlib的barh函数中,可以使用参数gap来创建视觉间隙,这可以通过在每组条之间绘制一个空白的条来实现。gap参数控制了两组条之间的间隔宽度。

下面是一个例子,展示了如何在两组条之间创建视觉间隙:

代码语言:txt
复制
import matplotlib.pyplot as plt
import numpy as np

# 生成示例数据
categories = ['A', 'B', 'C', 'D']
group1_values = [10, 15, 7, 12]
group2_values = [8, 11, 9, 6]

# 计算每组条的位置
bar_width = 0.35
bar_positions1 = np.arange(len(categories))
bar_positions2 = bar_positions1 + bar_width + 0.1  # 增加0.1的间隔

# 创建图表对象
fig, ax = plt.subplots()

# 绘制两组条
ax.barh(bar_positions1, group1_values, height=bar_width, label='Group 1')
ax.barh(bar_positions2, group2_values, height=bar_width, label='Group 2')

# 设置刻度和标签
ax.set_yticks(bar_positions1 + bar_width / 2)
ax.set_yticklabels(categories)
ax.invert_yaxis()  # 反转y轴,使顶部为第一个条

# 添加图例
ax.legend()

# 显示图表
plt.show()

在上述例子中,我们首先生成了两组条的示例数据。然后,通过bar_positions1bar_positions2计算了每组条的位置,其中bar_width表示条的宽度。

接下来,通过调用ax.barh函数来绘制两组条。height参数指定了条的高度,label参数设置了每组条的标签。

我们还通过ax.set_yticksax.set_yticklabels来设置y轴的刻度和标签,并使用ax.invert_yaxis()函数来反转y轴的顺序,使顶部为第一个条。

最后,通过调用ax.legend()添加图例,使用plt.show()显示图表。

这是一个使用matplotlib的barh函数在两组条之间创建视觉间隙的例子。对于更详细的barh函数的说明和用法,请参考matplotlib官方文档

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

领券