Python 在绘图中交换勾号标签

Python 在绘图中交换勾号标签,python,matplotlib,seaborn,Python,Matplotlib,Seaborn,假设x和y是存储x和y轴的向量,我如何切换以下seaborn kdeplot的x和y值(我想要得到的是x[I]=y[I]和y[I]=x[I],对于I=0,…,len(x)?我的当前输出: 下面是如何使用get\u x/yticks和set\u x/yticklebels实现这一点: fig, ax = plt.subplots(figsize=(18,8)) g = sns.kdeplot(adoptions, shade=True, color="red") yticks = ax.get_

假设x和y是存储x和y轴的向量,我如何切换以下seaborn kdeplot的x和y值(我想要得到的是x[I]=y[I]和y[I]=x[I],对于I=0,…,len(x)?我的当前输出:


下面是如何使用
get\u x/yticks
set\u x/yticklebels
实现这一点:

fig, ax = plt.subplots(figsize=(18,8))
g = sns.kdeplot(adoptions, shade=True, color="red")

yticks = ax.get_yticks()
xticks = ax.get_xticks()

n = len(min([yticks, xticks], key=len))
g.set_xticklabels(yticks[:n])
g.set_yticklabels([f'{tick:.1f}' for tick in xticks])
g.set_xticks(xticks[:n])
g.set_yticks(yticks[:n])
g.axvline(np_x.mean(), color='gray', linestyle='dashed', linewidth=3,
                            label='Threshold: {:.2f}'.format(np_x.mean()))
plt.ylabel("π")
plt.xlabel("% ^HT")
plt.show()

以下是您如何使用
get\u x/yticks
set\u x/yticklabels
实现此目的的方法:

fig, ax = plt.subplots(figsize=(18,8))
g = sns.kdeplot(adoptions, shade=True, color="red")

yticks = ax.get_yticks()
xticks = ax.get_xticks()

n = len(min([yticks, xticks], key=len))
g.set_xticklabels(yticks[:n])
g.set_yticklabels([f'{tick:.1f}' for tick in xticks])
g.set_xticks(xticks[:n])
g.set_yticks(yticks[:n])
g.axvline(np_x.mean(), color='gray', linestyle='dashed', linewidth=3,
                            label='Threshold: {:.2f}'.format(np_x.mean()))
plt.ylabel("π")
plt.xlabel("% ^HT")
plt.show()

您的意思是更改标签?就像从轴上交换标签一样?是的,@yatu可以更改标签,因此在y轴上有x值,在x轴上有y值,这是非常棘手的,因为它们的长度不同。滴答声的数量各不相同。试一试though@AlexandraBradan当前位置我的答案基于对你的话的不同解释。我以为你想切换轴,因为切换标签对我来说没有多大意义。如果我的答案不是你想要的,请告诉我,这样我就可以删除它。我不太确定这两种解释中哪一种是正确的@Sheldore如此相同,你想更改标签吗?就像从轴上交换标签一样?是的,@yatu可以更改标签,因此在y轴上有x值,在x轴上有y值,这是非常棘手的,因为它们的长度不同。滴答声的数量各不相同。试一试though@AlexandraBradan当前位置我的答案基于对你的话的不同解释。我以为你想切换轴,因为切换标签对我来说没有多大意义。如果我的答案不是你想要的,请告诉我,这样我就可以删除它。我不太确定这两种解释中哪一种是正确的@Sheldore,在这里如此相同