- Seaborn 教程
- Seaborn - 首頁
- Seaborn - 簡介
- Seaborn - 環境設定
- 匯入資料集和庫
- Seaborn - 圖形美學
- Seaborn - 調色盤
- Seaborn - 直方圖
- Seaborn - 核密度估計
- 視覺化成對關係
- Seaborn - 繪製分類資料
- 觀測值的分佈
- Seaborn - 統計估計
- Seaborn - 繪製寬格式資料
- 多面板分類圖
- Seaborn - 線性關係
- Seaborn - Facet Grid
- Seaborn - Pair Grid
- 函式參考
- Seaborn - 函式參考
- Seaborn 有用資源
- Seaborn - 快速指南
- Seaborn - 有用資源
- Seaborn - 討論
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 方法的引數。
| 序號 | 引數和描述 |
|---|---|
| 1 | n_colors 迴圈中的顏色數量。 |
| 2 | start 螺旋開始處的色調。此值介於 0 和 3 之間。 |
| 3 | rot 接受浮點值,它是調色盤範圍內圍繞色調輪的旋轉次數。 |
| 4 | hue 接受浮點值,介於 0 和 1 之間。它是顏色的飽和度。 |
| 5 | gamma 接受浮點值,它強調較暗或較亮的色彩。 |
| 6 | dark 接受浮點值,調色盤中最暗顏色的強度。 |
| 7 | light 接受浮點值,設定調色盤中最亮顏色的強度。 |
| 8 | reverse 接受布林值,如果為真,則調色盤顏色將從暗到亮。 |
| 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
在這裡,我們將瞭解如何使用此方法建立的自定義調色盤生成顏色對映。要生成熱圖,我們需要使用 heatmap 函式,為此,可以使用以下程式碼行。這裡,light 設定為 1,表示調色盤中最亮顏色的強度。由於 as_cmap 傳遞了 True 值,因此會生成一個顏色對映,並將其儲存在 cmap 中。此 cmap 以及儲存在 x 變數中的範圍傳遞給 heatmap,並生成以下熱圖。
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()
輸出
上述程式碼行的輸出如下所示: