来自:龙哥盟飞龙

变换教程

像任何图形包一样,matplotlib建立在变换框架之上,以便在坐标系,用户数据坐标系,轴域者坐标系,图形坐标系和显示坐标系之间轻易变换。在95%的绘图中,你不需要考虑这一点,因为他发生在背后,但随着你接近自定义图形生成的极限,它有助于理解这些对象,以便可以重用matplotlib提供给你的现有变换,或者创建自己的变换(见matplotlib.transforms)。下表总结现有的坐标系,你应该在该坐标系中使用的变换对象,以及该系统的描述。在变换对象一系列中,ax是Axes实例,fig是一个图形实例。

上表中的所有变换对象都接受以其坐标系为单位的输入,并将输入变换到显示坐标系。这就是为什么显示坐标系没有变换对象的原因,它已经以显示坐标为单位了。变换也知道如何反转自身,从显示返回自身的坐标系。 这在处理来自用户界面的事件(通常发生在显示空间中),并且你想知道数据坐标系中鼠标点击或按键按下的位置特别有用。

数据坐标

每当向轴域添加数据时,matplotlib会更新数据对象,set_xlim()和set_ylim()方法最常用于更新。例如,在下图中,数据的范围在x轴上为从0到10,在y轴上为从-1到1。

可以使用ax.transData实例将数据变换为显示坐标系,无论是单个点或是一系列点,如下所示:

可以使用inverted()方法创建一个变换,从显示坐标变换为数据坐标:

窗口大小或dpi设置不同,显示坐标的确切值可能会有所不同。同样,在下面的图形中,在ipython会话中,由显示标记的点可能并不相同,因为文档图形大小默认值是不同的。

当你更改轴的x或y的范围时,将更新数据范围,以便变换生成新的显示点。注意,当我们只是改变ylim,只有y显示坐标改变,当我们改变xlim也同理。我们在谈论Bbox时会深入。

matplotlib.transforms的更多相关文章

  1. Getting the pixel coordinates of text or ticks in matplotlib

    The exact pixel coordinates of title, labels, legends or ticks are important information for the tra ...

  2. python使用matplotlib绘制折线图教程

    Matplotlib是一个Python工具箱,用于科学计算的数据可视化.借助它,Python可以绘制如Matlab和Octave多种多样的数据图形.下面这篇文章主要介绍了python使用matplot ...

  3. python 数据可视化(matplotlib)

    matpotlib 官网 :https://matplotlib.org/index.html matplotlib 可视化示例:https://matplotlib.org/gallery/inde ...

  4. 绘图:Matplotlib

    用于绘制一些数据图,同学推荐的,挺好用.非常好的官网文档:http://matplotlib.org/contents.html 0. 安装 可以直接pip install,还有一些依赖就按照提示来吧 ...

  5. 基于matplotlib的数据可视化 -

    matplotlib.pyplot(as mp or as plt)提供基于python语言的绘图函数 引用方式: import matplotlib.pyplot as mp / as plt 本章 ...

  6. Matplotlib API汉化

    Pyplot API 示例汇总:https://matplotlib.org/gallery/index.html#api-examples 该matplotlib.pyplot模块包含的功能允许您快 ...

  7. 1.4 Matplotlib:绘图

    sklearn实战-乳腺癌细胞数据挖掘 https://study.163.com/course/introduction.htm?courseId=1005269003&utm_campai ...

  8. matplotlib作图——plot() 线图

    线图 #定义 matplotlib.pyplot.plot() plot([x], y, [fmt], data=None, **kwargs) plot([x], y, [fmt], [x2], y ...

  9. Python之matplotlib库

    知识结构 pyplot.plot()流程 1. _axes.py中plot()函数说明 a. 调用说明 plot([x], y, [fmt], data=None, **kwargs)       p ...

随机推荐

  1. 跨域的根本原因:JavaScript 的同源策略

    摘自:https://blog.csdn.net/liubo2012/article/details/43148705 同源策略限制了一个源(origin)中加载文本或脚本与来自其它源(origin) ...

  2. 在linux中安装memcache服务器

    挂载光盘   mkdir -p /media/cdrom   mount /dev/cdrom /media/cdrom   设置yum cd /etc/yum.repos.d/ mv CentOS- ...

  3. MyEclipse如何修改XML文件默认打开的编辑器

    1.MyEclipse如何修改XML文件默认打开的编辑器 Windows--->Preferences--->General--->Editors--->File Associ ...

  4. Netty1

    基于Netty4的HttpServer和HttpClient的简单实现 Netty的主页:http://netty.io/index.html 使用的Netty的版本:netty-4.0.23.Fin ...

  5. 基础选择器,长度与颜色,标签display,嵌套关系,盒模型,盒模型布局

    css基础选择器 # *(统配选择器): 控制html, body,以及body下所有用于显示的标签 # div(标签选择器): 该标签名对应的所有该标签 # .(class选择器)(eg: .div ...

  6. Hacker

    https://hackertarget.com/nikto-website-scanner/

  7. linux如何管理物理内存?

    Linux kernel version: 5.0.1 arm64 1.将物理内存划分为若干页,每页的大小为4KiB(可以为8KiB或16KiB),那么如何知道每个页当前是什么情况呢? 那就需要一个结 ...

  8. php高级开发参考地址

    高级开发 : http://www.cnblogs.com/bananaplan/p/The-Right-Way-For-PHPer.html

  9. Git 命令收集

    目录 1.清理恢复 2.回滚,reset与revert的区别 3.merge,rebase,cherry-pick区别 4.删除不存在对应远程分支的本地分支 5.git pull,git push 报 ...

  10. Dockerfile 收集

    Dockerfile 收集 1.最基础的oracle-jdk FROM centos:7.2.1511 MAINTAINER hongdada "hongdaqi159505@gmail.c ...