0.98.x 的变更#

  • psd()csd()cohere() 现在将自动将负频率分量封装到返回数组的开头。这种行为更合理,并使其与 specgram() 保持一致。之前的行为更多是疏忽而非设计决策。

  • 为设置对数刻度参数的 matplotlib.axes.Axes 方法添加了新的关键字参数 nonposxnonposy。默认仍是遮蔽非正值,但 kwargs 接受 'clip',这将导致非正值被替换为一个非常小的正值。

  • 添加了新的 matplotlib.pyplot.fignum_exists()matplotlib.pyplot.get_fignums();它们只是暴露了以前隐藏在 matplotlib._pylab_helpers 中的信息。

  • numerix 包已废弃。

  • 添加了新的 matplotlib.image.imsave() 并将其暴露给 matplotlib.pyplot 接口。

  • exceltools 中移除了对 pyExcelerator 的支持 — 请改用 xlwt

  • 将 acorr 和 xcorr 的默认值更改为使用 usevlines=True、maxlags=10 和 normed=True,因为这些是最佳默认值

  • 以下 matplotlib.legend.Legend 的关键字参数现已废弃,并引入了一组新的参数。新参数以字体大小的比例给出。此外,*scatteryoffsets*、*fancybox* 和 *columnspacing* 也作为关键字参数添加。

    已废弃

    新增

    pad

    borderpad

    labelsep

    labelspacing

    handlelen

    handlelength

    handlestextsep

    handletextpad

    axespad

    borderaxespad

  • 移除了 configobj 和实验性 traits rc 支持

  • 修改了 matplotlib.mlab.psd()matplotlib.mlab.csd()matplotlib.mlab.cohere()matplotlib.mlab.specgram(),将其单边密度按系数 2 进行缩放。此外,还可以选择按采样频率缩放密度,这可以得到真实的密度值,这些值可以通过返回的频率值进行积分。这也提供了更好的 MATLAB 兼容性。相应的 matplotlib.axes.Axes 方法和 matplotlib.pyplot 函数也已更新。

  • 字体查找现在使用最近邻方法而非精确匹配。图表中的某些字体可能有所不同,但应该更接近所请求的字体。

  • matplotlib.axes.Axes.set_xlim()matplotlib.axes.Axes.set_ylim() 现在返回 `viewlim` 数组的副本,以避免原地修改造成的意外。

  • matplotlib.afm.AFM.get_fullnamematplotlib.afm.AFM.get_familyname 不再在 AFM 文件未指定这些可选属性时引发异常,而是根据必需的 FontName 属性返回一个猜测值。

  • 修改了 matplotlib.pyplot.spy() 中的 precision kwarg;默认值为 0,字符串值 'present' 仅用于稀疏数组以显示填充位置。

  • 添加了 matplotlib.collections.EllipseCollection

  • matplotlib.pyplot.quiver() 添加了 `angles` kwarg,以更灵活地指定箭头角度。

  • 由于担心 matplotlib.mlab 中的某些 mlab2 函数并非“干净室”实现,因此将其全部废弃(引发 NotImplementedError)。

  • 方法 matplotlib.collections.Collection.get_offsets()matplotlib.collections.Collection.set_offsets() 已添加到 Collection 基类。

  • matplotlib.figure.Figure.figurePatch 重命名为 matplotlib.figure.Figure.patchmatplotlib.axes.Axes.axesPatch 重命名为 matplotlib.axes.Axes.patchmatplotlib.axes.Axes.axesFrame 重命名为 matplotlib.axes.Axes.frame。返回 matplotlib.axes.Axes.patchmatplotlib.axes.Axes.get_frame 已废弃。

  • matplotlib.contour.ContourLabeler 属性(matplotlib.pyplot.clabel() 函数)已更改,使其都具有类似 .labelAttribute 的形式。最可能被最终用户使用的三个属性 .cl.cl_xy.cl_cvalues 目前已保留(除了它们重命名后的版本),但它们已被废弃并最终将被移除。

  • matplotlib.mlabmatplotlib.cbook 中的多个函数移至单独的模块 matplotlib.numerical_methods,因为它们与 mlab 或 cbook 的最初目的无关,并且在其他地方显得更连贯。