首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Seaborn swarmplot和pointplot减淡对齐

Seaborn swarmplot和pointplot减淡对齐
EN

Stack Overflow用户
提问于 2019-01-20 07:33:15
回答 1查看 1.1K关注 0票数 1

有没有一种方法可以将点图的mean+SEM与相应的swarmplot对齐?

下面是我的代码:

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

fig, ax = plt.subplots(nrows=1, ncols=1)
n=200
to_plot = np.random.uniform(low=0.0, high=1.0, size=n)
mods = ['a','b']
model_col = mods*(n/2)
opt=['1']*(n/2)+['2']*(n/2)

d={'Model':pd.Series(model_col),'Par':pd.Series(to_plot),'opt':pd.Series(opt)}
df = pd.DataFrame(d)
sns.swarmplot(x='Model', y='Par',hue='opt',dodge=True,data=df,size=2,palette=['#469990','#000075'])
sns.pointplot(x="Model", y="Par", hue='opt', data=df,join=False,dodge=True,
     ci=68,n_boot=1000,capsize=0.1,errwidth=0.5,scale = 1.5,palette=['k','k'])

ax.get_legend().remove()
plt.show()

这是我的图:

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-01-21 06:15:49

似乎swarmplotpointplot对各自的dodge参数使用了不同的默认值。但是,您可以将它们设置为相等的值,例如

代码语言:javascript
复制
sns.swarmplot(...,  dodge=0.4) 
sns.pointplot(...,  dodge=0.4) 
票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/54272277

复制
相关文章

相似问题

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