相关疑难解决方法(0)

虚线 Seaborn 分布图

我有一个 seaborn displot 看起来像这样 在此处输入图片说明

我想画一些虚线。我怎样才能做到这一点?我尝试以 2 种不同的方式使用 linestyle 并出现错误

#### approach 1
for x, m in x_list:
    sns.distplot(x, hist=False, label=m, linestyle='--')
#### approach 2
for x, m in x_list:
    sns.distplot(x, hist=False, label=m, kde_kws={'linestyle':'--'})

TypeError: distplot() got an unexpected keyword argument 'linestyle'
Run Code Online (Sandbox Code Playgroud)

python matplotlib seaborn jupyter-notebook

3
推荐指数
1
解决办法
4412
查看次数

Seaborn:在kdeplot中更改线条样式

我正在使用seaborn按照此答案中的描述创建具有边际分布的kdeplot 。我对代码进行了一些修改,以实现以下目的:

import matplotlib.pyplot as plt
import seaborn as sns

iris = sns.load_dataset("iris")
setosa = iris.loc[iris.species == "setosa"]
virginica = iris.loc[iris.species == "virginica"]

g = sns.JointGrid(x="sepal_width", y="petal_length", data=iris)
sns.kdeplot(setosa.sepal_width, setosa.sepal_length, cmap="Reds",
        shade=False, shade_lowest=False, ax=g.ax_joint)
sns.kdeplot(virginica.sepal_width, virginica.sepal_length, cmap="Blues",
        shade=False, shade_lowest=False, ax=g.ax_joint)
sns.distplot(setosa.sepal_width, kde=True, hist=False, color="r", ax=g.ax_marg_x)
sns.distplot(virginica.sepal_width, kde=True, hist=False, color="b", ax=g.ax_marg_x)
sns.distplot(setosa.sepal_length, kde=True, hist=False, color="r", ax=g.ax_marg_y, vertical=True)
sns.distplot(virginica.sepal_length, kde=True, hist=False, color="b", ax=g.ax_marg_y, vertical=True)
plt.show()
Run Code Online (Sandbox Code Playgroud)

在此处输入图片说明

无法以黑白打印。我如何才能以特殊方式(点划线/点划线/ ...)打印kdeplot和distplot线,以使其在黑白打印时能够区分?

相关问题处理其他类型的显示支持这一地块,但这似乎并没有被支持kdeplotdistplot

python matplotlib seaborn

3
推荐指数
2
解决办法
3621
查看次数

改变seaborn facet网格中的线条样式

我有这样的数据集

import numpy as np; np.random.seed(3)
import pandas as pd
import seaborn.apionly as sns
import matplotlib.pyplot as plt

def get_data(n=266, s=[5,13]):
    val = np.c_[np.random.poisson(lam=s[0], size=n),
                np.random.poisson(lam=s[1], size=n)].T.flatten()
    comp = [s[0]]*n +  [s[1]]*n
    ov = np.random.choice(list("ABC"), size=2*n)
    return pd.DataFrame({"val":val, "overlap":ov, "comp":comp})

data1 = get_data(s=[9,11])
data2 = get_data(s=[9,11])
data3 = get_data(s=[9,11])

#option1 combine
for i, df in enumerate([data1,data2,data3]):
    df["data"] = ["data{}".format(i+1)] * len(df)

data = data1.append(data2)
data = data.append(data3)

bw = 2
a = sns.FacetGrid(data, col="overlap",  hue="comp", row="data")
a = (a.map(sns.kdeplot, "val",bw=bw …
Run Code Online (Sandbox Code Playgroud)

python matplotlib facet seaborn

2
推荐指数
1
解决办法
2379
查看次数

如何在seaborn中更改KDE图的线宽

我无法更改seaborn中kde线的刻度线。

在此输入图像描述

这是代码行:

sns.kdeplot(ax=ax2,x=dots['Longitude'],y=dots['Latitude'],kde_kws={'linestyle':':'},lw=0.1,levels=10)
Run Code Online (Sandbox Code Playgroud)

是不是少了什么东西?

python matplotlib seaborn

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

标签 统计

matplotlib ×4

python ×4

seaborn ×4

facet ×1

jupyter-notebook ×1