如何在Seaborn中的factorplot中调整标签之间的间距

时间:2015-06-22 17:14:17

标签: python plot seaborn

我已经完全享受了Pandas和Seaborn的惊人组合,以便进行数据分析和绘图需求。这足以阻止我走向学习R的道路,只为数据帧和ggplot; P。我对seaborn中的factorplot以及它在x轴上放置标签的方式有一个小问题。以下是给我带来麻烦的例子:

"squished" x-axis labels

基本上,我想"修复" x轴标签使得最后一列"> = 35"并非如此"压扁" (即重叠前面的标签)。是否有捷径可寻?我想出了一个临时的编码解决方案"> ="作为unicode并在标签之前添加额外的空格,但是有一个通用的解决方案来强制标签之间的间距会更好。

1 个答案:

答案 0 :(得分:2)

这些只是整数位置的matplotlib轴刻度标签。所以你可以做到

df = pd.DataFrame(dict(x=np.repeat(np.arange(21), 10), y=np.random.randn(210)))
df.loc[df.x == 20, "x"] = ">= 20"

g = sns.factorplot(x="x", y="y", data=df, kind="box")
g.axes[0, 0].set_xticks(range(20) + [20.5])

enter image description here

(请注意,版本0.6+在单轴ax对象上具有FacetGrid属性,这将使访问方法更容易一些)