zoukankan      html  css  js  c++  java
  • matplotlib.transforms

    来自:龙哥盟飞龙

    变换教程

    像任何图形包一样,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时会深入。

  • 相关阅读:
    HDU 1941 Justice League
    HDU 1960 Taxi Cab Scheme
    POJ 1986 Distance Queries
    UVA 11991 Easy Problem from Rujia Liu?
    sql的跟踪与Tkprof工具
    ORA04031 错误
    Oracle_spatial的空间索引
    oracle发生重启动的介绍
    expdp\impdp及exp\imp
    oracle锁
  • 原文地址:https://www.cnblogs.com/keye/p/8681346.html
Copyright © 2011-2022 走看看