一个绘图对象(figure)可以包含多个轴(axis),在Matplotlib中用轴表示一个绘图区域,可以将其理解为子图。上面的第一个例子中,绘图对象只包括一个轴,因此只显示了一个轴(子图)。我们可以使用subplot函数快速绘制有多个轴的图表。subplot函数的调用形式如下:

subplot(numRows, numCols, plotNum)

subplot将整个绘图区域等分为numRows行 * numCols列个子区域,然后按照从左到右,从上到下的顺序对每个子区域进行编号,左上的子区域的编号为1。如果numRows,numCols和plotNum这三个数都小于10的话,可以把它们缩写为一个整数,例如subplot(323)和subplot(3,2,3)是相同的。subplot在plotNum指定的区域中创建一个轴对象。如果新创建的轴和之前创建的轴重叠的话,之前的轴将被删除。

下面的程序创建3行2列共6个轴,通过axisbg参数给每个轴设置不同的背景颜色。

import matplotlib.pyplot as plt

for idx, color in enumerate("rgbyck"):
plt.subplot(320+idx+1, axisbg=color)
plt.show()

如果希望某个轴占据整个行或者列的话,可以如下调用subplot:

import matplotlib.pyplot as plt

plt.subplot(221) # 第一行的左图
plt.subplot(222) # 第一行的右图
plt.subplot(212) # 第二整行
plt.show()

的时候,可以通过工具栏中的Configure Subplots按钮,交互式地调节轴之间的间距和轴与边框之间的距离。如果希望在程序中调节的话,可以调用subplots_adjust函数,它有left, right, bottom, top, wspace, hspace等几个关键字参数,这些参数的值都是0到1之间的小数,它们是以绘图区域的宽高为1进行正规化之后的坐标或者长度。

最新文章

  1. MySql.Data.MySqlClient.MySqlException: Parameter ‘@maxid’ must be defined
  2. WCF学习笔记之WCF初识
  3. (转)RabbitMQ 安装和监控
  4. spring-data-redis工程
  5. Numpy之ndarray与matrix
  6. 使用VNC远程管理VPS(Centos系统)
  7. Mysql锁机制--读锁
  8. 面试挂在了 LRU 缓存算法设计上
  9. 全平台网页播放器兼容H5与Flash还带播放列表
  10. Flutter不完全安裝指南(AndroidStudio集成)
  11. java枚举(enum)
  12. Leetcode 217.存在重复元素 By Python
  13. 教你写Makefile(很全,含有工作经验的)
  14. 新浪微博 [异常问题] 414 Request-URL Too Large
  15. Mapreduce入门和优化方案
  16. springboot-33-使用maven打瘦包
  17. webpack全局引入库
  18. css 手机适配
  19. spring考试
  20. hdu 4946 凸包注意重点

热门文章

  1. 深入tornado中的TCPServer
  2. ionic2 自定义cordova插件开发以及使用 (Android)
  3. Spring Cloud 客服端负载均衡 Ribbon
  4. 扫描soa并输出所有服务方法
  5. Ajax01 什么是ajax、获取ajax对象、ajax对象的属性和方法
  6. Git添加远程库和从远程库中获取(新手傻瓜式教学)
  7. elasticsearch 不能通过9200端口访问
  8. HTMLTestRunner测试报告美化
  9. javascript中break和continue的区别
  10. VR全景智慧城市,开启“上帝视角”体验‘身临其境’