Matplotlib 1.0中的新功能¶
Table of Contents
HTML5/Canvas后端¶
西蒙·拉特克里夫和路德维希·施瓦德发布了 HTML5/Canvas Matplotlib的后端。后端几乎完成了功能,他们已经做了很多工作,将他们的HTML5渲染图像与我们的核心渲染器agg进行了比较。后端的特点是客户端/服务器在兼容HTML5的浏览器中进行matplotlib图形的交互式导航。
复杂的子地块网格布局¶
Jae Joon Lee写过 gridspec
一个新的模块,用于进行复杂的子批次布局,具有行和列跨距等特点。见 使用GRIDSPEC和其他功能自定义图形布局 以获取教程概述。
简单的肾盂分流术¶
Fernando Perez厌倦了在使用matplotlib API时创建一个数字和多个子块所需的所有样板代码,并编写了一个 subplots()
帮助程序函数。基本用法允许您使用numpy索引(从0开始)创建图形和子批次数组。例如。::
fig, axarr = plt.subplots(2, 2)
axarr[0,0].plot([1,2,3]) # upper, left
见 基本子批次演示 对于几个代码示例。
轮廓固定和三重定位¶
伊恩·托马斯修复了一个长期存在的bug,多年来它一直困扰着我们最有才华的开发人员。 contourf()
现在处理内部遮罩区域,线条和填充轮廓的边界重合。
显示支持的多个调用¶
一个长期存在的请求是支持多个呼叫 show()
. 这很困难,因为很难在操作系统、用户界面工具包和版本之间获得一致的行为。EricFilling在合理化后端显示方面做了很多工作,其所需的行为是使Show提高所有新创建的图形并阻止执行,直到它们关闭。重复显示的调用应提高自上次调用以来新创建的数字。Eric已经对用户界面工具包、他可以访问的版本和平台进行了大量测试,但无法全部测试,因此请将问题报告给 mailing list 和 bug tracker .
MPlot3D图形可以嵌入任意轴中。¶
现在,您可以将mplot3d图形放置到任意轴位置,支持在同一个图形中混合二维和三维图形,和/或在单个图形中混合多个三维图形,使用“projection”关键字参数添加轴或添加子块。谢谢本鲁特。
tick_params¶
EricFiring编写了Tick_参数,这是一种更改Tick和Tick标签外观的方便方法。参见Pyplot函数 tick_params()
和相关轴方法 tick_params()
.
许多性能和功能增强¶
- 大图像的快速放大,以及放大到单个像素的能力
- 本地安装文档会更好地工作
- 改进的“小部件”--支持鼠标抓取
- 更精确地将线条捕捉到像素边界
- 在整个API中对颜色(尤其是alpha通道)的处理更加一致
改进了很多的软件木工¶
由于改进,Matplotlib行李箱的形状可能与以往一样好。 software carpentry . 我们现在有一个 buildbot 它有一套 nose 对每个SVN提交进行回归测试,自动生成一组图像,并将它们与一组已知的商品进行比较,向开发人员发送失败的电子邮件,并逐像素进行图像比较。发布和发布错误修复发生在分支中,允许在主干中进行活动的新功能开发,同时保持发布分支的稳定性。感谢安德鲁·斯特劳、迈克尔·德罗特布姆和其他Matplotlib开发者的大力支持。