1.3.x中的变化

1.3.1中的变更

我们很少在bugfix版本中进行API更改,但是对于1.3.1,自1.3.0以来,进行了以下更改:

  • text.Text.cached (用于缓存字体对象)已变为私有变量。在明显的封装好处中,这从文档中删除了这个看起来令人困惑的成员。
  • 方法 hist() 现在总是以类型数组的形式返回垃圾箱占用情况 float . 以前,它有时是一个类型的数组 int ,取决于通话。

代码删除

  • 以下在1.2版或更早版本中被否决的项现在已被完全删除。

    • qt 3.x后端 (qtqtagg )为了方便Qt 4.x后端的使用,已将其移除。 (qt4qt4agg

    • Fltkagg和EMF后端已被移除。

    • 这个 matplotlib.nxutils 模块已被移除。在上使用功能 matplotlib.path.Path.contains_point 而是朋友。

    • 而不是 axes.Axes.get_frame 使用 axes.Axes.patch .

    • 的以下关键字参数 legend 函数已重命名:

      • pad > 边界焊盘
      • 拉贝塞普 > 标签间距
      • 汉德伦 > 手长
      • 手抄本9月 > 手持插件
      • 斧头垫 > 边界轴焊盘

      与此相关,已删除以下RCPARAM:

      • legend.pad,
      • legend.labelsep,
      • legend.handlelen,
      • legend.handletextsep
      • legend.axespad
    • 对于 hist 函数,而不是 宽度 使用 宽度 (相对宽度)。

    • patches.Circle , the 分辨率 关键字参数已被删除。对于由线段组成的圆,请使用 patches.CirclePolygon .

    • WX后端中的打印功能已被删除,这是因为它们需要保持最新。

    • mlab.liaupunov 已删除。

    • mlab.savemlab.loadpylab.savepylab.load 已被删除。我们建议使用 numpy.savetxtnumpy.loadtxt 相反。

    • widgets.HorizontalSpanSelector 已删除。使用 widgets.SpanSelector 相反。

代码取消预测

代码更改

  • Patch 现在完全支持使用rgba值 facecoloredgecolor 属性,使面和边具有不同的alpha值。如果 Patch 对象的 alpha 属性设置为除 None ,该值将覆盖面颜色和边颜色中的任何alpha通道值。以前,如果 Patchalpha=None ,的alpha分量 edgecolor 将应用于边和面。

  • 可选的 isRGB 参数 set_foreground() (以及从中派生的其他GraphicContext类)已重命名为 isRGBA ,现在只应设置为 True 如果 fg 颜色参数是已知的rgba元组。

  • 为了 Patch , the capstyle 现在用的是 butt ,与大多数其他对象的默认值一致,并避免非实体的问题 linestyle 使用大尺寸 linewidth . 以前, Patch 习惯于 capstyle='projecting' .

  • Path 对象现在可以标记为 只读 旁路 readonly=True 它的构造函数。内置路径单件,通过 Path.unit* 类方法返回只读路径。如果您有修改这些内容的代码,您将需要先制作一个deepcopy,使用:

    import copy
    path = copy.deepcopy(Path.unit_circle())
    
    # or
    
    path = Path.unit_circle().deepcopy()
    

    深拷贝A Path 始终创建可编辑的(即非只读) Path .

  • 名单 Path.NUM_VERTICES 已被字典替换,该字典将路径代码映射到处的预期顶点数 NUM_VERTICES_FOR_CODE .

  • 要支持XKCD样式的绘图,请 matplotlib.path.cleanup_path 方法的签名已更新为需要草图参数。用户 matplotlib.path.cleanup_path 鼓励使用新的 cleaned() 路径法。

  • 绘图上的数据限制现在开始于具有“空”限制的状态,而不是范围(0,1)中的限制。这对仅在一个方向上控制限制的艺术家有影响,例如 axes.Axes.axvlineaxes.Axes.axhline ,因为它们的限制不再包括范围(0,1)。这修复了某些问题,其中计算的限制将取决于艺术家添加到轴的顺序。

  • 修正了设置数据位置类型的右/上脊柱位置时的错误。以前,它会在+1数据偏移处绘制右侧或顶部脊椎。

  • FancyArrow ,默认箭头宽度, head_width ,以产生可见的箭头。这个Kwarg的新价值是 head_width = 20 * width .

  • 现在可以提供 number of levels + 1 颜色的情况下 extend='both' 用于轮廓(或只是 number of levels 扩展值的颜色 minmax )这样得到的颜色图 set_underset_over 定义适当。任何其他数量的颜色将继续表现为以前(如果提供的颜色多于级别,则颜色将不使用)。同样的变化也适用于轮廓,其中 extend='both' 将期待 number of levels + 2 颜色。

  • 一个新的关键词 扩展码 在里面 colorbar()ColorbarBase 允许控制颜色条扩展的形状。

  • 扩展 MultiCursor 垂直(默认)和/或水平光标都意味着 self.line 被替换 self.vline 用于垂直光标线条和 self.hline 为水平光标行添加。

  • 在POSIX平台上, report_memory() 功能提升 NotImplementedError 而不是 OSError 如果 ps 无法运行命令。

  • 这个 matplotlib.cbook.check_output 函数已移动到 matplotlib.compat.subprocess .

配置和RCPARAM

  • 在Linux上,特定于用户的 matplotlibrc 配置文件现在位于 ~/.config/matplotlib/matplotlibrc 遵守 XDG Base Directory Specification .
  • 这个 font.* RCPARAM现在只影响在设置了RCPARAM之后创建的文本对象,并且不会对已经存在的文本对象进行追溯。这使它们的行为与大多数其他RCPARAM一致。
  • 取消调用 grid() 在里面 matplotlib.pyplot.plotfile . 要绘制轴网格,请设置 axes.grid RCPARAM True ,或显式调用 grid() .