1.4.x中的变化¶
代码更改¶
对axes模块进行了主要的重构。轴模块已拆分为更小的模块:
有一些东西不存在于 axes
模块的命名空间已不复存在。如果使用它们,则需要从原始位置导入它们:
math
->import math
ma
->from numpy import ma
cbook
->from matplotlib import cbook
docstring
->from matplotlib import docstring
is_sequence_of_strings
->from matplotlib.cbook import is_sequence_of_strings
is_string_like
->from matplotlib.cbook import is_string_like
iterable
->from matplotlib.cbook import iterable
itertools
->import itertools
martist
->from matplotlib import artist as martist
matplotlib
->import matplotlib
mcoll
->from matplotlib import collections as mcoll
mcolors
->from matplotlib import colors as mcolors
mcontour
->from matplotlib import contour as mcontour
mpatches
->from matplotlib import patches as mpatches
mpath
->from matplotlib import path as mpath
mquiver
->from matplotlib import quiver as mquiver
mstack
->from matplotlib import stack as mstack
mstream
->from matplotlib import stream as mstream
mtable
->from matplotlib import table as mtable
作为实现qt5支持的重构的一部分,模块
matplotlib.backends.qt4_compat
重命名为matplotlib.backends.qt_compat
.qt4_compat
在1.4中已弃用,将在1.5中删除。这个
errorbar()
方法已更改,使上限和下限( 洛利姆斯 , 上行链路 , 西洛里斯 , 许普林 )现在指向正确的方向。这个 fmt 克沃格
errorbar()
现在支持字符串“none”来禁止绘制直线和标记;使用 None 对象已弃用。违约 fmt 值更改为空字符串(“”),因此行和标记由plot()
默认值。在字体的路径效果呈现中修复了一个错误,这意味着字体大小与非路径效果字体一致。更多详情请参见https://github.com/matplotlib/matplotlib/issues/2889。
Sphinx 的扩展
ipython_directive
和ipython_console_highlighting
已经被转移到ipython项目本身。虽然他们在Matplotlib中保留了这个版本,但是他们已经被否决了。在中更新扩展名conf.py
指向IPython.sphinxext.ipython_directive
而不是matplotlib.sphinxext.ipython_directive
.在
matplotlib.finance
,几乎所有函数都已弃用,并替换为一对函数名。*_ochl
和*_ohlc
. 前者是本模块之前使用的报价的“开盘-收盘-高-低”顺序,后者是财务标准的“开盘-高-低-收盘”顺序。为了保持一致性,
face_alpha
关键字到matplotlib.patheffects.SimplePatchShadow
已弃用,赞成alpha
关键字。同样,关键字offset_xy
现在命名为offset
跨越所有AbstractPathEffect
Smatplotlib.patheffects._Base
已重命名为matplotlib.patheffects.AbstractPathEffect
.matplotlib.patheffect.ProxyRenderer
已重命名为matplotlib.patheffects.PathEffectRenderer
现在是一个完整的renderBase子类。这位艺术家曾画过
Figure.colorbar
已从matplotlib.lines.Line2D
到matplotlib.patches.Polygon
因此colorbar.ColorbarBase.outline
现在是matplotlib.patches.Polygon
对象。图例处理程序接口已从可调用更改为实现
legend_artists
方法(折旧阶段将在v1.4中看到该接口的维护)。见 图例指南 更多详情。进一步的图例更改包括:matplotlib.axes.Axes._get_legend_handles
现在返回句柄的生成器,而不是列表。- 这个
legend()
函数的 loc 位置参数已被弃用。使用 loc 取而代之的是关键字参数。
这个
rcParams["savefig.transparent"]
(default:False
) 已添加以在保存数字时控制默认透明度。稍微重构
Annotation
家庭。文本位置在Annotation
现在完全由Text
对象如此.set_position
按预期工作。属性 木文 和 文本框 已弃用,赞成 西恩 和 anncoords公司 以便Annotation
和AnnotationBbox
可以共享一个合理命名的通用API来获取/设置文本或框的位置。- 西恩 ->设置注释的位置
- xy ->设置箭头指向的位置
- anncoords公司 ->设置注释位置的单位
- 木栓 ->设置点位置的单位
set_position()
>Annotation
仅设置批注位置
matplotlib.mlab.specgram
,matplotlib.mlab.psd
,matplotlib.mlab.csd
,matplotlib.mlab.cohere
,matplotlib.mlab.cohere_pairs
,matplotlib.pyplot.specgram
,matplotlib.pyplot.psd
,matplotlib.pyplot.csd
和matplotlib.pyplot.cohere
现在在先前引发断言错误的地方引发ValueError。为了
matplotlib.mlab.psd
,matplotlib.mlab.csd
,matplotlib.mlab.cohere
,matplotlib.mlab.cohere_pairs
,matplotlib.pyplot.specgram
,matplotlib.pyplot.psd
,matplotlib.pyplot.csd
和matplotlib.pyplot.cohere
,在返回shape(n,1)数组的情况下,现在将其转换为(n,1)数组。以前,(n,m)数组被平均为(n,1)数组,但是(n,1)数组没有变化。此更改使两种情况下的尺寸保持一致。增加了
rcParams["axes.formatter.useoffset"]
(default:True
) 控制的默认值 使用偏移 在里面ticker.ScalarFormatter
补充
Formatter
子类StrMethodFormatter
哪一个和FormatStrFormatter
,但用于新样式的格式字符串。已弃用
matplotlib.testing.image_util
唯一的功能是,matplotlib.testing.image_util.autocontrast
. 这些将在v1.5.0中完全删除。这个
fmt
的参数plot_date()
已从更改bo
只是o
,因此默认情况下可以进行颜色循环。删除了类
FigureManagerQTAgg
弃权NavigationToolbar2QTAgg
将在1.5中删除。已删除以前的公共(无前缀)属性
rect
和drawRect
从FigureCanvasQTAgg
它们始终是drawRectangle()
功能。函数签名
tight_bbox.adjust_bbox
和tight_bbox.process_figure_for_rasterizing
已更改。一个新的 fixed_dpi 参数允许重写figure.dpi
设置而不是尝试从文件格式推断预期行为。添加了对水平/垂直轴填充的支持
mpl_toolkits.axes_grid1.axes_grid.ImageGrid
---论点 axes_pad 如果需要单独的轴填充,现在可以像元组一样。保留原始行为。添加了对
matplotlib.transforms.Affine2D
,可以使用skew
和skew_deg
方法。添加顺时针参数以控制扇区方向
axes.Axes.pie
在
matplotlib.lines.Line2D
这个 市场化的 功能已扩展。以前可以使用两元素列表或两元素元组来指定整数起始索引和步幅长度。现在这只能用两个元素的元组来实现。如果使用两个元素的列表,那么它将被视为NumPy花式索引,并且只显示与给定索引对应的两个标记。远离的 prop 关键字参数来自
mpl_toolkits.axes_grid1.anchored_artists.AnchoredSizeBar
call. It was passed through to the base-class ``_ _inituU``且仅用于设置填充。现在 字体属性 (这是真正用来设置字体属性的AnchoredSizeBar
)通过代替 prop . 如果 字体属性 不是传进来的,但是 prop 是,那么 prop 用来代替 字体属性 . 如果两个都被传进来, prop 被静默地忽略。在中使用索引0
pyplot.subplot
和相关命令已弃用。由于缺乏有效性plt.subplots(2, 2, 0)
不引发异常,但将轴放入 _last_ 位置。这是由于子块中的索引是基于1的(以镜像matlab),因此在索引到GridSpec
对象,用于确定轴的方向,减去1。传入0将导致传入-1到GridSpec
这就导致了最后一个位置的恢复。尽管这种行为显然是错误的,并不是有意的,但我们仍在经历一个不可预测的循环,我们非常谨慎地认为任何用户都在利用这个“特性”。使用0作为索引将在1.4中引发警告,在1.5中引发异常。默认情况下,剪裁在偏移框上处于关闭状态。
Matplotlib现在使用一个不太激进的调用
gc.collect(1)
当关闭数字以避免内存中大量用户对象的严重延迟时。默认剪辑值为 all 饼图艺术家现在默认为
False
.
代码删除¶
- 远离的
mlab.levypdf
. 这部法典产生了一个纽比错误(而且已经有很长一段时间了),并且不是征税分配的标准形式。scipy.stats.levy
应该改为使用