我不知道如何更改y轴的比例。我的代码是:
grid = sns.catplot(x='Nationality', y='count',
row='Age', col='Gender',
hue='Type',
data=dfNorthumbria2, kind='bar', ci='No')
我想只增加整数而不是.5
答案 0 :(得分:0)
我刚刚发现这个tutorial,可能最简单的解决方案是:
grid.set(yticks=list(range(5)))
在grid.set
的帮助下
Help on method set in module seaborn.axisgrid:
set(**kwargs) method of seaborn.axisgrid.FacetGrid instance
Set attributes on each subplot Axes.
中的yticks
import matplotlib.pyplot as plt
plt.yticks(range(5))
但是,这仅改变了我的模型示例中上一行的yticks。
由于这个原因,您可能希望基于ax.set_yticks()
的轴更改y刻度。要从grid
对象获取轴,可以实现列表理解,如下所示:
[ax[0].set_yticks(range(0,150,5) )for ax in grid.axes]
完整的可复制示例如下(改编自here)
import seaborn as sns
import matplotlib.pyplot as plt
sns.set(style="ticks")
exercise = sns.load_dataset("exercise")
grid = sns.catplot(x="time", y="pulse", hue="kind",
row="diet", data=exercise)
# plt.yticks(range(0,150,5)) # Changed only one y-axis
# Changed y-ticks to steps of 20
[ax[0].set_yticks(range(0,150,20) )for ax in grid.axes]