如何在不手动指定的情况下使用调色板中的 "next" 颜色?

How do I use the "next" color in the palette without specifying it manually?

我在seaborn中画了几个散点图,出来的都是蓝色的点:

我想改变点的颜色。我发现了一些相当复杂的解决方案,您可以在其中手动指定颜色,但这不是我想要的。

我不关心它是什么颜色,它应该与蓝色不同并且是当前调色板的颜色之一以保持视觉效果令人愉悦。

是否有类似start_with_palette_color=1(默认0)的东西:

sns.scatterplot(data=tips, x="total_bill", y="tip", start_with_palette_color=1)

?

当不带参数调用时,可以使用color_palette()查看当前调色板。它 returns 表示调色板颜色的 RGB 元组列表。

scatterplot() 接受命名参数 color= 来指定任何颜色。

import seaborn as sns
tips = sns.load_dataset("tips")
# first scatter plot with default color
sns.scatterplot(data=tips, x="total_bill", y="tip")
# second scatter plot with the next color (array index 1 instead of implicit 0)
sns.scatterplot(data=tips, x="total_bill", y="tip",color=sns.color_palette()[1])

任何 matplotlib 接受颜色的地方,您都可以使用 "C{i}" 获取当前 matplotlib 循环中的第 i 种颜色,这可能是完成此操作的最简单方法。

例如,“C0”。或“C3”。