相关疑难解决方法(0)

用不同的颜色绘制点标记和线条,但与Seaborn的样式相同

给定以下数据框:

import pandas as pd
df = pd.DataFrame({
    "n_index": list(range(5)) * 2,
    "logic": [True] * 5 + [False] * 5,
    "value": list(range(5)) + list(range(5, 10))
})
Run Code Online (Sandbox Code Playgroud)

我想只用颜色来区分logic线条图中的颜色,并在values 上标记点。具体来说,这是我想要的输出(由R ggplot2绘制):

ggplot(aes(x = n_index, y = value, color = logic), data = df) + geom_line() + geom_point()
Run Code Online (Sandbox Code Playgroud)

期望的输出

我尝试使用做相同的事情seaborn.lineplot,并且指定了markers=True但没有标记:

import seaborn as sns
sns.set()
sns.lineplot(x="n_index", y="value", hue="logic", markers=True, data=df)
Run Code Online (Sandbox Code Playgroud)

sns无标记

然后,我尝试添加style="logic"代码,现在标记出现了:

sns.lineplot(x="n_index", y="value", hue="logic", style="logic", markers=True, data=df)
Run Code Online (Sandbox Code Playgroud)

带有标记的sns 1

我也尝试将标记设置为相同样式:

sns.lineplot(x="n_index", …
Run Code Online (Sandbox Code Playgroud)

python data-visualization aesthetics seaborn

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

如何在seaborn lineplot上绘制虚线?

我只是想用seaborn绘制一条虚线.这是我正在使用的代码和我得到的输出

import seaborn as sns
import numpy as np
import matplotlib.pyplot as plt

n = 11
x = np.linspace(0,2,n)
y = np.sin(2*np.pi*x)

sns.lineplot(x,y, linestyle='--')
plt.show()
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述

我究竟做错了什么?谢谢

python matplotlib seaborn

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