设为首页 加入收藏

TOP

ipython matplotlib(一)
2017-10-10 08:26:44 】 浏览:7446
Tags:ipython matplotlib

matplotlib实际上是一套面向对象的绘图库,它所绘制的图表中的每个绘图元素,例如线条Line2D、文字Text、刻度等在内存中都有一个对象与之对应。
为了方便快速绘图matplotlib通过pyplot模块提供了一套和MATLAB类似的绘图API,将众多绘图对象所构成的复杂结构隐藏在这套API内部。我们只需要调用pyplot模块所提供的函数就可以实现快速绘图以及设置图表的各种细节。pyplot模块虽然用法简单,但不适合在较大的应用程序中使用。
为了将面向对象的绘图库包装成只使用函数的调用接口,pyplot模块的内部保存了当前图表以及当前子图等信息。当前的图表和子图可以使用plt.gcf()和plt.gca()获得,分别表示"Get Current Figure"和"Get Current Axes"。在pyplot模块中,许多函数都是对当前的Figure或Axes对象进行处理,比如说:
plt.plot()实际上会通过plt.gca()获得当前的Axes对象ax,然后再调用ax.plot()方法实现真正的绘图。

它的文档相当完备,并且 Gallery页面 中有上百幅缩略图,打开之后都有源程序。因此如果你需要绘制某种类型的图,只需要在这个页面中浏览/复制/粘贴一下,基本上都能搞定。


可以在Ipython中输入类似"plt.plot??"的命令查看pyplot模块的函数是如何对各种绘图对象进行包装的。

1、pyplot.plot(*args, **kwargs)

这个函数有两个参数,一个可变参数,一个命名参数。可变参数可以指定三个参数,x,y序列和线条格式字符串,下面的例子是一些常用的搭配

    plot(x, y)        # plot x and y using default line style and color
    plot(x, y, 'bo')  # plot x and y using blue circle markers
    plot(y)           # plot y using x as index array 0..N-1
    plot(y, 'r+')     # ditto, but with red plusses
如果没有使用命名参数,那么可以设置任意组的x,y,格式字符串,例如:
a.plot(x1, y1, 'g^', x2, y2, 'g-')

plot的返回值类型是matplotlib.lines.Line2D object
如果不指定plot会采用默认的线条和颜色,下面给出线条和颜色的可设值
线条值
================    ===============================
character           description
================    ===============================
``'-'``             solid line style 实线
``'--'``            dashed line style 虚线
``'-.'``            dash-dot line style 虚点线
``':'``             dotted line style 点线
``'.'``             point marker 圆点作点
``','``             pixel marker
``'o'``             circle marker 蓝色圆圈作点
``'v'``             triangle_down marker 下三角作点
``'^'``             triangle_up marker 上三角作点
``'<'``             triangle_left marker
``'>'``             triangle_right marker
``'1'``             tri_down marker
``'2'``             tri_up marker
``'3'``             tri_left marker
``'4'``             tri_right marker
``'s'``             square marker
``'p'``             pentagon marker
``'*'``             star marker
``'h'``             hexagon1 marker
``'H'``             hexagon2 marker
``'+'``             plus marker
``'x'``             x marker
``'D'``             diamond marker
``'d'``             thin_diamond marker
``'|'``             vline marker
``'_'``             hline marker
================    ===============================


颜色值

==========  ========
character   color
==========  ========
'b'         blue
'g'         green
'r'         red
'c'         cyan
'm'         magenta
'y'         yellow
'k'         black
'w'         white
==========  ========

命名参数可以用来设置线条的属性,每个属性都有一个set_...的方法,可以用来设置线条的标签,线宽等等

字符串格式指定格式只是缩写的形式,可以不用缩写的形式,只用命名参数的形式设定线条的格式,示例如下

命名参数的属性就是类matplotlib.lines.Line2D的属性,对应的属性有

 

2、plt.figure

plt.figure(num=None, figsize=None, dpi=None, facecolor=None, edgecolor=None, frameon=True, FigureClass=<class 'matplotlib.figure.Figure'>, **kwargs)
作用:创建一个新的figure或者返回当前已存在的figure

参数
num:可选参数,可以是整数或字符串如果没有指定该参数,则会创建一个新figure,同时返回的figure对象里的num属性自动加1;如果指定了该参数,那么如果指定num的figure对象已存在,则返回这个已存在的figure对象,否则就创建一个新的figure对象。
figsize:可选参数,整形的元组,指定figure的宽度和长度,单位为英寸,缺省值为[6.4, 4.8]
dpi:可选参数,指定figure的分辨率,即每英寸多少个像素,缺省值为100。
facecolor:背景颜色
edgecolor:边框颜色
返回值:figure对象

说明:如果创建了很多figure对象,要确保对不用的figure对象调用了close方法,因为这有利于减少内存占用。
plt类的rcParams字典属性定义了各属性的默认值,这可以在matplotlibrc文件中修改,rcParams是一个字典类型,可以查看其全部的属性值,也可以通过下标查看指定的属性值,
例如:

plt还有 一个rc_params 函数,它返回配置字典rcParams

 
 

Matplotlib 使用配置文件 matplotlibrc 时的搜索顺序如下:

 
 
  • 当前路径 : 程序的当前路径
  • 用户配置路径 : 通常为 HOME/.matplotlib/,可以通过环境变量MATPLOTLIBRC修改
  • 系统配置路径 : 保存在 matplotlib的安装目录下的 mpl-data 下
 
 

通过下面的语句可以获取用户配置路径:

>>> import matplotlib
>>> matplotlib.get_configdir(
首页 上一页 1 2 3 4 5 6 下一页 尾页 1/6/6
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
上一篇在selenium中设置代理ip 下一篇[TPYBoard - Micropython 之会pyt..

最新文章

热门文章

Hot 文章

Python

C 语言

C++基础

大数据基础

linux编程基础

C/C++面试题目