改变seaborn情节线的颜色

Jon*_*nis 12 python colors seaborn

我无法更改 seaborn 中 2d 线的颜色。我的图中有 2 条线,我想为它们分配不同的颜色。

sns.set(style="whitegrid")
data = pd.DataFrame(result_prices, columns=['Size percentage increase'])
data2 = pd.DataFrame(result_sizes, columns=['Size percentage increase'])
sns_plot = sns.lineplot(data=data, color='red', linewidth=2.5)
sns_plot = sns.lineplot(data=data2, linewidth=2.5)
sns_plot.figure.savefig("size_percentage_increase.png")

Run Code Online (Sandbox Code Playgroud)

但是color='red'不变色,为什么呢?

bus*_*ear 13

使用该color参数似乎只适用于 Series 对象。由于您的数据框似乎只有一列,您可以将它们创建为系列:

sns.set(style="whitegrid")
data = pd.Series(result_prices)
data2 = pd.Series(result_sizes)
sns_plot = sns.lineplot(data=data, color='red', linewidth=2.5)
sns_plot = sns.lineplot(data=data2, linewidth=2.5)
sns_plot.figure.savefig("size_percentage_increase.png")
Run Code Online (Sandbox Code Playgroud)

文档最后有一个例子。


您也可以定义palette

sns.set(style="whitegrid")
data = pd.DataFrame(result_prices, columns=['Size percentage increase'])
data2 = pd.DataFrame(result_sizes, columns=['Size percentage increase'])
sns_plot = sns.lineplot(data=data, palette=['red'], linewidth=2.5)
sns_plot = sns.lineplot(data=data2, linewidth=2.5)
sns_plot.figure.savefig("size_percentage_increase.png")
Run Code Online (Sandbox Code Playgroud)