利用matplotlib和cmaps根据已有的colormap,重新定义colormap
算法网上这哥们总结的还可以[1] ,但是使用matplotlib自定义colormap自己掌握的还不够,写在这里
希望达到的目标
- 使用什么样的颜色,可以自己定义
- 方便的调用其他人的色标, 使用一部分colormap
具体的步骤
- 首先申明利用cmaps和matplotlib两个库
import cmaps import matplotlib as mpl
- 利用cmaps调用ncl的colormap, ,这一步是取得ncl中的一个降水的18值的colormap[2]
cc = cmaps.precip3_16lev_r
- 获取这个色标中的每个颜色
colors = mpl.cm.get_cmap(ccc) col = colors(np.linspace(0, 1, 18))
- 利用得到的颜色创建新的色标
cccc = mpl.colors.ListedColormap([col[0],'brown', col[1], col[3],col[4],col[6], col[8],'white'])
- 正常使用这个新创建的色标cccc