0
A
回答
3
你基本上需要創建自己的顏色表有你想要的特定功能。當然,這樣做時可以使用現有的色彩貼圖。
的colormaps總是0
和1
之間。這個範圍將被映射到數據區間。因此,爲了-0.5
和0.5
之間建立的白人,我們需要知道數據的範圍 - 比方說數據從去到-1
1
。然後,我們可以決定讓地震地圖的下部(藍色)部分從-1
變爲-0.5
,然後在-0.5
和+0.5
之間有白色,最後是地震圖的上部(紅色)從0.5
到1
。在一個顏色表的語言,這對應於範圍[0,0.25]
,[0.25, 0.75]
和[0.75,1]
。然後我們可以創建一個列表,其中第一個和最後一個百分之25是地震地圖的顏色,中間是50%的白色。
此列表可用於使用matplotlib.colors.LinearSegmentedColormap.from_list("colormapname", listofcolors)
創建色彩映射表。
import numpy as np
import matplotlib.pyplot as plt
import matplotlib.colors
n=50
x = 0.5
lower = plt.cm.seismic(np.linspace(0, x, n))
white = plt.cm.seismic(np.ones(100)*0.5)
upper = plt.cm.seismic(np.linspace(1-x, 1, n))
colors = np.vstack((lower, white, upper))
tmap = matplotlib.colors.LinearSegmentedColormap.from_list('terrain_map_white', colors)
x = np.linspace(0,10)
X,Y = np.meshgrid(x,x)
z = np.sin(X) * np.cos(Y*0.4)
fig, ax = plt.subplots()
im = ax.imshow(z, cmap=tmap)
plt.colorbar(im)
plt.show()
對於更一般的情況下,你可能需要(使用matplotlib.colors.Normalize
)顏色正常化。見例如this example,其中某一顏色在顏色表總是固定在0的數據值,獨立於數據的範圍。
相關問題
- 1. 在特定時間後更改顏色
- 2. 如何更改特定JButton的顏色
- 3. 如何在matplotlib顏色映射中間隔確定顏色
- 4. 如何更改一段時間間隔的UIButton的顏色
- 5. 如何更改進度條的顏色
- 6. 如何更改滾動條的顏色
- 7. 如何更改進度條的顏色?
- 8. 如何更改滾動條的顏色
- 9. 如何更改ActionBar.Tab的條形顏色?
- 10. 根據值更改條的顏色
- 11. CSS如何更改班級內某個鏈接的顏色
- 12. 更改特定時間段內按鈕的顏色和文字
- 13. 特定值的Pheatmap顏色
- 14. 如何根據特定字段的值更改行的顏色?
- 15. 更改特定行的顏色(TELERIK)
- 16. 更改特定字符串的顏色
- 17. 更改matlab中特定點的顏色?
- 18. 更改特定單詞的顏色
- 19. 更改特定字符的顏色
- 20. 更改特定圖標的顏色NavigationDrawer
- 21. 更改ImageIcon中的特定顏色
- 22. jQuery:更改特定的文本顏色
- 23. 更改特定的行顏色uipicker
- 24. 更改圖像中的特定顏色
- 25. 如何更改某個值的輸入顏色
- 26. 如何在顏色表中的顏色之間插入線條?
- 27. 自定義顏色條的顏色MATLAB
- 28. 爲顏色圖和顏色條中的兩個(或多個)特定值添加單獨的顏色
- 29. 如何更改JScrollPane內容的顏色?
- 30. 更改scilab彩條中的顏色間隔
你寫過一些代碼,你可以發佈? –