相关疑难解决方法(0)

在特定位置绘制一条水平线/注释Seaborn中的Facetgrid

A通过以下方式在Seaborn中制作了Facetgrid的箱线图

# Import the dataset
tips = sns.load_dataset("tips")

# Plot using Facegrid, separated by smoke
plt.style.use('ggplot')
g = sns.FacetGrid(tips, col="smoker", size=5, aspect=1.5)
g.map(sns.boxplot, "sex", "total_bill", palette='viridis', order=['Male', 'Female'])
plt.show()
Run Code Online (Sandbox Code Playgroud)

我现在想在每个图中绘制不同的水平线。例如,一条水平线(坐标为(0,10))在左侧图中,而另一条水平线(坐标为(0,30))在右侧图中。

我该怎么做呢?

python seaborn facet-grid

7
推荐指数
3
解决办法
9339
查看次数

如何向 Seaborn 分布图添加均值线和中线

有没有办法将平均值和中位数添加到 Seaborn's displot

penguins = sns.load_dataset("penguins")
g = sns.displot(
    data=penguins, x='body_mass_g',
    col='species',  
    facet_kws=dict(sharey=False, sharex=False)
)
Run Code Online (Sandbox Code Playgroud)

在此处输入图片说明

基于向 seaborn FacetGrid distplots 添加均值和可变性,我看到我可以定义一个FacetGrid并映射一个函数。我可以将自定义函数传递给displot吗?

尝试displot直接使用的原因是这些图开箱即用更漂亮,无需调整刻度标签大小、轴标签大小等,并且在视觉上与我制作的其他图保持一致。

def specs(x, **kwargs):
    ax = sns.histplot(x=x)
    ax.axvline(x.mean(), color='k', lw=2)
    ax.axvline(x.median(), color='k', ls='--', lw=2)

g = sns.FacetGrid(data=penguins, col='species')
g.map(specs,'body_mass_g' )
Run Code Online (Sandbox Code Playgroud)

在此处输入图片说明

python matplotlib histogram seaborn

5
推荐指数
1
解决办法
574
查看次数

标签 统计

python ×2

seaborn ×2

facet-grid ×1

histogram ×1

matplotlib ×1