自定义matplotlib colorb

2024-10-02 12:35:28 发布

您现在位置:Python中文网/ 问答频道 /正文

enter image description here

colors = ['white', '#FFFFBB', '#C3FDB8', '#B5EAAA', '#64E986', '#54C571', 
          '#4AA02C','#347C17','#347235','#25383C','#254117']

我用matplotlib绘制了一个图(类似于热图) 我想:

1)使用我在列表中定义的颜色或
2) 有没有办法在matplotlib中自动生成和R中一样漂亮的效果呢? “色彩库”的色彩太鲜明了。。。在

谢谢!在


Tags: 列表定义matplotlib颜色绘制热图whitecolors
1条回答
网友
1楼 · 发布于 2024-10-02 12:35:28

使用ListedColormap相当简单:

import matplotlib.cm as cm  # color map
import matplotlib.gridspec as gridspec
import matplotlib as mpl
import numpy as np

#dummy data
hm = np.random.randint(0, 100, size=(5, 5))

#define colors
cmap = mpl.colors.ListedColormap(['white', '#FFFFBB', '#C3FDB8', '#B5EAAA', '#64E986', '#54C571',
          '#4AA02C', '#347C17', '#347235', '#25383C', '#254117'])

#create plot frames
gs = gridspec.GridSpec(2,2, height_ratios=[6,2], width_ratios=[20,1],)
ax = plt.subplot(gs[0, 0])

#heatmap and colorbar
im = ax.pcolor(hm, cmap=cmap)
cbar = plt.colorbar(im, cax=plt.subplot(gs[1]))

plt.show()

heatmap

相关问题 更多 >

    热门问题