matplotlib 组织图表的方式

最上层是一个 Figure 实例,包含了所有可见的和其他一些不可见的内容。该 Figure 实例包含了一个 Axes 实例的成员属性 Figure.axes,同时也有一个访问器方法来获取 Axes 实例 get_axes()。Axes 实例几乎包含了我们所关心的所有东西,如所有的线、点、刻度和标签。因此,当调用 plot() 方法时,就会向 Axes.lines 列表添加一个线条的实例(matplotlib.lines.Line2D)。如果调用 hist() 方法绘制了一个直方图,就会向 Axes.patches 列表中添加许多矩形。

Axes 实例也包含了 XAxis 和 YAxis 实例的引用,分别指向相应的x轴和y轴。XAxis 和 YAxis 管理坐标轴、标签、刻度、刻度标签、定位器、和格式器的绘制,我们可以通过 Axes.xaxis 和 Axes.yaxis 分别XAxis和YAxis。

在 matplotlib 中,整个图像为一个 Figure 对象。在 Figure 对象中可以包含一个或者多个 Axes 对象。每个 Axes(ax)对象都是一个拥有自己坐标系统的绘图区域。如下图:

下面以一个直线图来详细讲解图像内部各个组件的内容,其中,Title为图像标题,Label为坐标轴的标注,Tick为刻度线,Tick Label为刻度注释。这些对象的关系如右图所示。

图像中所有对象均来自Artist基类。

一个 Figure 意味着用户交互的整个窗口,在这个 Figure 中容纳这 subplots

当我们调用 plot() 时,matplotlib 会调用 gca() 获取当前的 axes 绘图区域,而且 gca() 反过来调用 gcf() 来获得当前的 figure。如果 figure 为空,它会自动调用 figure() 生成一个 figure,严格来讲,是生成 subplots(111)

matplotlib -- 基础知识的更多相关文章

  1. Matplotlib基础知识

    Matplotlib基础知识 Matplotlib中的基本图表包括的元素 x轴和y轴 axis水平和垂直的轴线 x轴和y轴刻度 tick刻度标示坐标轴的分隔,包括最小刻度和最大刻度 x轴和y轴刻度标签 ...

  2. matplotlib基础知识全面解析

    图像基本知识: 通常情况下,我们可以将一副Matplotlib图像分成三层结构: 1.第一层是底层的容器层,主要包括Canvas.Figure.Axes: 2.第二层是辅助显示层,主要包括Axis.S ...

  3. Matplotlib基础使用

    matplotlib 一.Matplotlib基础知识 Matplotlib中的基本图表包括的元素 x轴和y轴 axis 水平和垂直的轴线 x轴和y轴刻度 tick 刻度标示坐标轴的分隔,包括最小刻度 ...

  4. Python 基础知识(一)

    1.Python简介 1.1.Python介绍 python的创始人为吉多·范罗苏姆(Guido van Rossum).1989年的圣诞节期间,吉多·范罗苏姆(中文名字:龟叔)为了在阿姆斯特丹打发时 ...

  5. 关于图计算&图学习的基础知识概览:前置知识点学习(Paddle Graph Learning (PGL))

    关于图计算&图学习的基础知识概览:前置知识点学习(Paddle Graph Learning (PGL)) 欢迎fork本项目原始链接:关于图计算&图学习的基础知识概览:前置知识点学习 ...

  6. .NET面试题系列[1] - .NET框架基础知识(1)

    很明显,CLS是CTS的一个子集,而且是最小的子集. - 张子阳 .NET框架基础知识(1) 参考资料: http://www.tracefact.net/CLR-and-Framework/DotN ...

  7. RabbitMQ基础知识

    RabbitMQ基础知识 一.背景 RabbitMQ是一个由erlang开发的AMQP(Advanced Message Queue )的开源实现.AMQP 的出现其实也是应了广大人民群众的需求,虽然 ...

  8. Java基础知识(壹)

    写在前面的话 这篇博客,是很早之前自己的学习Java基础知识的,所记录的内容,仅仅是当时学习的一个总结随笔.现在分享出来,希望能帮助大家,如有不足的,希望大家支出. 后续会继续分享基础知识手记.希望能 ...

  9. selenium自动化基础知识

    什么是自动化测试? 自动化测试分为:功能自动化和性能自动化 功能自动化即使用计算机通过编码的方式来替代手工测试,完成一些重复性比较高的测试,解放测试人员的测试压力.同时,如果系统有不份模块更改后,只要 ...

随机推荐

  1. Thinkphp整合阿里云OSS图片上传实例

    Thinkphp3.2整合阿里云OSS图片上传实例,图片上传至OSS可减少服务器压力,节省宽带,安全又稳定,阿里云OSS对于做负载均衡非常方便,不用传到各个服务器了 首先引入阿里云OSS类库 < ...

  2. python3下同时取得exe、zip和chm下载地址

    from selenium import webdriverimport osimport timeimport re cur_path=os.getcwd() #得到程序的当前目录str_file= ...

  3. webpack代理解决跨域问题

    new WebpackDevServer(webpack(config), { hot:hot, inline: true, compress: true, //去掉真实ip的检测 disableHo ...

  4. PyCharm 服务器激活地址

    http://www.cnblogs.com/littlehb/p/7784517.html

  5. Java好的的工具类:JsonUtils

    package com.nxhfzx.gdshopping.utils; import java.util.List; import com.fasterxml.jackson.core.JsonPr ...

  6. Android转换集合数据(ArrayList)为Json格式并上传服务器

    使用Gson上传集合数据到服务器,1.最外层用 ArrayMap<String, Object> 封装:2.通过  mRequestParam.put("cmdLineIds&q ...

  7. 2017.2.6Redis连接问题排查

    现象:早8:15起开始收到redis主从不停切换的报警短信,某系统连接流控redis报超时. 排查:1.查看zabbix,看流控系统的redis服务器是否正常——正常: 2.查看redis监控,red ...

  8. pyqgis学习

    1. 错误:ImportError: No module named qgis.core解决方法:python的qgis,初始化变量:D:\PROGRA~1\QGIS3~1.0\OSGeo4W.bat ...

  9. 前端(HTML)初始

    一.用socket实现HTML的原理 import socket sk = socket.socket() sk.bind(('127.0.0.1',8080)) sk.listen() while ...

  10. spring项目启动时执行任务

    https://www.jianshu.com/p/745868a34379