1.3.x中的变化¶
1.3.1中的变更¶
我们很少在bugfix版本中进行API更改,但是对于1.3.1,自1.3.0以来,进行了以下更改:
代码删除¶
以下在1.2版或更早版本中被否决的项现在已被完全删除。
qt 3.x后端 (
qt
和qtagg
)为了方便Qt 4.x后端的使用,已将其移除。 (qt4
和qt4agg
)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.save
,mlab.load
,pylab.save
和pylab.load
已被删除。我们建议使用numpy.savetxt
和numpy.loadtxt
相反。widgets.HorizontalSpanSelector
已删除。使用widgets.SpanSelector
相反。
代码取消预测¶
Cocoaagg后端已经被弃用,有可能在将来的版本中被删除或恢复。
中的顶级功能
matplotlib.path
在C++中实现的从来都不是公开的。相反,用户应该在path.Path
和collections.Collection
类。使用以下映射更新代码:point_in_path
->path.Path.contains_point
get_path_extents
->path.Path.get_extents
point_in_path_collection
->collections.Collection.contains
path_in_path
->path.Path.contains_path
path_intersects_path
->path.Path.intersects_path
convert_path_to_polygons
->path.Path.to_polygons
cleanup_path
->path.Path.cleaned
points_in_path
->path.Path.contains_points
clip_path_to_rect
->path.Path.clip_to_bbox
matplotlib.colors.normalize
和matplotlib.colors.no_norm
已弃用,赞成matplotlib.colors.Normalize
和matplotlib.colors.NoNorm
分别。这个
ScalarMappable
班set_colorbar
方法现在已弃用。取而代之的是matplotlib.cm.ScalarMappable.colorbar
应使用属性。在以前的matplotlib版本中,此属性是(colorbar_instance, colorbar_axes)
但现在只是colorbar_instance
. 要获取colorbar轴,可以使用ax
颜色条实例的属性。这个
matplotlib.mpl
模块现在已弃用。那些依赖这个模块的人应该过渡到简单地使用import matplotlib as mpl
.
代码更改¶
Patch
现在完全支持使用rgba值facecolor
和edgecolor
属性,使面和边具有不同的alpha值。如果Patch
对象的alpha
属性设置为除None
,该值将覆盖面颜色和边颜色中的任何alpha通道值。以前,如果Patch
有alpha=None
,的alpha分量edgecolor
将应用于边和面。可选的
isRGB
参数set_foreground()
(以及从中派生的其他GraphicContext类)已重命名为isRGBA
,现在只应设置为True
如果fg
颜色参数是已知的rgba元组。为了
Patch
, thecapstyle
现在用的是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()
名单
Path.NUM_VERTICES
已被字典替换,该字典将路径代码映射到处的预期顶点数NUM_VERTICES_FOR_CODE
.要支持XKCD样式的绘图,请
matplotlib.path.cleanup_path
方法的签名已更新为需要草图参数。用户matplotlib.path.cleanup_path
鼓励使用新的cleaned()
路径法。绘图上的数据限制现在开始于具有“空”限制的状态,而不是范围(0,1)中的限制。这对仅在一个方向上控制限制的艺术家有影响,例如
axes.Axes.axvline
和axes.Axes.axhline
,因为它们的限制不再包括范围(0,1)。这修复了某些问题,其中计算的限制将取决于艺术家添加到轴的顺序。修正了设置数据位置类型的右/上脊柱位置时的错误。以前,它会在+1数据偏移处绘制右侧或顶部脊椎。
在
FancyArrow
,默认箭头宽度,head_width
,以产生可见的箭头。这个Kwarg的新价值是head_width = 20 * width
.现在可以提供
number of levels + 1
颜色的情况下extend='both'
用于轮廓(或只是number of levels
扩展值的颜色min
或max
)这样得到的颜色图set_under
和set_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()
.