首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Seaborn Swarmplot轴间隔格式设置

Seaborn Swarmplot轴间隔格式设置
EN

Stack Overflow用户
提问于 2020-08-01 01:21:25
回答 1查看 305关注 0票数 1

目前,我的seaborn swarm图的x轴间隔太近,导致的图看起来像这样:下面的image是我当前的代码。玩具数据x值(32,34,76,34,64,34,23,76,34,63,75,34,76,34,34,45,56,67,34,56) Y值(0,0,1,0,1,0,1,0,1,0,0,0,1,0,1,0,0,1,0,1,0)

代码语言:javascript
复制
sns.swarmplot(x="age", y="sex", hue="target", palette=["green", "red"], data=df)

有没有一种格式化间隔的方法?例如,我希望x轴总共有5个标签。当我使用relplot绘图时,轴标签看起来很好,但当我切换到swarmplot时,它会变得混乱。我似乎在任何地方都找不到这方面的信息。我发现,所有其他问题似乎都不适用于沼泽地。

这里的帖子(post)与我的问题非常相似,但是我没有使用plt,而是使用seaborn。任何帮助都非常感谢。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-08-01 02:41:13

您可以通过ax = sns.swarmplot(...)访问所有matplotlib功能,然后调用例如ax.get_xticks()

代码语言:javascript
复制
import numpy as np
import matplotlib.pyplot as plt
import pandas as pd
import seaborn as sns

N = 100
df = pd.DataFrame({'x': np.random.randint(30, 80, N, dtype=int),
                   'y': np.random.randint(0, 2, N),
                   'target': np.random.randint(0, 2, N)})
ax = sns.swarmplot(x='x', y='y', hue="target", palette=["green", "red"], data=df)
ticks = ax.get_xticks()
labels = ax.get_xticklabels()
ax.set_xticks(ticks[4::5])
ax.set_xticklabels(labels[4::5])
ax.set_yticks([0, 1])
plt.show()

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/63196379

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档