{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# Pyplot 教程" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Matplotlib 简介" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "**`matplotlib`** 是一个 **`Python`** 的 `2D` 图形包。\n", "\n", "在线文档:http://matplotlib.org ,提供了 [Examples](http://matplotlib.org/examples/index.html), [FAQ](http://matplotlib.org/faq/index.html), [API](http://matplotlib.org/contents.html), [Gallery](http://matplotlib.org/gallery.html),其中 [Gallery](http://matplotlib.org/gallery.html) 是很有用的一个部分,因为它提供了各种画图方式的可视化,方便用户根据需求进行选择。" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## 使用 Pyplot" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "导入相关的包:" ] }, { "cell_type": "code", "execution_count": 1, "metadata": { "collapsed": true }, "outputs": [], "source": [ "import numpy as np\n", "import matplotlib.pyplot as plt" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "`matplotlib.pyplot` 包含一系列类似 **`MATLAB`** 中绘图函数的相关函数。每个 `matplotlib.pyplot` 中的函数对当前的图像进行一些修改,例如:产生新的图像,在图像中产生新的绘图区域,在绘图区域中画线,给绘图加上标记,等等…… `matplotlib.pyplot` 会自动记住当前的图像和绘图区域,因此这些函数会直接作用在当前的图像上。\n", "\n", "下文中,以 `plt` 作为 `matplotlib.pyplot` 的省略。" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## plt.show() 函数" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "默认情况下,`matplotlib.pyplot` 不会直接显示图像,只有调用 `plt.show()` 函数时,图像才会显示出来。\n", "\n", "`plt.show()` 默认是在新窗口打开一幅图像,并且提供了对图像进行操作的按钮。\n", "\n", "不过在 `ipython` 命令行中,我们可以使用 `magic` 命令将它插入 `notebook` 中,并且不需要调用 `plt.show()` 也可以显示:\n", "\n", "- `%matplotlib notebook`\n", "- `%matplotlib inline`\n", "\n", "不过在实际写程序中,我们还是需要调用 `plt.show()` 函数将图像显示出来。\n", "\n", "这里我们使图像输出在 `notebook` 中:" ] }, { "cell_type": "code", "execution_count": 2, "metadata": { "collapsed": true }, "outputs": [], "source": [ "%matplotlib inline" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## plt.plot() 函数" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### 例子" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "`plt.plot()` 函数可以用来绘图:" ] }, { "cell_type": "code", "execution_count": 3, "metadata": { "collapsed": false }, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "plt.plot([1,2,3,4])\n", "plt.ylabel('some numbers')\n", "\n", "plt.show()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### 基本用法" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "`plot` 函数基本的用法有以下四种:\n", "\n", "默认参数\n", "- `plt.plot(x,y)` \n", "\n", "指定参数\n", "- `plt.plot(x,y, format_str)`\n", "\n", "默认参数,`x` 为 `0~N-1`\n", "- `plt.plot(y)`\n", "\n", "指定参数,`x` 为 `0~N-1`\n", "- `plt.plot(y, format_str)`\n", "\n", "因此,在上面的例子中,我们没有给定 `x` 的值,所以其默认值为 `[0,1,2,3]`。\n", "\n", "传入 `x` 和 `y`: " ] }, { "cell_type": "code", "execution_count": 4, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/plain": [ "[]" ] }, "execution_count": 4, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "plt.plot([1,2,3,4], [1,4,9,16])" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### 字符参数" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "和 **`MATLAB`** 中类似,我们还可以用字符来指定绘图的格式:\n", "\n", "表示颜色的字符参数有:\n", "\n", "字符 | 颜色\n", "-- | -- \n", "`‘b’`|\t蓝色,blue\n", "`‘g’`|\t绿色,green\n", "`‘r’`|\t红色,red\n", "`‘c’`|\t青色,cyan\n", "`‘m’`|\t品红,magenta\n", "`‘y’`|\t黄色,yellow\n", "`‘k’`|\t黑色,black\n", "`‘w’`|\t白色,white\n", "\n", "表示类型的字符参数有:\n", "\n", "字符|类型 | 字符|类型\n", "---|--- | --- | ---\n", "` '-'\t`| 实线 | `'--'`|\t虚线\n", "`'-.'`|\t虚点线 | `':'`|\t点线\n", "`'.'`|\t点 | `','`| 像素点\n", "`'o'`\t|圆点 | `'v'`|\t下三角点\n", "`'^'`|\t上三角点 | `'<'`|\t左三角点\n", "`'>'`|\t右三角点 | `'1'`|\t下三叉点\n", "`'2'`|\t上三叉点 | `'3'`|\t左三叉点\n", "`'4'`|\t右三叉点 | `'s'`|\t正方点\n", "`'p'`\t| 五角点 | `'*'`|\t星形点\n", "`'h'`|\t六边形点1 | `'H'`|\t六边形点2 \n", "`'+'`|\t加号点 | `'x'`|\t乘号点\n", "`'D'`|\t实心菱形点 | `'d'`|\t瘦菱形点 \n", "`'_'`|\t横线点 | |\n", "\n", "例如我们要画出红色圆点:" ] }, { "cell_type": "code", "execution_count": 5, "metadata": { "collapsed": false }, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "plt.plot([1,2,3,4], [1,4,9,16], 'ro')\n", "plt.show()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "可以看出,有两个点在图像的边缘,因此,我们需要改变轴的显示范围。" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### 显示范围" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "与 **`MATLAB`** 类似,这里可以使用 `axis` 函数指定坐标轴显示的范围:\n", "\n", " plt.axis([xmin, xmax, ymin, ymax])" ] }, { "cell_type": "code", "execution_count": 6, "metadata": { "collapsed": false }, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "plt.plot([1,2,3,4], [1,4,9,16], 'ro')\n", "# 指定 x 轴显示区域为 0-6,y 轴为 0-20\n", "plt.axis([0,6,0,20])\n", "plt.show()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### 传入 `Numpy` 数组" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "之前我们传给 `plot` 的参数都是列表,事实上,向 `plot` 中传入 `numpy` 数组是更常用的做法。事实上,如果传入的是列表,`matplotlib` 会在内部将它转化成数组再进行处理:" ] }, { "cell_type": "code", "execution_count": 7, "metadata": { "collapsed": false }, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAXQAAAEACAYAAACj0I2EAAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAFzVJREFUeJzt3Xuw3GWd5/H3VyIwCojIGiCJBBgRySAXL4jOmoZByDAQ\nGJgBLHEBjWUNjLct2YGhpjg7loqEQUd2nZldIICWLJcwLEGnJAM0C0U2goQhSwiJG6LAbMJFbhpg\n0Hz3j+5D+pzuc+k+fTu/fr+quuz+nefX/Zyu8PF7nt/z/J7ITCRJ09+bet0BSVJ7GOiSVBAGuiQV\nhIEuSQVhoEtSQRjoklQQ4wZ6RFwVEZsjYnXNscUR8WhE/EtE3BwRb6v52QURsT4i1kbEMZ3suCRp\npIkq9CXAglHHbgfmZebBwDrgAoCIOBA4DTiwes53I8K/ACSpS8YN3My8B3h+1LHlmbm1+nIlMLv6\n/ETgusx8PTM3Aj8DPtTe7kqSxjLVCvrTwI+qz/cCnqz52ZPArCm+vyRpkloO9Ii4EPi3zPzBOM28\nr4AkdcmMVk6KiLOA44A/qDn8FDCn5vXs6rHR5xryktSCzIzxft50hR4RC4DzgBMz89WaH90KnB4R\n20fEPsC7gZ+M0SkfmVx00UU970O/PPwu/C78LsZ/TMa4FXpEXAfMB3aPiCeAi6jMatkeWB4RACsy\n85zMXBMRNwBrgN8A5+RkeyFJmrJxAz0zP9Hg8FXjtP868PWpdkqS1DznifdQqVTqdRf6ht/FNn4X\n2/hdNCe6PSoSEY7ESFKTIoJs90VRSVJ/MtAlqSAMdEkqCANdkgrCQJekgjDQJakgDHRJKggDXZK6\nrFNrcQx0SeqizGTRuYs6EuoGuiR10dJlS7nxkRu5+bab2/7eLv2XpC7JTI449QhWzlvJ4Y8czoob\nVlC9a+2EXPovSX1k6bKlrN55NQSs3ml126t0K3RJ6oLa6pwAkqaqdCt0SeoTtdU50JEq3Qpdkrrg\n7M+fzYaXNoyoxjOTfXfZlyWXL5nw/MlU6Aa6JE0DDrlI0gAx0CWpIAx0SSoIA12SCsJAl6SCMNAl\nqSAMdEkqCANdkgrCQJekgjDQJakgxg30iLgqIjZHxOqaY7tFxPKIWBcRt0fErjU/uyAi1kfE2og4\nppMdlySNNFGFvgRYMOrY+cDyzNwfuKP6mog4EDgNOLB6zncjwr8AJKlLxg3czLwHeH7U4YXANdXn\n1wAnVZ+fCFyXma9n5kbgZ8CH2tdVSdJ4WqmgZ2bm5urzzcDM6vO9gCdr2j0JzJpC3yRJTZjSkEj1\nPrjj3QvX++RKUpfMaOGczRGxR2Zuiog9gaerx58C5tS0m109VmdoaOiN56VSiVKp1EI3JKm4yuUy\n5XK5qXMm3OAiIuYCyzLzoOrrS4DnMvObEXE+sGtmnl+9KPoDKuPms4B/Bn539G4WbnAhqSgyc1L7\ngbbDlDe4iIjrgPuA90TEExFxNnAx8PGIWAccVX1NZq4BbgDWAP8EnGNySyqqzGTRuYvop5hzCzpJ\nasFNt97Ep//m0yz5yhJOOeGUjn+ee4pKUgdkJkecegQr563k8EcOZ8UNKzo+9OKeopLUAUuXLWX1\nzqshYPVOq7n5tpt73SXACl2SmlJbnRNA0pUq3QpdktqstjoH+qpKt0KXpCac/fmz2fDShhHVeGay\n7y77suTyJR37XC+KSlJBOOQiSQPEQJekgjDQJakgDHRJKggDXZIKwkCXpIIw0CWpIAx0SSoIA12S\nCsJAl6SCMNAlqSAMdEkqCANdkgrCQJck6KvNnltloEsaeJnJonMXTftQN9AlDbyly5Zy4yM39sWu\nQ1PhBheSBlrtHqHd2Bu0VW5wIUkTqN0jtF/2Bm2VFbqkgVVbnRNA0rdVuhW6JI2jtjoHpn2VboUu\naWCd/fmz2fDShhHVeGay7y77suTyJT3sWb3JVOgGuiRNAw65SNIAaTnQI+KCiHgkIlZHxA8iYoeI\n2C0ilkfEuoi4PSJ2bWdnJUljaynQI2Iu8FngsMw8CNgOOB04H1iemfsDd1RfS5K6oNUK/SXgdeAt\nETEDeAvwr8BC4Jpqm2uAk6bcQ0nSpLQU6Jn5S+BvgF9QCfIXMnM5MDMzN1ebbQZmtqWXkqQJzWjl\npIjYD/gSMBd4EbgxIs6obZOZGRENp7MMDQ298bxUKlEqlVrphiQVVrlcplwuN3VOS9MWI+I04OOZ\nuaj6+lPAh4GjgCMzc1NE7AnclZkHjDrXaYuS1KROTltcC3w4In4nKjPyjwbWAMuAM6ttzgRuafH9\nJUlNanlhUUT8JyqhvRV4EFgE7AzcALwL2AicmpkvjDrPCl2SmuRKUUkqCFeKStIAMdAlqSAMdEmF\nM6jDuga6pEIpyobPrTDQJRVKUTZ8boWzXCQVxnTZ8LkVznKRNFCKtOFzK6zQJRXCdNrwuRVW6JIG\nRtE2fG6FFbqkQphOGz63wqX/klQQDrlI0gAx0CWpIAx0SSoIA12SCsJAl6SCMNAlqSAMdEkqCANd\nkgrCQJekgjDQJakgDHRJfcvbhDTHQJfUlwZ5K7lWGeiS+tIgbyXXKu+2KKnvFHkruVZ5t0VJ09Kg\nbyXXKit0SX2l6FvJtcoKXdK041ZyrWu5Qo+IXYErgHlAAmcD64Hrgb2BjcCpmfnCqPOs0CWNqehb\nybWqo1vQRcQ1wN2ZeVVEzADeClwIPJuZl0TEXwBvz8zzR51noEtSkzoW6BHxNmBVZu476vhaYH5m\nbo6IPYByZh4wqo2BLklN6uQY+j7AMxGxJCIejIj/HhFvBWZm5uZqm83AzBbfX5LUpBlTOO8w4M8z\n8/6I+DYwYmglMzMiGpbiQ0NDbzwvlUqUSqUWuyFJxVQulymXy02d0+qQyx7Aiszcp/r694ELgH2B\nIzNzU0TsCdzlkIskTV3HhlwycxPwRETsXz10NPAIsAw4s3rsTOCWVt5fktS8qcxyOZjKtMXtgf9L\nZdridsANwLtw2qIktU1Hpy22ykCXpOa5UlSSBoiBLqkr/Mu88wx0SR3nZhXdYaBL6jg3q+gOL4pK\n6ig3q2gPL4pK6jk3q+geK3RJHeNmFe1jhS6pp9ysorus0CV1jJtVtI8rRSWpIBxykaQBYqBLUkEY\n6JJUEAa6JBWEgS5JBWGgS1JBGOiSmubU4/5koEtqirfC7V8GuqSmeCvc/uVKUUmT5q1we8eVopLa\nylvh9jcrdEmT4q1we8sKXVLbeCvc/meFLmlSvBVub3n7XEkqCIdcJGmAGOiSVBAGuiQVxJQCPSK2\ni4hVEbGs+nq3iFgeEesi4vaI2LU93ZQkTWSqFfoXgTXA8FXO84Hlmbk/cEf1tSSpC1oO9IiYDRwH\nXMG2makLgWuqz68BTppS7yR1lDPOimUqFfq3gPOArTXHZmbm5urzzcDMKby/pA7yronFM6OVkyLi\neODpzFwVEaVGbTIzI6Lhv5ShoaE3npdKJUqlhm8hqYOG75p43G3HccoJp/S6OxqlXC5TLpebOqel\nhUUR8XXgU8BvgB2BXYCbgQ8CpczcFBF7Andl5gGjznVhkdRj3jVx+unYwqLM/MvMnJOZ+wCnA3dm\n5qeAW4Ezq83OBG5p5f0ldZZ3TSymds1DHy65LwY+HhHrgKOqryX1kczk0u9dypZ3bQFgy95bWHzt\nYsfSC2DKgZ6Zd2fmwurzX2bm0Zm5f2Yek5kvTL2LktrJuyYWlzfnkgaMd02cnrzboiQVhHdblKQB\nYqBLUkEY6JJUEAa6VBBem5KBLhWA92URGOhSIQzfl8W55IPNaYvSNOd9WQaD0xalAeB9WTTMCl2a\nxmqrcwJIrNILygpdKjjvy6JaVujSNOZ9WQaH93KRpIJwyEWSBoiBLkkFYaBLfcYhSbXKQJf6iEv4\nNRUGutRHXMKvqXCWi9QnXMKv8TjLRZpGXMKvqbJCl/qAS/g1ESt0aZpwCb/awQpd6gMu4ddEXPov\nSX3irLOG2Lix/vjcuXD11UMTnj+ZQJ/RWtckTUZmOgYuADZuhLvvHmrwk0bHWuMYutQhLhJSt1mh\nSx0yvEjouNuO45QTTul1d9QmUx066aSWAj0i5gDXAu8EEvhvmfmdiNgNuB7YG9gInJqZL7Spr9K0\nkZlc+r1LefnIl1l87WJOPv5kh14KohtDJ61qdcjldeDLmTkP+DBwbkS8FzgfWJ6Z+wN3VF9LA8dF\nQuqFlir0zNwEbKo+/1VEPArMAhYC86vNrgHKGOoaMMPV+ZZ5WwDYsvcWq3Qxdy40quIrx9tjymPo\nETEXOBRYCczMzM3VH20GZk71/aXpZrxFQo6l95dujod3Y3x9SoEeETsBS4EvZubLoxZFZER4eV8D\n54fLf8gHfvsB4vGRi4Ruu/02A73P9PN4eCtaDvSIeDOVMP9eZt5SPbw5IvbIzE0RsSfwdKNzh4aG\n3nheKpUolUqtdkPqmsnOKXdlZ7F1Y+gEoFwuUy6XmzqnpZWiUflXfQ3wXGZ+ueb4JdVj34yI84Fd\nM/P8Uee6UlTTzvCc8iv+6xWOg/epVoZPSqWhhhX6/PlDlMuNz+mVTq4U/ShwBvBwRKyqHrsAuBi4\nISI+Q3XaYovvL/UV55T3v6INn7Si1Vku9zL2lMejW++O1H+cU67pwpWi0gQazSm3Su+cbs486dZ4\neLcY6NI4nFPefd0cOun1Uv128+Zc0jjceELTiRW6Bk4zt7R1TvnUOHzSXQa6Bkqz0w+dUz41Dp90\nl0MuGijD0w8dMlERWaFrYDj9cGq6NXzi0EnrDHQNDKcfTk23hk8cOmmdga6B4PTDbfp5xx1NjYGu\naW2yM1a8pe023bxQ6fBJdxnomraambHi9MPesOLvLgNd01YzN8wq6vRDh09Uy0DXtOSMlQqHT1TL\n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\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "import numpy as np\n", "import matplotlib.pyplot as plt\n", "\n", "# evenly sampled time at 200ms intervals\n", "t = np.arange(0., 5., 0.2)\n", "\n", "# red dashes, blue squares and green triangles\n", "plt.plot(t, t, 'r--', \n", " t, t**2, 'bs', \n", " t, t**3, 'g^')\n", "\n", "plt.show()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### 传入多组数据" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "事实上,在上面的例子中,我们不仅仅向 `plot` 函数传入了数组,还传入了多组 `(x,y,format_str)` 参数,它们在同一张图上显示。\n", "\n", "这意味着我们不需要使用多个 `plot` 函数来画多组数组,只需要可以将这些组合放到一个 `plot` 函数中去即可。" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### 线条属性" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "之前提到,我们可以用字符串来控制线条的属性,事实上还可以通过关键词来改变线条的性质,例如 `linwidth` 可以改变线条的宽度,`color` 可以改变线条的颜色:" ] }, { "cell_type": "code", "execution_count": 8, "metadata": { "collapsed": false }, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAXoAAAEACAYAAAC9Gb03AAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAIABJREFUeJzt3Xuc1nP+//HHq3RAzlJRYiUqUezShm2wMkSxSDmVQ8UK\ni2UP7Oq2fr7Y765D2EXbydottSE5LDmM80YUpVKp6MzXoVWh1Pv3x2vGJNM0zXV4X5/P9bzfbnO7\nPlddM5+X0bzmfb3e7/frbSEEREQkverEDkBERHJLiV5EJOWU6EVEUk6JXkQk5ZToRURSToleRCTl\nMk70ZjbMzJab2bRqXjPYzOaY2dtm1jHTe4qISM1lY0Q/HCjd1F+a2QlAqxDCvkB/4K9ZuKeIiNRQ\nxok+hPAS8Fk1L+kOjCx/7SRgRzNrkul9RUSkZvJRo98DWLjB80VA8zzcV0REyN9krG30XH0XRETy\nZKs83GMx0GKD583L/+w7zEzJX0SkFkIIGw+mvyMfI/pHgXMBzKwT8HkIYXlVLwwhFPzH9ddfHz2G\nNMSoOAskzunTCccfT4DKj8MPJ4weTfjsM8L69d//nC++IPz734RrriH86EcEM/+8XXclDBlCWLeu\neL+fET5qIuMRvZmNAroAu5rZQuB6oF554r43hPCEmZ1gZnOBVcB5md5TRLJg5Ei4+GL48kto0ADO\nPBMuvRQ6bmYFdKNGcNxx/gEwbZp/3gsvQL9+cN99cNddcOihuf9vkBrJONGHEHrX4DUDM72PiGTJ\n6tWemIcN8+d9+sCf/gS77lq7r9e+PTz/PDz4IFx1FbzxBhx2GAwcCLfdBlvlo0Is1dHO2C1UUlIS\nO4TNSkKMoDizrUZxvvcedOrkSb5hQ38cMaL2Sb6CGfTq5V//17+GevV8VH/aafDVV1seZwFISpw1\nYTWt8eSamYVCiUUklcaNg759YeVKaN0axo6FAw/Mzb1eew26dYPPPoMuXWD8eNhhh9zcq8iZGaEA\nJmNFJLaHH4aePT3Jn3EGTJ6cuyQP8OMfw4svQrNmXrsvKYHlVa7BkDxQohdJu2ef9bLK+vVw3XUw\nahRst13u73vAAfDKK9CqFUydCkccAQsW5P6+8j0q3Yik2euvw9FHw6pVPjk6eLDX0/Np+XIoLfVk\nv/vu8PLLsPfe+Y0hxWpSulGiF0mrGTPgyCPh00/hrLPg/vuhTqQ38StWQPfuXs5p3x5efdWXaUrG\nlOhFitUHH8Dhh8PixT4p+vDDvhImphUrfNnle+/Bqaf6ZHC+312kkCZjRYrRJ5/Ascd6kj/ySE+o\nsZM8+Kqb8eNh++19BdCNN8aOqGgo0YukSQhwwQUwZw506AATJsDWW8eOqtJ++8E//+kj+d/9zhO/\n5JwSvUia3HNP5Zr1hx8uzLXr3brB//yPX599ts8lSE6pRi+SFtOnw49+5DtRR4/29fKFKgTo3dvb\nJrRq5auDdtopdlSJpBq9SLH48ktfK//VV3DeeYWd5MFLN8OGeQO1uXO93KSBXs4o0YukwS9/Ce++\n660NBg+OHU3NbLONl5e2284fx46NHVFqKdGLJN348fCXv/jKmlGjkrU+vWVL75wJvqHr44/jxpNS\nSvQiSbZoEZx/vl/ffDMcfHDceGqjXz/fvfvxx3D55bGjSSVNxookVQhw4onwxBN+CMgTT8Tb+Zqp\nefN8x+zq1f4OpXv32BElhiZjRdLs0Uc9uW+/PQwfntwkD/CDH8BNN/n1RRfB55/HjSdlEvwvQ6SI\nrV5dWea44QZvB5x0Awd624alS/2kKskaJXqRJLrpJu9nc+CB8POfx44mO+rUgaFD/fzaYcPg6adj\nR5QaqtGLJM2cOd7rfc0ab/l7+OGxI8quW27x4wj33BNmzvRlmLJJqtGLpE0IfrD3mjV+LGDakjx4\n2aZDB/jwQz9cXDKmEb1Ikjz8MPzsZ97DZvZs2G232BHlxvPP+5LLRo38HUzTprEjKlga0YukyapV\n8Itf+PWNN6Y3yQMcdRScdJKfcTtoUOxoEk8jepGkuPZa7/rYsSO88QbUrRs7otyaNcvnIkKAd96B\ndu1iR1SQNKIXSYsPPqhsFXD33elP8gD77w8DBvih5ldfHTuaRFOiF0mCP/zBJ2B79YIf/zh2NPkz\naJBvCHvySZg4MXY0iaXSjUihe++9yrLFzJmw775x48m3iuWW7dvDlCnF8W5mC6h0I5IG118P69Z5\n87JiS/LgO4BbtoRp02DEiNjRJJJG9CKFbOpUn3xt0MCXGbZoETuiOEaNgjPP9GWWc+YkqxVzjmlE\nL5J0113njxdfXLxJHnxu4tBDYdmy5BysUkA0ohcpVK++6jtft93W2/imed18TTz7LPz0p7DLLrBg\ngUb15TSiF0mqEOC3v/XrK65QkgffKdu5M3zyiZ+oJTWmEb1IIZo4Ebp2hZ128tH8jjvGjqgwPPUU\nlJZC48Ywf76/2ylyGtGLJFEIvgsW4JprlOQ31LUrHHaYHzt4772xo0kMjehFCs2jj0KPHtCkCbz/\nvkatG3viCejWzb8/8+fD1lvHjigqjehFkiYE72cDvklISf77jj8eDjkEli+H++6LHU0iaEQvUkhe\neAFKSmDnnb0fuxJ91Sre9TRr5nMYDRvGjigajehFkuaWW/zxssuU5Ktz0kl+OMnSpX78oFRLI3qR\nQvH22568ttnGR/O77BI7osJWcQhL8+Ywd67vHi5CGtGLJEnFaL5/fyX5mujRwxudLVoEw4fHjqag\naUQvUgjmzfOGZXXq+HUxtzvYEmPHQs+esPfe3gOnCDtbakQvkhR/+pMfsHH22UryW+JnP4N99vFl\nlo88EjuagqVELxLb8uUwbJhfX3NN3FiSpm7dynN0//znuLEUMCV6kdjuuAO+/hpOPhnatIkdTfKc\nd563injtNf+Q71GiF4npv/+tbND1q1/FjSWptt0WLrrIr2+9NW4sBUqJXiSme++FFSugSxfo1Cl2\nNMk1cCDUqwcPPeT1evkOJXqRWNau9bINaDSfqd13h969fUK74nsq38o40ZtZqZnNMrM5Zva9f61m\nVmJmK8xsSvnHdZneUyQVHn4YFi/2unxpaexoku/KK/1x6FD4/PO4sRSYjBK9mdUF7gJKgbZAbzOr\najbphRBCx/KP/5fJPUVSo+JIvEsvBat2GbTUxEEHwTHHwMqVMGRI7GgKSqYj+kOBuSGEBSGEtcBo\noEcVr9O/YpENvfkmvPIK7LADnHNO7GjSo2JUP3iwl8YEyDzR7wEs3OD5ovI/21AAOpvZ22b2hJm1\nzfCeIsl3553+eMEFOvs0m0pLvRS2aJHvmhUAtsrw82vSs+AtoEUIYbWZHQ88ArSu6oWDBg369rqk\npISSkpIMwxMpQMuXw6hRXq4ZODB2NOlSp46P6vv18w1UvXunrixWVlZGWVnZFn1ORr1uzKwTMCiE\nUFr+/DfA+hDCLdV8znzgkBDCpxv9uXrdSHG44Qb4/e+9KZe27WffV1/Bnnv6cYMvvQRHHBE7opzK\nR6+bycC+ZraXmdUHzgAe3SiIJmb+K9XMDsV/uXz6/S8lUgTWrIG//tWvL7ssbixp1bChj+gB7r47\nbiwFIqNEH0L4BhgIPAXMAB4MIcw0swFmNqD8ZacB08xsKnA70CuTe4ok2rhxflhGu3Zw1FGxo0mv\nAQO8jDNuHCxbFjua6NSmWCSfOnWCSZN8R2z//rGjSbdTTvHS2A03wHXp3b5Tk9KNEr1Ivkya5Il+\np518Vcg228SOKN0mToSuXf0EqvnzYatM154UJvWjFykkFUsq+/VTks+HY46B1q39l+qECbGjiUqJ\nXiQfli+HMWO8bvzzn8eOpjhs+L0u8klZJXqRfBg2zHdqnnQStGwZO5ri0aePv3t69lmYNSt2NNEo\n0Yvk2rp1cN99fn3xxXFjKTY77ghnneXXFctai5AmY0Vy7ckn4YQT/ADruXO9pCD5M3UqdOwI228P\nS5b4QSUposlYkUJw773+2L+/knwMHTpA585+mtc//hE7mig0ohfJpUWLvCZfty4sXAhNmsSOqDj9\n859ewjnwQB/hp6j/jUb0IrH97W9+6tEppyjJx3TqqbDbbvDOO94eusgo0YvkyjffeKKHysOrJY4G\nDeDCC/26opRWRFS6EcmV8ePh5JN9086sWakqFyTS/Pmwzz6e9Jcs8R3KKaDSjUhM99zjjwMGKMkX\ngr33hmOP9TbGDzwQO5q80oheJBcqRo/16/sB4LvsEjsiAfjXv+D00+GAA7xen4JfwBrRi8QyZAiE\nAD17KskXku7doXFjmD7dm8wVCSV6kWxbswaGDvXrAQOqf63kV/360LevXw8ZEjWUfFLpRiTbxoyB\nM85IVXkgVWbPhv328x44S5f6jtkEU+lGJIaKJZX9+yvJF6LWraGkBFav9kPai4ASvUg2LVgAzzzj\nS/jOPjt2NLIpFWfKVjSbSzklepFsGj7cJ2FPPTU167RT6Wc/g513hrfe8o+UU6IXyZZ16zzRA1xw\nQdxYpHoNG8I55/h1EUzKajJWJFueegpKS9WOOCnefdcnzLfbzidlE9q+WJOxIvlUsaTygguU5JOg\nXTtvX/zFF/Dgg7GjySn9axTJho8/hkce8QRfsU5bCl/FpGzKyzdK9CLZ8MADfiZsaSnssUfsaKSm\nevb00s1//gMzZ8aOJmeU6EUyFUJl2aaiFa4kwzbbQK9efl0xkZ5CmowVydR//gM//rEfbLFoEdSr\nFzsi2RIV//+aNPFTwBL2/0+TsSL5UDGaP/fcxCUJAQ47DNq0geXL/SD3FFKiF8nEypUwerRfa+18\nMpnB+ef79bBhcWPJESV6kUyMGePJ/vDDYf/9Y0cjtXXOOX6A+2OPwbJlsaPJOiV6kUxsuHZekqtJ\nEzjxRN/dnMLTpzQZK1Jb773no/hGjXxnZaNGsSOSTFSc8dumje+aTUjnUU3GiuTSiBH+2LOnknwa\nnHCCr5yaOTN1p08p0YvUxrp1cP/9fn3eeXFjkeyoV89XTkHqJmVVuhGpjSef9BFgq1Z+YlFC3ubL\nZsyY4T1wEtToTKUbkVypKNv07asknyZt20KnTt7o7KGHYkeTNUr0Ilvq00+9gZlZ5Vt9SY8UrqlX\nohfZUqNGwZo1cOyx0KJF7Ggk2844A7beGsrK4P33Y0eTFUr0IluqovmVJmHTafvt4bTT/HrkyLix\nZIkmY0W2xLRpcOCBsMMOvoOyYcPYEUkuPPccHHMM7LknzJ9f0AfJaDJWJNsqRvO9eyvJp1lJCbRs\nCR9+6CWchFOiF6mptWsrt8erbJNudepAnz5+XbHCKsFUuhGpqYot8m3bwvTpWlaZdvPmwT77+MTs\nsmVeuy9AKt2IZNOGk7BK8un3gx9Aly7w5ZcwdmzsaDKiRC9SEx99BI8/7q1szz47djSSLxUHvSe8\nfKNEL1IT//gHfPMNHH88NG0aOxrJl9NO8zYIL78Mc+fGjqbWlOhFNicErZ0vVo0aVa6pT/CoXpOx\nIpszZQocfDDssgssWQL168eOSPLphRd8uWXz5rBggZfvCkheJmPNrNTMZpnZHDP71SZeM7j87982\ns46Z3lMkrypGcmeeqSRfjI48EvbeGxYtguefjx1NrWSU6M2sLnAXUAq0BXqbWZuNXnMC0CqEsC/Q\nH/hrJvcUyas1a7w+D5UTc1JcUrCmPtMR/aHA3BDCghDCWmA00GOj13QHRgKEECYBO5pZkwzvm1sh\n+MSbyOOPwyefQPv20FFvRotWRaIfNw5WrIgbSy1kmuj3ABZu8HxR+Z9t7jXNM7xv7jz6KBx0ENx5\nZ+xIpBCo77wA7LUXHHUUfPUVjBkTO5ottlWGn1/T2dONf0Kq/LxBgwZ9e11SUkJJSUmtgsrIN994\n46rhw+EXv9APdzFbvrxy7fxZZ8WORmLr29dr9OPHQ79+0cIoKyujbAv772S06sbMOgGDQgil5c9/\nA6wPIdyywWvuAcpCCKPLn88CuoQQlm/0tQpj1c2aNbD77v52/c03fbWFFKfbboMrr4STTvJ3elLc\nVq2CZ5/1vRT16sWO5lv5WHUzGdjXzPYys/rAGcDGPxGPAueWB9QJ+HzjJF9Q6tevHL0ldOJFskBr\n52Vj224L3bsXVJKvqYzX0ZvZ8cDtQF1gaAjhJjMbABBCuLf8NRUrc1YB54UQ3qri6xTGiB4q103v\nvLOvm27QIHZEkm9vvQWHHKK181LwajKiz7RGTwjhSeDJjf7s3o2eD8z0PnnVoYMfLvHOO/DYY3Dq\nqbEjknyreDd31llK8pJ4aoFQFbPKt+sq3xSfr7/W2nlJFbVA2JSPPoI99vBa7aJFamRVTB56yN/F\nHXggTJ2qlVdS0NSPPhO77QbdusG6dZWnCklxqJiE7dNHSV5SQSP66lScKNSuna+t1w99+i1b5s2r\nzGDxYv+FL1LANKLP1AknQOPG8O67vqZe0u+BB/xdXLduSvKSGkr01alXT2vqi4nWzktKqXSzOW+/\n7cstd9rJ11M3bBg7IsmV11+Hww7zkfyiRYncGCPFR6WbbDjoIO9a+NlnMGFC7GgklypG82efrSQv\nqaJEXxMpOSBYqvHllzBqlF9r7bykjBJ9TZx5po/w/v1vL99I+jzyiPcZP+QQ7z0vkiJK9DWx667e\nzGj9erj//tjRSC5UvFvTJKykkCZja+rxx+HEE2HffeG997SmPk0WLoSWLf1d29Kl3sxOJCE0GZtN\nxx0HzZrBnDnwyiuxo5Fsuv9+X1p58slK8pJKSvQ1tdVWledGDhsWNxbJnhBUtpHUU+lmS8yeDfvt\n5wcQLFsGjRrFjkgy9dJL8JOf+KliH37oxwaKJIhKN9nWujUccYQfKTZ2bOxoJBsqRvPnnqskL6ml\nRL+lzj/fH1W+Sb6VK2HMGL/W2nlJMSX6LXX66V66efllL+VIco0Z48n+iCO8JCeSUkr0W6pRIzjj\nDL+u2DIvyfS3v/njBRfEjUMkxzQZWxuvvOKjwGbNfAJvq4yP3pV8mzkT2raF7bbztfPbbhs7IpFa\n0WRsrnTu7BOzS5fCU0/FjkZqY+hQf+zdW0leUk+JvjY2PDxck7LJs2YNjBzp1yrbSBFQ6aa2liyB\nFi18Sd7ixX4SlSTDuHFw2mlwwAHwzjtqZyGJptJNLu2+Oxx/PKxdC3//e+xoZEtUlG0uvFBJXoqC\nRvSZeOQROOUU2H9/mDFDSSMJNmxgtmQJ7LJL7IhEMqIRfa516wZNm8KsWWp0lhQjRlQ2MFOSlyKh\nRJ+JevUqJ2WHDIkbi2ze+vWVk+cXXhg3FpE8UukmU++/D61a+aHhS5b4IeJSmJ55Bo491ks38+ZB\nHY1zJPlUusmHffaBn/4UvvoK/vGP2NFIdSomYc87T0leiopG9NkwZoy3RTjwQJg6VZOyhejTT30n\n89q1sGAB7Lln7IhEskIj+nzp0cPPlX3nHXjjjdjRSFXuv983SnXtqiQvRUeJPhsaNKg8fUqTsoUn\nBLjnHr8eMCBuLCIRqHSTLbNmQZs23jdl6VJvliWF4YUXoKTESzcffOCrpURSQqWbfNp/fz+SbtUq\nGDUqdjSyoYrR/IUXKslLUVKiz6Z+/fxR5ZvC8dFH3tumTh2tnZeipUSfTaeeCjvuCJMn++obiW/E\nCF9pc8IJmoSVoqVEn01bbw3nnOPX990XNxbxnbD33uvXF10UNxaRiDQZm23Tp0P79j4Zu3ixJmVj\nmjixcjnlvHneUlokZTQZG8MBB8CRR8IXX8ADD8SOprhVTML266ckL0VNI/pcePBB6NUL2rWDadO0\nUzaGJUsqa/IffujnB4ikkEb0sZxyircvfvddePHF2NEUp2HDYN0637WsJC9FTok+F+rXr1xq+Ze/\nxI2lGK1bVzkZrklYEZVucmbxYm+Ha+alg2bNYkdUPB57DE46CX7wA5gzR50qJdVUuolpjz38FKNv\nvtFSy3z761/9ccAAJXkRNKLPreeeg2OO8RrxggXafp8Pc+ZA69beaG7hQmjcOHZEIjmlEX1sRx3l\njc6WLIHx42NHUxzuussfzzpLSV6knBJ9LpnBz3/u13ffHTeWYvDf/8Lw4X592WVxYxEpILVO9Ga2\ns5lNNLPZZva0me24idctMLN3zGyKmb1e+1AT6pxzvHVxWRnMmBE7mnQbMcI3qnXpAgcdFDsakYKR\nyYj+18DEEEJr4Nny51UJQEkIoWMI4dAM7pdMO+xQ2f9GSy1zZ/16uPNOv9ZoXuQ7aj0Za2azgC4h\nhOVm1hQoCyHsX8Xr5gM/DCF8spmvl77J2ArTpvl5so0a+bLL7bePHVH6PPEEdOvmu2Hffx+22ip2\nRCJ5kevJ2CYhhOXl18uBJpt4XQCeMbPJZtYvg/slV/v2Xk5YuRKGDo0dTTrdcYc/XnKJkrzIRqr9\niTCziUDTKv7q2g2fhBCCmW1qOH54CGGpmTUGJprZrBDCS1W9cNCgQd9el5SUUFJSUl14yXLllX6k\n3R13wKWXKhll08yZ8PTT3iZah4tIypWVlVFWVrZFn5Np6aYkhLDMzJoBz1dVutnoc64HVoYQ/lzF\n36W3dANeQ95/f1/n/eCD0LNn7IjS45JLfP6jf//K/vMiRSLXpZtHgT7l132AR6oIYBsz2678elug\nKzAtg3smV506cMUVfv3nP0Oaf6nl0+efw8iRfn3ppXFjESlQmST6m4FjzWw2cHT5c8xsdzN7vPw1\nTYGXzGwqMAl4LITwdCYBJ1qfPrDzzvD66/Dqq7GjSYfhw/1A9mOO8bMAROR71AIh3667Dm680VsZ\nP/RQ7GiSbd06b3cwb57vPO7ePXZEInlXk9KNEn2+LVvmXS3XrvV6/T77xI4oucaMgTPO8C6Vs2fr\nFCkpSup1U4iaNvU+LCHA7bfHjia5QoCbb/brq69Wkhephkb0MVRsoNpmG1i0CHbaKXZEyfP003Dc\ncdCkiXcGbdgwdkQiUWhEX6jat4euXWH1ai0HrK2K0fwvfqEkL7IZGtHH8tRTUFrqvernz/fjB6Vm\nXn8dDjvMW0l8+KH3ExIpUhrRF7KuXX054JIlMGpU7GiS5ZZb/PHii5XkRWpAI/qYRo6Evn19ieCM\nGZpQrIlZs6BtW38HNH++zuKVoqcRfaE780zYe29fGjhmTOxokuF//9dX3PTtqyQvUkMa0cc2dKg3\n4mrTBqZP12HW1Vm0yNfMr1sH770HrVrFjkgkOo3ok+Ccc3wD1cyZMG5c7GgK2223+Uaz009XkhfZ\nAhrRF4J774WLLvJll1OnalRflU8/9UNFVq2Ct96Cjh1jRyRSEDSiT4q+faF5c99I9cj3moAK+Gh+\n1So49lgleZEtpBF9obj7bhg40A+1njIFrNpf0MXlo4+8Nr9qFbzyCnTuHDsikYKhEX2SXHCBb556\n+22YMCF2NIXl5ps9yXfrpiQvUgsa0ReSwYPh8svhkEPgjTc0qgdfadOqFXz9tb/T6dAhdkQiBUUj\n+qTp18+bdL35Jjz5ZOxoCsMNN3iS79lTSV6kljSiLzS33gpXXQU//CFMmlTcK3DmzvVzdkPwncP7\n7Rc7IpGCoxF9Eg0Y4Ds+J0+G0aNjRxPXoEG+OapvXyV5kQxoRF+Ihg3zydk99/TeLltvHTui/Js2\nzVcg1avnLSJatowdkUhB0og+qfr08YNJPvwQ7rgjdjRx/O53XrIZMEBJXiRDGtEXqmee8c1B220H\n778PjRvHjih/KvrNb7ON/7c3bRo7IpGCpRF9kv30p3D88fDFF16rLhYhwDXX+PXllyvJi2SBRvSF\n7N13vYRj5jXrNm1iR5R7o0Z5++Zdd/XavM7TFamWRvRJ166dr61ft65ylJtm//2vLy0FP0VKSV4k\nKzSiL3TLl/vO0JUr4dln4eijY0eUO1dd5fsIOnXynjbFvIdApIY0ok+DJk3gN7/x66uu8tF9Gk2f\n7iuM6tTxBm9K8iJZo5+mJLjiCmjRwnvV33137GiyLwS45BL/JXbxxXDwwbEjEkkVlW6SYvx4OPlk\nX3I4bZq37U2LBx7wk7YaN/YjAlWbF6kxlW7SpEcP6NULVq/2M2bT8ktxxQr45S/9+o9/VJIXyQEl\n+iQZPNiXHT7/PAwZEjua7Lj+ep9w7twZzj03djQiqaTSTdI8+KCP7LfbztfZt2gRO6Lae+01OPJI\nf3fy5ptqQyxSCyrdpFHPnl6r/+ILP1A8qb8cV6zwjVHr1sGVVyrJi+SQRvRJtHQptG0Ln38O99/v\nE5lJEoIn+dGjfYXNa69B/fqxoxJJJI3o06pZM7j9dr++/HJYtixuPFtq5EhP8ttu6y0PlORFckqJ\nPqnOPRdKS+Gzz+Css+Cbb2JHVDOzZ8PAgX59113QunXceESKgBJ9Upn5ypvddoPnnoOrr44d0eZ9\n/TX07g2rVvmEcp8+sSMSKQpK9EnWvDmMG+enMN1+O4wYETui6l17Lbz1Fuy1F9xzj/+yEpGc02Rs\nGgwZAv37e637xRf90I5CM2ECdO8OdevCyy974zIRyZgmY4tFv37eI2bNGjjlFFiyJHZE3/XSS74s\nFOAPf1CSF8kzjejTYs0aP3qwYkRfVgYNG8aOyhuxdeniveYvvBDuu08lG5Es0oi+mNSvD2PHwp57\nwqRJlQeWxDRnDhx3nCf5005TXV4kEo3o02bKFDj8cPjySzj9dPj736FBg/zHsXixx/HBB/5OY8KE\nOHGIpJxG9MWoY0f4979h++19hH/iiX46VT598gl07epJ/rDD4KGHlORFIlKiT6Of/AReeMHX2D/z\nDBxzDPzf/+Xn3nPmwFFHwYwZfubtE09Ao0b5ubeIVEmJPq06dPBzV/faC15/3btELlyY23uOHQuH\nHOIHo+y7Lzz1FOy8c27vKSKbpUSfZq1aebI/4ACYNctr5hMnZv8+X38Nl17qSyi/+MInXidPhj32\nyP69RGSL1TrRm9npZvauma0zs00e8mlmpWY2y8zmmNmvans/qaXdd/cll507+4i+a1dPxB98kJ2v\nv2CBv1u46y7foTt4MIwZ43MEIlIQMhnRTwNOAV7c1AvMrC5wF1AKtAV6m1mbDO4ZXVlZWewQNut7\nMe60k/fT/tqWAAAE2klEQVTDuflm7xg5bhy0aQM33ABffVW7m8ybB1ddBQcdBG+8AS1b+o7XSy+t\n8RLKJHwvQXFmm+LMv1on+hDCrBDC7M287FBgbghhQQhhLTAa6FHbexaCJPzPrzLGBg3gV7/yEk6v\nXr788ve/9wnTP/3Je9Bsbt39+vXw9NNw0kleFrr1Vl8j36OHf/6hh2YeZwFSnNmlOPNvqxx//T2A\nDWcAFwEF2IiliDRv7j3gBwzw0ff06ZWdL3fc0XexHn20j9A//hg++qjycfJkbzMMvkGrd29vOfzD\nH8b77xGRzao20ZvZRKBpFX/12xDChBp8fe2AKlQlJb656l//8gna557zevv48f6xKc2be1+dfv2g\nceN8RSsiGch4Z6yZPQ9cFUJ4q4q/6wQMCiGUlj//DbA+hHBLFa/VLwURkVrY3M7YbJVuNnWTycC+\nZrYXsAQ4A+hd1Qs3F6iIiNROJssrTzGzhUAn4HEze7L8z3c3s8cBQgjfAAOBp4AZwIMhhJmZhy0i\nIjVVME3NREQkNwpuZ6yZXWVm682sIPfOm9kNZva2mU01s2fNrEXsmKpiZv9rZjPLY33IzHaIHVNV\narrxLpYkbPgzs2FmttzMpsWOpTpm1sLMni///z3dzC6LHdPGzKyhmU0q//meYWY3xY6pOmZW18ym\nmFm1i2MKKtGXJ81jgSxt28yJP4YQDgohdAAeAa6PHdAmPA20CyEcBMwGfhM5nk3Z7Ma7WBK04W84\nHmOhWwtcEUJoh5d8Lym072cI4SvgqPKf7wOBo8zsiMhhVedyvCxebWmmoBI9cCtwTewgqhNC+GKD\np42APLWF3DIhhIkhhPXlTycBzWPGsyk13HgXSyI2/IUQXgI+ix3H5oQQloUQppZfrwRmArvHjer7\nQgiryy/rA3WBTyOGs0lm1hw4Afgbm14QAxRQojezHsCiEMI7sWPZHDO70cw+BPoAN8eOpwbOB56I\nHUQCVbXhT53asqB8JV5HfBBSUMysjplNBZYDz4cQZsSOaRNuA64G1m/uhbneGfsd1WzAuhYvLXTd\n8OV5CaoKm9soFkK4FrjWzH6Nf7PPy2uA5Wqyoc3MrgXWhBD+mdfgNpCFjXexaKVCDphZI+BfwOXl\nI/uCUv5OuEP5vNZTZlYSQiiLHNZ3mNmJwEchhClmVrK51+c10YcQjq3qz83sAGBv4G3zhljNgTfN\n7NAQwkd5DBHYdJxV+CcRR8qbi9PM+uJv7Y7JS0CbsAXfz0KzGNhwsr0FPqqXWjKzesA44IEQwiOx\n46lOCGFF+VLxHwJlkcPZWGegu5mdADQEtjez+0MI51b14oIo3YQQpocQmoQQ9g4h7I3/MB0cI8lv\njpntu8HTHsCUWLFUx8xK8bd1PconmJKg0DbNfbvhz8zq4xv+Ho0cU2KZj+KGAjNCCLfHjqcqZrar\nme1Yfr01vjik4H7GQwi/DSG0KM+XvYDnNpXkoUASfRUK+S3zTWY2rbyGVwJcFTmeTbkTnyyeWL78\n6i+xA6rKpjbeFYKkbPgzs1HAq0BrM1toZlFKiTVwOHA2vpJlSvlHoa0WagY8V/7zPQmYEEJ4NnJM\nNVFtztSGKRGRlCvUEb2IiGSJEr2ISMop0YuIpJwSvYhIyinRi4iknBK9iEjKKdGLiKScEr2ISMr9\nfxeZmr/ZF8WeAAAAAElFTkSuQmCC\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "x = np.linspace(-np.pi,np.pi)\n", "y = np.sin(x)\n", "\n", "plt.plot(x, y, linewidth=2.0, color='r')\n", "\n", "plt.show()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### 使用 plt.plot() 的返回值来设置线条属性" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "`plot` 函数返回一个 `Line2D` 对象组成的列表,每个对象代表输入的一对组合,例如:\n", "\n", "- line1, line2 为两个 Line2D 对象\n", "\n", " `line1, line2 = plt.plot(x1, y1, x2, y2)`\n", "\n", "- 返回 3 个 Line2D 对象组成的列表\n", "\n", " `lines = plt.plot(x1, y1, x2, y2, x3, y3)`\n", "\n", "我们可以使用这个返回值来对线条属性进行设置:" ] }, { "cell_type": "code", "execution_count": 9, "metadata": { "collapsed": false }, "outputs": [ { "data": { "image/png": "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\nJyfj1DY0XlkAAAAASUVORK5CYII=\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "# 加逗号 line 中得到的是 line2D 对象,不加逗号得到的是只有一个 line2D 对象的列表\n", "line, = plt.plot(x, y, 'r-')\n", "\n", "# 将抗锯齿关闭\n", "line.set_antialiased(False)\n", "\n", "plt.show()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### plt.setp() 修改线条性质" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "更方便的做法是使用 `plt` 的 `setp` 函数:" ] }, { "cell_type": "code", "execution_count": 10, "metadata": { "collapsed": false }, "outputs": [ { "data": { "image/png": "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\nfxeZmr/ZF8WeAAAAAElFTkSuQmCC\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "lines = plt.plot(x, y)\n", "\n", "# 使用键值对\n", "plt.setp(lines, color='r', linewidth=2.0)\n", "\n", "# 或者使用 MATLAB 风格的字符串对\n", "plt.setp(lines, 'color', 'r', 'linewidth', 2.0)\n", "\n", "plt.show()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "可以设置的属性有很多,可以使用 `plt.setp(lines)` 查看 `lines` 可以设置的属性,各属性的含义可参考 `matplotlib` 的文档。" ] }, { "cell_type": "code", "execution_count": 11, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ " agg_filter: unknown\n", " alpha: float (0.0 transparent through 1.0 opaque) \n", " animated: [True | False] \n", " antialiased or aa: [True | False] \n", " axes: an :class:`~matplotlib.axes.Axes` instance \n", " clip_box: a :class:`matplotlib.transforms.Bbox` instance \n", " clip_on: [True | False] \n", " clip_path: [ (:class:`~matplotlib.path.Path`, :class:`~matplotlib.transforms.Transform`) | :class:`~matplotlib.patches.Patch` | None ] \n", " color or c: any matplotlib color \n", " contains: a callable function \n", " dash_capstyle: ['butt' | 'round' | 'projecting'] \n", " dash_joinstyle: ['miter' | 'round' | 'bevel'] \n", " dashes: sequence of on/off ink in points \n", " drawstyle: ['default' | 'steps' | 'steps-pre' | 'steps-mid' | 'steps-post'] \n", " figure: a :class:`matplotlib.figure.Figure` instance \n", " fillstyle: ['full' | 'left' | 'right' | 'bottom' | 'top' | 'none'] \n", " gid: an id string \n", " label: string or anything printable with '%s' conversion. \n", " linestyle or ls: [``'-'`` | ``'--'`` | ``'-.'`` | ``':'`` | ``'None'`` | ``' '`` | ``''``]\n", " linewidth or lw: float value in points \n", " lod: [True | False] \n", " marker: :mod:`A valid marker style `\n", " markeredgecolor or mec: any matplotlib color \n", " markeredgewidth or mew: float value in points \n", " markerfacecolor or mfc: any matplotlib color \n", " markerfacecoloralt or mfcalt: any matplotlib color \n", " markersize or ms: float \n", " markevery: [None | int | length-2 tuple of int | slice | list/array of int | float | length-2 tuple of float]\n", " path_effects: unknown\n", " picker: float distance in points or callable pick function ``fn(artist, event)`` \n", " pickradius: float distance in points \n", " rasterized: [True | False | None] \n", " sketch_params: unknown\n", " snap: unknown\n", " solid_capstyle: ['butt' | 'round' | 'projecting'] \n", " solid_joinstyle: ['miter' | 'round' | 'bevel'] \n", " transform: a :class:`matplotlib.transforms.Transform` instance \n", " url: a url string \n", " visible: [True | False] \n", " xdata: 1D array \n", " ydata: 1D array \n", " zorder: any number \n" ] } ], "source": [ "plt.setp(lines)" ] }, { "cell_type": "markdown", "metadata": { "collapsed": true }, "source": [ "## 子图" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "`figure()` 函数会产生一个指定编号为 `num` 的图:\n", "\n", " plt.figure(num)\n", "\n", "这里,`figure(1)` 其实是可以省略的,因为默认情况下 `plt` 会自动产生一幅图像。\n", "\n", "使用 `subplot` 可以在一副图中生成多个子图,其参数为:\n", "\n", " plt.subplot(numrows, numcols, fignum)\n", "\n", "当 `numrows * numcols < 10` 时,中间的逗号可以省略,因此 `plt.subplot(211)` 就相当于 `plt.subplot(2,1,1)`。" ] }, { "cell_type": "code", "execution_count": 12, "metadata": { "collapsed": false }, "outputs": [ { "data": { "image/png": "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\nSXD+P5ePy54P9ccKAAAAAElFTkSuQmCC\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "def f(t):\n", " return np.exp(-t) * np.cos(2*np.pi*t)\n", "\n", "t1 = np.arange(0.0, 5.0, 0.1)\n", "t2 = np.arange(0.0, 5.0, 0.02)\n", "\n", "plt.figure(1)\n", "plt.subplot(211)\n", "plt.plot(t1, f(t1), 'bo', t2, f(t2), 'k')\n", "\n", "plt.subplot(212)\n", "plt.plot(t2, np.cos(2*np.pi*t2), 'r--')\n", "plt.show()" ] }, { "cell_type": "markdown", "metadata": { "collapsed": true }, "source": [ "## 图形上加上文字" ] }, { "cell_type": "markdown", "metadata": { "collapsed": true }, "source": [ "`plt.hist()` 可以用来画直方图。" ] }, { "cell_type": "code", "execution_count": 13, "metadata": { "collapsed": false }, "outputs": [ { "data": { "image/png": "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\n60kAAAAASUVORK5CYII=\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "mu, sigma = 100, 15\n", "x = mu + sigma * np.random.randn(10000)\n", "\n", "# the histogram of the data\n", "n, bins, patches = plt.hist(x, 50, normed=1, facecolor='g', alpha=0.75)\n", "\n", "\n", "plt.xlabel('Smarts')\n", "plt.ylabel('Probability')\n", "plt.title('Histogram of IQ')\n", "plt.text(60, .025, r'$\\mu=100,\\ \\sigma=15$')\n", "plt.axis([40, 160, 0, 0.03])\n", "plt.grid(True)\n", "plt.show()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "对于这幅图形,我们使用 `xlabel` ,`ylabel`,`title`,`text` 方法设置了文字,其中:\n", "\n", "- `xlabel` :x 轴标注\n", "\n", "- `ylabel` :y 轴标注\n", "\n", "- `title` :图形标题\n", "\n", "- `text` :在指定位置放入文字\n", "\n", "输入特殊符号支持使用 `Tex` 语法,用 `$$` 隔开。\n", "\n", "除了使用 `text` 在指定位置标上文字之外,还可以使用 `annotate` 函数进行注释,`annotate` 主要有两个参数:\n", "\n", "- `xy` :注释位置 \n", "- `xytext` :注释文字位置" ] }, { "cell_type": "code", "execution_count": 14, "metadata": { "collapsed": false }, "outputs": [ { "data": { "image/png": "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\nRVGUgPP/Qde6gvF4TtQAAAAASUVORK5CYII=\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "ax = plt.subplot(111)\n", "\n", "t = np.arange(0.0, 5.0, 0.01)\n", "s = np.cos(2*np.pi*t)\n", "line, = plt.plot(t, s, lw=2)\n", "\n", "plt.annotate('local max', xy=(2, 1), xytext=(3, 1.5),\n", " arrowprops=dict(facecolor='black', shrink=0.05),\n", " )\n", "\n", "plt.ylim(-2,2)\n", "plt.show()" ] } ], "metadata": { "kernelspec": { "display_name": "Python 2", "language": "python", "name": "python2" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 2 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython2", "version": "2.7.10" } }, "nbformat": 4, "nbformat_minor": 0 }