如何更改seaborn.catplot中的标记大小

问题描述 投票:0回答:3

enter image description here
所以我有这段代码可以生成一个图:

    g=sns.catplot(data=public, x="age", y="number", col="species", kind="strip",
                  jitter=True, order=order,
                  palette=palette, alpha=0.5,linewidth=3,height=6, aspect=0.7)

如何更改标记大小?

size=20
行为很奇怪,似乎是缩放绘图区域而不是更改标记大小。我得到:
.conda-envs/py3/lib/python3.5/site-packages/seaborn/categorical.py:3692: UserWarning: The 
尺寸
paramter has been renamed to
高度
; please update your code. warnings.warn(msg, UserWarning

python-3.x seaborn google-maps-markers
3个回答
21
投票

使用 s 代替大小。默认 s 为 5。

示例:

sns.catplot(x = "time",
       y = "total_bill",
       s = 20,
       data = tips)

enter image description here

sns.catplot(x = "time",
       y = "total_bill",
       s = 1,
       data = tips)

enter image description here


5
投票

sns.stripplot
中的参数“size”与
sns.catplot
中已弃用的“size”之间存在冲突,因此当您将“size”传递给后者时,它会覆盖“height”参数并显示警告消息看到了。

解决方法

通过查看源代码,我发现 's' 是

sns.stripplot
中 'size' 的别名,因此以下内容按您的预期工作:

g=sns.catplot(data=public, x="age", y="number", col="species", kind="strip",
              jitter=True, order=order, s=20,
              palette=palette, alpha=0.5, linewidth=3, height=6, aspect=0.7)

0
投票

根据catplot文档https://seaborn.pydata.org/ generated/seaborn.catplot.html您正在使用的底层

strip
记录在此处:https://seaborn.pydata.org/ generated/seaborn。 stripplot.html#seaborn.stripplot

引用:

size:浮动,可选

标记的直径(以磅为单位)。 (虽然

plt.scatter
用于绘制点,但这里的
size
参数采用“正常”标记大小,而不是像
plt.scatter
那样的 size^2)。

所以

size=20
似乎是给予 catplot 的完全有效的参数。或任何其他适合您需求的值。

从上面提供的seaborn文档页面中使用屏幕复制面食代码...

import seaborn as sns

sns.set(style="whitegrid")
tips = sns.load_dataset("tips")
ax = sns.stripplot(x=tips["total_bill"])

ax = sns.stripplot("day", "total_bill", "smoker", data=tips, palette="Set2", size=20, marker="D", edgecolor="gray",
                   alpha=.25)

enter image description here

size=8
enter image description here

© www.soinside.com 2019 - 2024. All rights reserved.