由于自己画图的需要想要用一些自定义的颜色来做一个colorbar,但是发现网上的资料要么是基于matplotlib中自带的cmap颜色进行绘制colorbar,不好自定义颜色;要么就是一些复杂的函数或是大片文字,没有看下去的耐心QAQ。所以我就想有没有简单的方式可以实现自定义颜色的效果呢?经过一些实验,发现可以用一些简单的方法达成以下的效果。
代码如下:
import matplotlib.pyplot as plt fig=plt.figure(figsize=(10,10)) plt.axis('on') cax = plt.axes([0.68, 0.34,0.015, 0.15]) cax.fill_between([0,0.5],0.5,color='#60d394') cax.fill_between([0,0.5],0.5,1,color='#fe7f2d') cax.fill_between([0,0.5],1,1.5,color='#d00000') cax.fill_between([0,0.5],1.5,2,color='#8a0d0d') cax.set_ylim(0,2) cax.set_xticks([]) cax.set_yticks([0,0.5,1.0,1.5,2.0]) cax.set_yticklabels([0,1.5,1.8,2.0,'Max'],fontsize=15) cax.yaxis.tick_right() plt.show()
注:在实际绘图中colorbar 的位置可能需要多次调试才能达到想要的位置。