首頁  >  文章  >  後端開發  >  如何產生混合紅色、紫色和藍色的自訂顏色圖以繪製 -2 到 2 之間的值?

如何產生混合紅色、紫色和藍色的自訂顏色圖以繪製 -2 到 2 之間的值?

Mary-Kate Olsen
Mary-Kate Olsen原創
2024-11-12 12:02:02409瀏覽

How to Generate a Custom Colormap Blending Red, Violet, and Blue for Plotting Values Between -2 and  2?

自訂色彩圖建立和色階增強

在此技術調查中,挑戰在於產生平滑混合紅色、紫色和藍色的自訂色彩圖,映射到值介於-2 和2 之間。最終目標是使用此顏色圖為繪圖中的座標著色,並包含顏色比例參考。

顏色圖產生

為了實現此目的,採用了 LinearSegmentedColormap。與初始方法中提到的 ListedColormap 不同,LinearSegmentedColormap 允許平滑且連續的顏色漸變。為了建立顏色圖,我們利用 LinearSegmentedColormap.from_list 方法,將所需的顏色指定為清單。

顏色映射和繪圖

下一步涉及將顏色對應到資料值。這裡,Normalize 函數用於將值標準化在 -2 到 2 的範圍內。然後使用散點圖來顯示座標,使用自訂顏色圖和標準化值。

色階添加

為了增強繪圖的可讀性,色標是不可或缺的。 colorbar 函數用於在繪圖上新增色標,提供色彩圖和對應值範圍的視覺化表示。

範例實作

為了說明這個過程,請使用以下程式碼片段示範了自訂顏色圖的建立及其在繪圖中的應用:

import numpy as np
import matplotlib.pyplot as plt
import matplotlib.colors

x, y, c = zip(*np.random.rand(30, 3) * 4 - 2)

norm = plt.Normalize(-2, 2)
cmap = matplotlib.colors.LinearSegmentedColormap.from_list("", ["red", "violet", "blue"])

plt.scatter(x, y, c=c, cmap=cmap, norm=norm)
plt.colorbar()
plt.show()

透過執行以下步驟,可以有效地建立平滑且連續的自訂色彩圖、圖資料值的顏色,並結合色標以更好地理解繪圖及其值。

以上是如何產生混合紅色、紫色和藍色的自訂顏色圖以繪製 -2 到 2 之間的值?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn