Seaborn.cubehelix_palette() 方法
Seaborn.cubehelix_palette() 方法用于从 cubehelix 系统制作顺序调色板。
此方法还会生成具有线性变化(增加或减少)亮度的颜色图。 这意味着,无论何时将颜色信息打印成黑白或被色盲者查看,该信息都会自动保存。 用户可以使用一组不同的默认值更好地控制 matplotlib 中的 cubehelix_palette() 函数。
我们可以使用现有的 cubehelix 调色板,也可以使用 seaborn 库生成一个。
语法
以下是 cubehelix_palette() 方法的语法 −
seaborn.cubehelix_palette(n_colors=6, start=0, rot=0.4, gamma=1.0, hue=0.8, light=0.85, dark=0.15, reverse=False, as_cmap=False)
参数
cubehelix 方法的参数如下所述。
S.No | 参数及说明 |
---|---|
1 | n_colors 循环中的颜色数。 |
2 | start 螺旋开始处的色调。 该值介于 0 和 3 之间。 |
3 | rot 采用浮点值,它是在调色板范围内围绕色相轮旋转的值。 |
4 | hue 取浮点值,介于 0 和 1 之间。它是颜色的饱和度。 |
5 | gamma 采用浮点值并强调较深或较浅的颜色。 |
6 | dark 采用浮点值和调色板中最暗颜色的强度。 |
7 | light 采用浮点数并设置调色板中最亮颜色的强度。 |
8 | reverse 采用布尔值,如果为 true ,则调色板颜色将从暗变为亮。 |
9 | as_cmap() 采用布尔值并返回 matplotlib 颜色图。 |
返回值
此方法返回 RGB 元组列表或 matplotlib 颜色图。
示例 1
在这个例子中,我们将看到如何使用 cubehelix 方法工作。 我们不会向它传递任何参数,并且会显示默认调色板。
import seaborn as sns import matplotlib.pyplot as plt titanic=sns.load_dataset("titanic") titanic.head() sns.palplot(sns.cubehelix_palette()) plt.show()
输出
输出如下,
示例 2
在这个例子中,我们将把 rot 值传递给 cubehelix_palette() 方法。 rot 参数采用浮点值,它是在调色板范围内围绕色相轮旋转的值。
import seaborn as sns import matplotlib.pyplot as plt titanic=sns.load_dataset("titanic") titanic.head() sns.palplot(sns.cubehelix_palette(rot=0.7)) plt.show()
输出
获得的输出是一个 matplotlib 颜色图,如下所示。
rot 参数也可以取负值。 在下面的示例中,我们将看到当传递给 rot 的值为负时,如何生成不同的调色板。
import seaborn as sns import matplotlib.pyplot as plt titanic=sns.load_dataset("titanic") titanic.head() sns.palplot(sns.cubehelix_palette(rot=-0.2)) plt.show()
输出
产生的输出如下,
示例 3
在这里,我们将看到如何使用通过此方法创建的自定义调色板生成颜色图。 要生成热图,我们需要使用热图函数,为此,可以使用以下代码行。 这里,light 设置为 1,表示调色板中最亮颜色的强度。 由于向 as_cmap 传递了一个 True 值,因此生成了一个颜色图并将其存储在 cmap 中。 此 cmap 连同存储在 x 变量中的范围被传递给热图,并生成以下热图。
import seaborn as sns import matplotlib.pyplot as plt titanic=sns.load_dataset("titanic") titanic.head() from numpy import arange x = arange(625).reshape(25, 25) cmap = sns.cubehelix_palette(dark=0, light=1, as_cmap=True) ax = sns.heatmap(x, cmap=cmap) plt.show()
输出
上面这行代码的输出结果如下−