Matplotlib 1.2中的新功能

注解

Matplotlib1.2支持python 2.6、2.7和3.1

python 3.x支持

Matplotlib1.2是第一个支持python 3.x的版本,特别是python 3.1和3.2。为了以合理的方式实现这一点,我们还必须放弃对2.6之前的Python版本的支持。

这项工作由Michael Droettboom(开普敦Python用户组)和许多其他人完成,部分由SAGE项目提供资金支持。

下面的GUI后端在python 3.x下工作:gtk3cairo、qt4agg、tkagg和macosx。其他的GUI后端还没有足够的python 3.x绑定,但是继续在python 2.6和2.7上工作,特别是qt和qtagg后端(已被弃用)。非图形用户界面后端(如PDF、PS和SVG)可以在python 2.x和3.x上工作。

依赖于Python图像库的功能(如jpeg处理)不起作用,因为Python3.x的PIL版本还不够成熟。

PGF/TIKZ后端

Peter W_rtz编写了一个后端系统,允许matplotlib将数据导出为 Latex 的绘图命令。这些可以使用pgf/tikz包由pdflatex、xelatex或lualatex处理。使用示例和文档见 Xeletex/Luamatex排版 .

../../_images/pgf_preamble.png

定位器接口

PhilipElson通过一个简单的接口公开了Tick定位器类背后的智能。例如,要获得不超过5个跨越值10和19.5的合理步骤:

>>> import matplotlib.ticker as mticker
>>> locator = mticker.MaxNLocator(nbins=5)
>>> print(locator.tick_values(10, 19.5))
[ 10.  12.  14.  16.  18.  20.]

三面图

Damon McDougall为 mplot3d 工具包称为 plot_trisurf() .

../../_images/sphx_glr_trisurf3d_0012.png

TrISURF3D

控制颜色条扩展的长度

安德鲁·道森添加了一个新的关键字参数 扩展压裂colorbar() 控制最小和最大颜色条扩展的长度。

(Source code _, pngpdf

../../_images/whats_new_1-2-1.png

数字是可挑选的

菲利普埃尔森增加了一个实验性的特点,使数字可以快速和容易地短期存储地块。pickle文件不是为长期存储而设计的,在还原另一个matplotlib版本中保存的pickle时不受支持,在从不受信任的源还原pickle时不安全。说了这句话,它们对于短期存储很有用,以便以后在Matplotlib中进行修改。

在matplotlibrc中设置默认边界框

Matplotlibrc配置文件中提供了两个新的默认值: savefig.bbox ,可以设置为“标准”或“紧密”,以及 savefig.pad_inches ,控制边界框填充。

新的箱线图功能

现在,用户可以将自己的计算中值及其置信区间的方法合并到 boxplot 方法。对于传递给boxplot的每一列数据,用户可以指定伴随的中位数和置信区间。

../../_images/sphx_glr_boxplot_demo_0031.png

盒形图DEMO3

新的RC参数功能

Matthew Emmett添加了一个函数和一个上下文管理器来帮助管理rc参数: rc_file()rc_context . 从文件加载rc参数:

>>> mpl.rc_file('mpl.rc')

临时使用RC参数:

>>> with mpl.rc_context(fname='mpl.rc', rc={'text.usetex': True}):
>>>     ...

流线图

Tom Flannaghan和Tony Yu添加了一个新的 streamplot() 函数绘制矢量场的流线。这是一个长期被要求的特性,并补充了现有的 quiver() 用于绘制向量场的函数。除了简单地绘制矢量场的流线, streamplot() 允许用户将流线的颜色和/或线条宽度映射到单独的参数,例如矢量场的速度或局部强度。

../../_images/sphx_glr_plot_streamplot_0012.png

情节流线图

新的历史功能

Nic Eggert添加了一个新的 堆叠的 克瓦格 hist() 这允许使用任何一种柱状图类型来创建堆积柱状图。以前,只有使用 barstacked 柱状图类型。现在,什么时候 stacked=True 传递给函数后,任何柱状图类型都可以进行叠加。这个 barstacked 为了向后兼容,柱状图类型保留了它以前的功能。

已更新的已发货依赖项

随Matplotlib一起提供的下列依赖项(可选与Matplotlib一起安装)已更新:

  • pytz 2012D
  • dateutil 在Python2.x上为1.5,
    以及Python3.x上的2.1

三色图中以面为中心的颜色

伊恩托马斯扩展 tripcolor() 允许为每个三角形面而不是三角测量中的每个点指定一个颜色值。

../../_images/sphx_glr_tripcolor_demo_0011.png

TrPiLooDemo

填充轮廓图中的填充图案,带有图例

菲尔·埃尔森增加了对孵化的支持 contourf() 以及使用图例识别轮廓范围的能力。

../../_images/sphx_glr_contourf_hatching_0011.png

轮廓线图案填充

Matplotlib 1.2版本中的已知问题

  • 将qt4agg后端与ipython 0.11或更高版本一起使用时,将不会显示保存对话框。这应该在将来的ipython版本中修复。