簡體   English   中英

如何將深藍色的調色板轉換為cmap?

[英]How can I convert a seaborn color palette into a cmap?

我想將seaborn中連續發散的調色板“ RdBu_r”(或實際上是任何預定義的調色板)轉換為matplotlib色彩圖。

這是我最近來的,但是它創建了一個離散的顏色圖,而我想要一個連續的圖:

import seaborn as sns
from matplotlib.colors import ListedColormap

palette = sns.color_palette("RdBu_r", n=7) # could make n = 100 as a quick fix
cmap = ListedColormap(colors=palette)
cmap.set_bad(color='black', alpha=0.5)
sns.heatmap(cmap=cmap) 

最終,我嘗試使用“ RdBu_r”調色板創建一個海洋式熱圖,並用黑色正方形填充空值,這就是為什么我嘗試使用set_bad(color ='black')創建cmap的原因只需將“ RdBu_r”傳遞到sns.heatmap的cmap參數中即可。

多謝你們。

"RdBu_r"是matplotlib顏色圖。 因此,似乎沒有理由先將其轉換為顏色列表。 而是按原樣使用它。

import matplotlib.pyplot as plt
import seaborn as sns

cmap = plt.get_cmap("RdBu_r")
cmap.set_bad(color='black', alpha=0.5)

sns.heatmap(data, cmap=cmap) 

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM