我正在尝试用Seaborn绘制两组数据,这是我的代码。
import seaborn as sns
import matplotlib.pyplot as plt
import pandas as pd
sns.axes_style("ticks")
ss_data = pd.read_csv('A.csv')
ks_data = pd.read_csv('B.csv')
g = sns.lineplot(data=ks_data, x="K", y="pd", dashes=False)
sns.lineplot(data=ss_data, x="K", y="pd", dashes=False)
g.set_xticks(range(0,22,4))
plt.legend(labels=["A", "B"])
plt.savefig("test.png", dpi=500)
但这是我得到的图,如你所见,图例没有正确显示B的线颜色。
我想这可能是由于我添加第二个线图的方式,但我不能使它工作的任何其他方式。
2条答案
按热度按时间oxalkeyp1#
使用
label
参数(传递给matplotlib.axes.Axes.plot()
),不需要plt.legend()
。重要的是,通过
errorbar=None
(或对于0.12.0之前的海运版本,ci=None
),以关闭置信区间的绘制。6rqinv9w2#
可能是
matplotlib
/seaborn
版本问题?我无法重现您的图表。使用一些虚拟数据,我得到了预期的结果:我有两个