给定以下数据框:
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)
然后,我尝试添加style="logic"代码,现在标记出现了:
sns.lineplot(x="n_index", y="value", hue="logic", style="logic", markers=True, data=df)
Run Code Online (Sandbox Code Playgroud)
我也尝试将标记设置为相同样式:
sns.lineplot(x="n_index", …Run Code Online (Sandbox Code Playgroud) 我只是想用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)
我究竟做错了什么?谢谢