使用此代码,我不知道如何自定义颜色条。在此webiste上的颜色Map表不能满足我。
shade = m.contourf(Lon,Lat,TBB,np.arange(-90, -20, 10),extend='both',cmap=plt.cm.get_cmap('jet')) m.colorbar(shade)
我想画一张这样的画,有明显的颜色条。那么,我应该怎么做?
qnzebej01#
您可以使用matplotlib.colors.LinearSegmentedColormap()或matplotlib.colors.ListedColormap()定义自己的色彩Map表并将其用于绘图。范例:
matplotlib.colors.LinearSegmentedColormap()
matplotlib.colors.ListedColormap()
import numpy as np; np.random.seed(0) import matplotlib.pyplot as plt import matplotlib.colors x = np.arange(0,25) a = np.random.randint(0,130, size=(25,25))-115 a = np.sort(a).reshape(25,25) colors = ["#eaa941", "#efef39", "#53a447", "#3b387f", "#48a2ba"] cmap= matplotlib.colors.ListedColormap(colors) cmap.set_under("crimson") cmap.set_over("w") norm= matplotlib.colors.Normalize(vmin=-100,vmax=-0) fig, ax = plt.subplots() im = ax.contourf(x,x,a, levels=[-100,-80,-60,-40,-20,0], extend='both',cmap=cmap, norm=norm) fig.colorbar(im, extend="both") plt.show()
rsl1atfo2#
看起来很像spectral颜色Map表,它在matplotlib页面上给出。
spectral
matplotlib
2条答案
按热度按时间qnzebej01#
您可以使用
matplotlib.colors.LinearSegmentedColormap()
或matplotlib.colors.ListedColormap()
定义自己的色彩Map表并将其用于绘图。范例:
rsl1atfo2#
看起来很像
spectral
颜色Map表,它在matplotlib
页面上给出。