如何更改seaborn中我的lmplot的数字大小?
这是我目前的代码,但显然figsize不被接受.
sns.lmplot(x="x", y="y", hue="category", data=df,fit_reg=False,
markers=["o", "x"], palette="Set1",figsize=(7,7));
Run Code Online (Sandbox Code Playgroud)
谢谢
Jos*_*but 16
由于a lmplot是"图形级别",figsize由两个参数决定,size和aspect.我认为size=7会做你想做的事,但我可能会离开.
这是在文档中(搜索"更改构面的大小和宽高比"):https://web.stanford.edu/~mwaskom/software/seaborn/generated/seaborn.lmplot.html
注意:我一直对完全相同的东西感到困惑,并且确定具有一致接口的大小非常好.
Joe*_*fer 11
比较这两种设置图表大小的方法:
sns.lmplot(data=conversion, x='Week Index', y='Lead-Ann', size=4, aspect=5)
Run Code Online (Sandbox Code Playgroud)
plt.figure(figsize=(24,4))
sns.regplot(data=conversion, x='Week Index', y='Lead-Ann')
Run Code Online (Sandbox Code Playgroud)
Seaborn文档解释了不同之处:seaborn.lmplot
理解regplot()和lmplot()之间的区别可能有点棘手.事实上,它们是密切相关的,因为lmplot()在内部使用regplot()并占用其大部分参数.但是,regplot()是一个轴级函数,因此它直接绘制到轴上(当前活动轴或ax参数提供的轴),而lmplot()是一个图形级函数并创建自己的图形,通过FacetGrid管理.这有一些后果,即regplot()可以愉快地与其他类型的图一起存在于图中,并将遵循全局matplotlib颜色循环.相比之下,lmplot()需要占用整个图形,并且通过函数参数控制大小和颜色周期,忽略全局默认值.
在Seaborn 0.9.0中,我认为正确的方法是使用height(默认为5)设置图形的高度,然后使用aspect(默认为1)设置宽度。 height * aspect = width。
要制作更大的正方形,只需增加高度即可:
sns.lmplot(x='x', y='y', hue='category', data=df, height=7);
Run Code Online (Sandbox Code Playgroud)
为了使其更宽,请增加纵横比:
sns.lmplot(x='x', y='y', hue='category', data=df, height=7, aspect=1.6);
Run Code Online (Sandbox Code Playgroud)