You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何将Seaborn水平柱状图设置为右对齐/镜像显示

Seaborn水平柱状图右对齐(镜像显示)实现方法

要实现右对齐的水平柱状图,同时保留正常的正数刻度,可根据需求选择以下两种方案:

方案1:反转X轴(最简实现)

无需修改原始数据,仅需添加一行代码反转X轴方向,即可实现柱子从右向左生长:

import matplotlib.pyplot as plt
import seaborn as sns

x = ['x1', 'x2', 'x3']
y = [4, 6, 3]
sns.barplot(x=y, y=x, orient='h')
# 反转X轴
plt.gca().invert_xaxis()
plt.show()

注意该方案的X轴刻度会按左大右小的顺序排列,如果需要保持刻度左小右大的常规顺序,可以用方案2。

方案2:数值取反+自定义刻度(保留常规刻度顺序)

通过将原始数值取反绘制,再修改刻度标签为绝对值,即可同时满足右对齐、刻度正常两个需求:

import matplotlib.pyplot as plt
import seaborn as sns
import numpy as np

x = ['x1', 'x2', 'x3']
y = [4, 6, 3]
# 数值取反后绘制,柱子默认向左延伸
sns.barplot(x=-np.array(y), y=x, orient='h')
# 替换X轴刻度为绝对值,保持显示正常正数
current_ticks = plt.xticks()[0]
plt.xticks(ticks=current_ticks, labels=[abs(int(val)) for val in current_ticks])
plt.show()

内容的提问来源于stack exchange,提问作者Julkar9

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.07 14:42:01