fig = plt.figure('多图', (10, 10), dpi=80) #第一个指定窗口名称,第二个指定图片大小,创建一个figure对象
plt.subplot(222) #2*2的第二个
plt.axis([0, 6, 0, 20]) #指定坐标轴范围
t = np.arange(0, 5, 0.2)
plt.plot(t, t, 'r--', t, t**2, 'bs', t, t**3, 'g^') #可以连着写多个 plt.subplot(221) #2*2第一个,这句下面直接写绘图语句和设置语句
x = np.arange(-10, 10, 0.01)
y = np.exp(-x)*np.cos(2*np.pi*x)
plt.plot(x, y, 'r')
plt.xlim([-10, 10]) plt.show()
fig.savefig('linshi.png') #保存figure

2

源自 matplotlib subplot 子图 - Claroja - CSDN博客 http://blog.csdn.net/claroja/article/details/70841382

如果不指定figure()的axes,figure(1)命令默认会被建立,同样的如果不指定subplot(numrows, numcols, fignum)的轴axes,subplot(111)也会自动建立。这里,要注意一个概念当前图和当前坐标。所有绘图操作仅对当前图和当前坐标有效

当前的图表和子图可以使用plt.gcf()和plt.gca()获得,分别表示"Get Current Figure"和"Get Current Axes"。plt.sca (ax1)可以使ax1成为当前axes对象

plt.figure('第一个')  # 创建第一个画板(figure)
plt.subplot(211) # 第一个画板的第一个子图
plt.plot([1, 2, 3], [1, 2, 3])
plt.subplot(212) # 第一个画板的第二个子图
plt.plot([4, 5, 6], [1, 2, 3]) plt.figure('第二个') # 创建第二个画板
plt.plot([4, 5, 6], [1, 2, 3]) # 默认子图命令是spbplot(111) plt.figure('第一个') # 如果想对画板1操作,需调取画板1,此时调用中的子图是subplot(212)
plt.subplot(211) # 将调用中的子图变为subplot(211)
plt.title('Easy as 1, 2, 3')
plt.show()

要想重新设置,必须重新调用

3

源自 matplotlib subplot 子图 - Claroja - CSDN博客 http://blog.csdn.net/claroja/article/details/70841382

subplot()是将整个figure均等分割,而axes()则可以在figure上画图。

"""axes的使用"""

import matplotlib.pyplot as plt
import numpy as np # 创建数据
dt = 0.001
t = np.arange(0.0, 10.0, dt)
r = np.exp(-t[:1000]/0.05) # impulse response
x = np.random.randn(len(t)) # 从标准正太分布中返回len(t)个随机数
s = np.convolve(x, r)[:len(x)] * dt # colored noise
# 默认主轴图axes是subplot(111)
plt.plot(t, s)
plt.axis([0, 1, 1.1*np.amin(s), 2*np.amax(s)])
plt.xlabel('time(s)')
plt.ylabel('current(nA)')
plt.title('Gaussian colored noise')
# 内嵌图
a = plt.axes([.65, .6, .2, .2], facecolor='y')
# Add an axes to the figure,第一个参数是指定axes的位置和高度,[距左距离,距底距离,宽,高],都是0-1之间,按比例表示
n, bins, patches = plt.hist(s, 400, normed=1)
plt.title('probability')
plt.xticks([]) # 不显示坐标轴标签
plt.yticks([])
# 另外一个内嵌图
b = plt.axes([0.2, 0.6, .2, .2], facecolor='y')
plt.plot(t[:len(r)], r)
plt.title('Impulse response')
plt.xlim(0, 0.2)
plt.xticks([])
plt.yticks([])
plt.show()

可以通过clf()清空当前的图板(figure),通过cla()来清理当前的轴(axes)。你需要特别注意的是记得使用close()关闭当前figure画板

最新文章

  1. css3实现的动画效果
  2. spring aop实现
  3. BZOJ2002 [Hnoi2010]Bounce 弹飞绵羊
  4. Oracle 数据整理
  5. 在SQL语言中,join什么时候用,什么时候不用啊?请高手举例解释一下。谢谢
  6. PHP 魔术方法 __sleep __wakeup(四)
  7. Logstash add_field 参数应用
  8. sql语句的分类
  9. A Game of Thrones(5) - Jon
  10. BZOJ 3160: 万径人踪灭 [fft manacher]
  11. 使用Java API连接和操作HBase数据库
  12. 关于一些没做出来的SBCF题
  13. ios 中pickerView城市选择和UIDatePicker生日选择
  14. KVM安装、镜像创建(一)
  15. Codeforces Round #407 (Div. 2)A B C 水 暴力 最大子序列和
  16. spring cloud 之 Feign的使用
  17. 【洛谷P1983】车站分级
  18. C++11中decltype的使用
  19. 【Java TCP/IP Socket】基于线程池的TCP服务器(含代码)
  20. 多人即时战斗游戏服务端系列[2]--90坦克Online游戏对象介绍以及渲染机制

热门文章

  1. [ACM] FZU 2086 餐厅点餐 (枚举)
  2. MTP(Media Transfer Protocol(媒体传输协议))简介
  3. Socket 进行发送
  4. 实际用户ID,有效用户ID,保存的设置用户ID
  5. tomcat启动后,页面浏览时报错 Unable to compile class for JSP的解决方案
  6. Android无线测试之—UiAutomator UiScrollable API介绍五
  7. java基础---->string字面量的使用
  8. Java基础ArrayList、Servlet与Filter
  9. wordpress 忘记密码
  10. centos 7.5 最小化安装