-
matplotlib
可以交互式地用于python shell
matplotlib
可以嵌入到wxpython
或者pygtk
等GUI
程序中matplotlib
可以在脚本中使用从而生成postscript image
为了适应于这些场景,
matplotlib
针对这些target
生成不同的输出格式。这种能力称之为backend
。 -
- 交互式的
backend
:应用于pygtk
、wxpython
、tkinter
、qt4
、macosx
等中
- 交互式的
有多种方法来设置
backend
,其中后面提到的方法会覆盖前面的方法设置的:- 在
matplotlibrc
配置文件中设置的backend
参数,如backend: WXAgg #使use wxpython with antigrain(agg) rendering
- 设置
MPLBACKEND
环境变量,无论是在shell
中设置还是在脚本中设置。 - 对单个脚本设置
backend
时,可以直接在python
命令后添加-d
命令(这种方法不推荐,deprecated
) - 在脚本中使用特定的
backend
时,可以用matplotlib.use('PDF')
命令。这条语句必须在import matplotlib.pyplot
语句之前执行。如果在import matplotlib.pyplot
之后执行use
语句,则没有任何效果。通常建议避免使用use()
方法,因为使用该脚本的人无法修改backend
了。
- 在
rendering engine :
matplotlib
提供的常用的rendering engine
是Agg
,它采用的是Anti-Grain Geometry C++ library
。除了之外的所有user interface
都可以用agg rendering
,如WXAgg,GTKAgg,QT4Agg,TkAgg
这些backend
。下面是所有的
Rendering engine
:AGG
:输出png
格式文件。它可以输出高质量的图形PS
:输出ps\eps
格式文件。它是Postscript output
PDF
:输出pdf
格式文件。SVG
:输出svg
格式文件Cairo
:可以输出png、ps、pdf、svg...
等格式文件