首頁 > 後端開發 > Python教學 > 如何使用 Matplotlib 建立自訂色彩圖並顯示色標?

如何使用 Matplotlib 建立自訂色彩圖並顯示色標?

Linda Hamilton
發布: 2024-11-12 07:17:01
原創
314 人瀏覽過

How to Create a Custom Colormap with Matplotlib and Display a Color Scale?

使用 Matplotlib 和色標圖自訂顏色圖

簡介

自訂顏色圖允許個人化資料視覺化。本文解決了使用者關於創建自己的顏色圖的疑問,該顏色圖從紅色平滑過渡到紫色到藍色,並映射到 -2 到 2 之間的值。目的是為繪圖中的資料點著色並顯示隨附的色標。

顏色圖建立

為了建立連續的色階,使用 LinearSegmentedColormap 而不是離散的 ListedColormap。可以將顏色清單傳遞給 from_list 方法來產生此自訂顏色圖:

import matplotlib.pyplot as plt
import matplotlib.colors

colors = ["red", "violet", "blue"]
cmap = matplotlib.colors.LinearSegmentedColormap.from_list("", colors)
登入後複製

將顏色對應到值

要將顏色對應到資料值,需要標準化函數。 Normalize 函數將值轉換為適合顏色圖的範圍:

norm = plt.Normalize(-2, 2)
登入後複製

使用自訂顏色圖繪圖

使用自訂顏色圖為圖中的點著色:

plt.scatter(x, y, c=c, cmap=cmap, norm=norm)
登入後複製

色標視覺化

顯示與圖相鄰的色標:

plt.colorbar()
登入後複製

泛化為任意資料

此方法可以泛化為映射任何一組顏色值:

cvals = [-2., -1, 2]
colors = ["red", "violet", "blue"]

tuples = list(zip(map(norm, cvals), colors))
cmap = matplotlib.colors.LinearSegmentedColormap.from_list("", tuples)
登入後複製

以上是如何使用 Matplotlib 建立自訂色彩圖並顯示色標?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板