Matplotlib:给子图添加colorbar(颜色条或渐变色条)


描述

  • 当我们给图配渐变色时,常常需要在图旁边把colorbar显示出来,这里记一下当有多个子图时如何显示colorbar

操作

  • 以下操作均在Jupyter notebook中完成,且首段均有以下代码
In  [1]: %matplotlib inline
         import numpy as np
         import matplotlib.pyplot as plt
         import mpl_toolkits.mplot3d as p3d
  • 最近变懒了,下面就直接粘贴图片了 ~~
先看常规的给单个图配colorbar
  • 这种没有子图的操作特别简单,一句plt.colorbar()就搞定,
再看给子图配colorbar
下面解释这段代码:
  • 首先解释一下fig.colorbar()函数,我们看它的原型:
plt.Figure.colorbar(self, mappable, cax=None, ax=None, use_gridspec=True, **kw)
  • 它一般有以下用法:
colorbar(**kwargs)
colorbar(mappable, **kwargs)
colorbar(mappable, cax=cax, **kwargs)
colorbar(mappable, ax=ax, **kwargs)
  • 其中第一种用在没有子图的时候,也就是plt.colorbar()可以不用输入参数
  • 后面三个一般用在有子图的时候,其中上面的例子中第8行就是用的这里第4种用法,这里有一个必须的参数mappable
  • 参数mappable理解起来就是我们需要提供一个可以映射颜色的对象,这个对象就是我们作的图
  • 所以例子中6、7行我们需要获取这两个子图对象,然后将其传给colorbar()colorbar则会获取这个图所用的渐变颜色种类,之后的一个参数ax用来指示colorbar()获取到的渐变色条在哪里显示,我们设置ax=ax[0]那它就在ax[0]的区域显示,我们也可以改变渐变色条出现的位置,请对比下面和上面的区别:
  • 我们还可以给ax参数设置成多个Axes对象,这样一个色条就可以包括多个子图:
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 一、概述 深度学习的一个重要手段是训练数据和训练过程的可视化,因此,我们关于深度学习的系列介绍文章就从Matplo...
    aoqingy阅读 6,338评论 0 24
  • 1、通过CocoaPods安装项目名称项目信息 AFNetworking网络请求组件 FMDB本地数据库组件 SD...
    阳明AI阅读 16,025评论 3 119
  • 眉眼里的笑凝结在年月的某一处,白首的承诺碎成满地的玻璃,当初坚定冲动的一牵手,像对如今无尽的嘲弄,你沉默不语,你红...
    盛夏里枯萎阅读 264评论 0 0
  • 1.vhost(虚拟主机) 虚拟主机相当于一个隔离的空间,多个虚拟主机可以对不同的用户,不同的作用分割开来 2.P...
    MR_Hanjc阅读 907评论 0 0