如何在seaborn中替换x标签?

2024-06-16 11:10:52 发布

您现在位置:Python中文网/ 问答频道 /正文

我正试图用seaborn绘制countplot,代码如下:

sns.set(rc={'figure.figsize':(15,10)})
ax = sns.countplot(hue="PRODUCTS", x="CATEGORIES",data=df)
plt.show()

但是分类标签会互相重叠。像这样:

enter image description here

我可以成功地旋转xticks,但我想像下图中那样交替使用它们:

enter image description here

在前面的图像中,使用了此方法:

ax = sns.barplot(data=to_plot, x='Channel', y='% of leads assigned')
tweak_x_ticks(ax, alternate=True)

但是tweak_x_ticks它不是seaborn或matplotlib内置方法。如何替换x标签?换句话说,如何定义tweak_x_ticks


Tags: 方法代码data绘制标签seabornaxfigure
1条回答
网友
1楼 · 发布于 2024-06-16 11:10:52

tweak_x_ticks的可能实现可以是(未经测试):

def tweak_x_ticks(ax, alternate=True):
    if not alternate:
        return
    ax.figure.canvas.draw()
    ax.set_xticklabels(["\n"*(i%2) + label.get_text() for i, label in enumerate(ax.get_xticklabels())])

相关问题 更多 >