From a49904465c126ff9a97dedfd8fdba2473b64df8c Mon Sep 17 00:00:00 2001 From: skywateryang <50293686+skywateryang@users.noreply.github.com> Date: Wed, 1 Jun 2022 14:56:23 +0800 Subject: [PATCH] upload sphinx source --- notebook/第一回:Matplotlib初相识.ipynb | 367 ----- notebook/第三回:布局格式定方圆.ipynb | 572 ------- notebook/第二回:艺术画笔见乾坤.ipynb | 1464 ----------------- notebook/第五回:样式色彩秀芳华.ipynb | 715 -------- notebook/第四回:文字图例尽眉目.ipynb | 998 ----------- source/_static/logo.png | Bin 0 -> 83804 bytes source/conf.py | 79 + source/index.md | 15 + source/第一回:Matplotlib初相识/index.md | 169 ++ source/第三回:布局格式定方圆/index.md | 236 +++ source/第二回:艺术画笔见乾坤/index.md | 748 +++++++++ .../file/presentation.mplstyle | 6 + source/第五回:样式色彩秀芳华/index.md | 254 +++ source/第四回:文字图例尽眉目/index.md | 533 ++++++ 14 files changed, 2040 insertions(+), 4116 deletions(-) delete mode 100644 notebook/第一回:Matplotlib初相识.ipynb delete mode 100644 notebook/第三回:布局格式定方圆.ipynb delete mode 100644 notebook/第二回:艺术画笔见乾坤.ipynb delete mode 100644 notebook/第五回:样式色彩秀芳华.ipynb delete mode 100644 notebook/第四回:文字图例尽眉目.ipynb create mode 100644 source/_static/logo.png create mode 100644 source/conf.py create mode 100644 source/index.md create mode 100644 source/第一回:Matplotlib初相识/index.md create mode 100644 source/第三回:布局格式定方圆/index.md create mode 100644 source/第二回:艺术画笔见乾坤/index.md create mode 100644 source/第五回:样式色彩秀芳华/file/presentation.mplstyle create mode 100644 source/第五回:样式色彩秀芳华/index.md create mode 100644 source/第四回:文字图例尽眉目/index.md diff --git a/notebook/第一回:Matplotlib初相识.ipynb b/notebook/第一回:Matplotlib初相识.ipynb deleted file mode 100644 index aaa6331..0000000 --- a/notebook/第一回:Matplotlib初相识.ipynb +++ /dev/null @@ -1,367 +0,0 @@ -{ - "cells": [ - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# 第一回:Matplotlib初相识" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## 一、认识matplotlib" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Matplotlib是一个Python 2D绘图库,能够以多种硬拷贝格式和跨平台的交互式环境生成出版物质量的图形,用来绘制各种静态,动态,交互式的图表。\n", - "\n", - "Matplotlib可用于Python脚本,Python和IPython Shell、Jupyter notebook,Web应用程序服务器和各种图形用户界面工具包等。\n", - "\n", - "Matplotlib是Python数据可视化库中的泰斗,它已经成为python中公认的数据可视化工具,我们所熟知的pandas和seaborn的绘图接口其实也是基于matplotlib所作的高级封装。\n", - "\n", - "为了对matplotlib有更好的理解,让我们从一些最基本的概念开始认识它,再逐渐过渡到一些高级技巧中。" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## 二、一个最简单的绘图例子" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Matplotlib的图像是画在figure(如windows,jupyter窗体)上的,每一个figure又包含了一个或多个axes(一个可以指定坐标系的子区域)。最简单的创建figure以及axes的方式是通过`pyplot.subplots`命令,创建axes以后,可以使用`Axes.plot`绘制最简易的折线图。" - ] - }, - { - "cell_type": "code", - "execution_count": 9, - "metadata": {}, - "outputs": [], - "source": [ - "import matplotlib.pyplot as plt\n", - "import matplotlib as mpl\n", - "import numpy as np" - ] - }, - { - "cell_type": "code", - "execution_count": 7, - "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "[]" - ] - }, - "execution_count": 7, - "metadata": {}, - "output_type": "execute_result" - }, - { - "data": { - "image/png": "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\n", - "text/plain": [ - "
" - ] - }, - "metadata": { - "needs_background": "light" - }, - "output_type": "display_data" - } - ], - "source": [ - "fig, ax = plt.subplots() # 创建一个包含一个axes的figure\n", - "ax.plot([1, 2, 3, 4], [1, 4, 2, 3]) # 绘制图像" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "和MATLAB命令类似,你还可以通过一种更简单的方式绘制图像,`matplotlib.pyplot`方法能够直接在当前axes上绘制图像,如果用户未指定axes,matplotlib会帮你自动创建一个。所以上面的例子也可以简化为以下这一行代码。" - ] - }, - { - "cell_type": "code", - "execution_count": 8, - "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "[]" - ] - }, - "execution_count": 8, - "metadata": {}, - "output_type": "execute_result" - }, - { - "data": { - "image/png": "iVBORw0KGgoAAAANSUhEUgAAAXQAAAD4CAYAAAD8Zh1EAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjMuMiwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8vihELAAAACXBIWXMAAAsTAAALEwEAmpwYAAAq70lEQVR4nO3deVyVdfr/8dcli6AioOKGIKLivoDkWmZu7daULZZN61imk6bfaappmqmZ+VbTN3eznGqq0fasbJvELZfSEtw3FkURF1AERGT//P7g2M8U5IDncJ/lej4ePDpwbjnvu6NvPtznPtctxhiUUkq5vwZWB1BKKeUYWuhKKeUhtNCVUspDaKErpZSH0EJXSikP4WvVA7do0cJERUVZ9fBKKeWWEhMTjxtjwqq6z7JCj4qKYtOmTVY9vFJKuSUROVDdfXrIRSmlPIQWulJKeQgtdKWU8hBa6Eop5SG00JVSykPYXegi4iMim0XkqyruaygiH4pIqohsFJEoh6ZUSilVo9qs0KcAu6u570HgpDGmEzATeOlSgymllKoduwpdRNoB1wNvVLPJTcA7ttufACNERC49nnIXa5KzST52yuoYSnk1e1fos4AngIpq7g8HMgCMMWVAHtD8/I1EZIKIbBKRTdnZ2bVPq1xSRk4hD77zM+MWbuBoXpHVcZTyWjUWuojcAGQZYxIv9cGMMQuNMfHGmPiwsCrfuarc0JwVKYgIZ0rLmfReEqXl1f3cV0o5kz0r9CHAGBFJBz4AhovIovO2yQQiAETEFwgGTjgwp3JR+7ILWLI5k3sGtuelW3uTeOAkL3yzx+pYSnmlGgvdGPOUMaadMSYKuBNYaYwZf95mS4F7bbfH2rbRa9t5gdkrUvD3acDEYR25sU9b7hscxVvr9/P1tiNWR1PK69T5PHQReV5Extg+fRNoLiKpwDTgSUeEU64t+dgplm49zL2Do2jRpCEAT1/XjdjIEJ74ZCtp2QUWJ1TKu9Sq0I0xq40xN9huP2uMWWq7XWSMuc0Y08kY098Ys88ZYZVrmbU8mcb+vjw8NPqXr/n7NmD+XXE09PNh4qJECkvKLEyolHfRd4qqOtl5OI9vth/lgcs7ENrY/1f3tQ0JZPadfUnJKuBPn+1Aj74pVT+00FWdzExIJjjQjwcv71Dl/Vd0DuPxkTF8tjmTxRsP1nM6pbyTFrqqtS0ZuSzfncWEodEEB/pVu93kqzoxrEsYz3+5i60ZufUXUCkvpYWuau2VZXtp1tif+wZHXXS7Bg2Embf3JSyoIY8uTuLk6ZL6CaiUl9JCV7Xy0/4c1qYcZ+KVHWncsOYrGIY29ufVu+PIPlXM4x9toaJCj6cr5Sxa6MpuxhheWbaXsKCGjB/Y3u4/1ycihD/f2J3Ve7OZtyrViQmV8m5a6MpuP6SdYOP+HCZf1YlAf59a/dnxAyK5uW9bZi5PZm2KzvFRyhm00JVdzq7O2wYHcGf/iFr/eRHhf2/pReeWTZjywRYO555xQkqlvJsWurLL6r3ZJB3MZfLwzjT0rd3q/KxG/r4sGN+PYtsQr5IyHeKllCNpoasaGWN4JWEvkc0acVt8u0v6Xh3DmvDPsX3YfDCX//2muuulKKXqQgtd1ei7ncfYkZnPYyM64+dz6X9lru/dhvuHRPH2D+l8ufWwAxIqpUALXdWgosIwMyGZ6BaNublvW4d936eu7UZcZAhPfrqN1Cwd4qWUI2ihq4v6evsR9h47xdRRMfg6YHV+lr9vA+bfHUeAbYjX6WId4qXUpdJCV9UqK69g5vJkurQK4oZebRz+/dsEBzJnXCxp2QU8/dl2HeKl1CXSQlfV+mLLYfZln+bxUTE0aOCca34P6dSCaaNi+GLLYRZtOOCUx1DKW2ihqyqVllcwe0UKPcObcnWPVk59rEeHdWJ415Y8/9UuNh886dTHUsqTaaGrKn2SeIiDOYVMGxWDiHNW52c1aCDMuL0PrZoGMGlxEjk6xEupOtFCVxcoLitn7ooUYiNDuKpLy3p5zJBGlUO8jheUMPXDLZTrEC+lak0LXV3gg58yOJxXxPRRXZy+Oj9X73Yh/GVMd9YkZzN3ZUq9Pa5SnkILXf1KUWk581elMqBDM4Z0al7vj39X/0huiQ1n9ooUvk/WIV5K1YYWuvqVRRsOkHWqmOmj63d1fpaI8I/f9CKmZRBTP9hMpg7xUspuWujqF6eLy3h1dRpXdG5B/w7NLMsR6O/DgvFxlJYbJi3WIV5K2UsLXf3i7R/SyTldwrRRMVZHITqsCf8c25stGbn84+tdVsdRyi1ooSsA8otKWbhmHyO6tiQ2MtTqOABc16sND17egXd+PMBSHeKlVI1qLHQRCRCRn0Rkq4jsFJHnqtjmPhHJFpEtto+HnBNXOcuba/eTd6aUx11gdX6uJ6/tSnz7UJ78dBspx05ZHUcpl2bPCr0YGG6M6QP0Ba4RkYFVbPehMaav7eMNR4ZUznXydAlvrdvPtT1b0zM82Oo4v+LnUznEq5G/DxMXJ+kQL6UuosZCN5XOzjf1s33ouz48yMK1+ygoKXO51flZrZoGMGdcLPuyC3hyiQ7xUqo6dh1DFxEfEdkCZAEJxpiNVWx2q4hsE5FPRKTKi06KyAQR2SQim7Kz9RxjV3C8oJi316czpk9bYloFWR2nWoM7tmD66C58ufUw7/yQbnUcpVySXYVujCk3xvQF2gH9RaTneZt8CUQZY3oDCcA71XyfhcaYeGNMfFhY2CXEVo6yYHUaxWXlTBnR2eooNZp4ZUdGdG3JP77ZTZIO8VLqArU6y8UYkwusAq457+snjDHFtk/fAPo5JJ1yqmP5RSzacIBb49oRHdbE6jg1qhzi1ZfWwZVDvE4UFNf8h5TyIvac5RImIiG224HAKGDPeduce/WDMYBe/dcNzF+VSnmF4TE3WJ2fFdzIjwV39+PEaR3ipdT57FmhtwFWicg24Gcqj6F/JSLPi8gY2zaP2U5p3Ao8BtznnLjKUQ6dLOT9nw5y+2URRDRrZHWcWukZHsxzY3qwNuU4s1foEC+lzvKtaQNjzDYgtoqvP3vO7aeApxwbTTnTvJWpiAi/H97J6ih1cudlEWxKP8nclSnERYYwrJ7G/CrlyvSdol4o/fhpPk48xF39I2kTHGh1nDoREf5+c0+6tApi6odbOHSy0OpISllOC90LzVmRgp+P8OhVHa2Ockkqh3j1o9w2xKu4rNzqSEpZSgvdy6RmneLzLZncOyiKlkEBVse5ZB1aNObl23qz9VAef/9KX4tX3k0L3cvMXJ5CoJ8PD1/p3qvzc13Tsw0Thkbznw0H+GJLptVxlLKMFroX2X0kn6+3HeGByzvQrLG/1XEc6omru9A/qhlPfrqdZB3ipbyUFroXmZGQTFCALw9dHm11FIfz9WnAvLtiadzQl0cWJVKgQ7yUF9JC9xLbDuWSsOsYv7simuBGflbHcYqWTQOYOy6W9OOn+eMn23SIl/I6WuheYkZCMqGN/Lh/SJTVUZxqUMfm/OHqrny9/Qj/Xp9udRyl6pUWuhdIPJDD6r3ZPHxlR4ICPHN1fq5HroxmZLdW/O83u0k8kGN1HKXqjRa6F3hlWTItmjTkt4PaWx2lXogIr9zeh7YhgUxavJnjOsRLeQktdA/3Q9pxfkg7waPDOtLIv8ZJDx4jONCPV++OI6ewhCkfbNYhXsoraKF7MGMMM5Yl07ppAHcNiLQ6Tr3rGR7M327qwfrUE8xanmx1HKWcTgvdg61JOc6mAyeZPLwTAX4+VsexxB2XRXJbv3bMXZnKqj1ZVsdRyqm00D2UMYZXlu2lXWggt8dXeUVAr/G3m3vSrU1Tpn64hYwcHeKlPJcWuodavjuLbYfyeGxEZ/x9vftpDvDzYcHdcVRUGCa9p0O8lOfy7n/pHqqiwjAjIZkOLRpzS2y41XFcQlSLxrxyex+2Hcrj+S93WR1HKafQQvdA3+44yu4j+UwZ0RlfH32KzxrdozUPXxnN4o0H+WzzIavjKOVw+q/dw5RXGGYuT6Zzyybc2Ket1XFczh9Gd2FAh2Y8tWQ7e47mWx1HKYfSQvcwS7dmkppVwOOjYvBpIFbHcTm+Pg2Ye1csQQF+TFyUxKmiUqsjKeUwWugepKy8gtnLU+jepinX9GhtdRyX1TIogHnjYjmYU8gTOsRLeRAtdA+yJCmT9BOFTBsVQwNdnV/UgOjmPHF1F77dcZQ31+23Oo5SDqGF7iFKyiqYvSKFPhEhjOjW0uo4bmHC0GhGd2/Fi9/uYVO6DvFS7k8L3UN8uCmDzNwzTB8Vg4iuzu0hIrx8Wx/CQwOZ9F6SDvFSbk8L3QMUlZYzb2UKl0WFckXnFlbHcSvBgX4suLsfuYWlPPa+DvFS7q3GQheRABH5SUS2ishOEXmuim0aisiHIpIqIhtFJMopaVWVFm88yLH8YqaN6qKr8zro3rYpf7u5Jz+knWBGwl6r4yhVZ/as0IuB4caYPkBf4BoRGXjeNg8CJ40xnYCZwEsOTamqVVhSxoLVqQzp1JxBHZtbHcdt3R4fwR3xEcxflcaK3cesjqNUndRY6KZSge1TP9vH+b+X3gS8Y7v9CTBCdKlYL9754QDHC0qYNqqL1VHc3nM39aB7m6Y8rkO8lJMUFJfx7Bc7WJuS7ZTvb9cxdBHxEZEtQBaQYIzZeN4m4UAGgDGmDMgDLlguisgEEdkkIpuys52zQ97kVFEpr69J46ouYfRrH2p1HLcX4OfDa+P7ATBxcSJFpTrESznO6r1ZXD1zDf/ZcIDtmXlOeQy7Ct0YU26M6Qu0A/qLSM+6PJgxZqExJt4YEx8WFlaXb6HO8da6dHILS3V17kCRzRsx4/a+7MjM5zkd4qUc4OTpEqZ9tIX7/v0zgf4+fPLIYB4d1skpj1Wra5IZY3JFZBVwDbDjnLsygQjgkIj4AsHACYelVBfIKyzljXX7GN29Fb3aBVsdx6OM7N6KicM6smB1Gv3ahzK2XzurIyk3ZIzhm+1H+cvSHZVnUQ3vxKThnWjo67yLzdRY6CISBpTayjwQGMWFL3ouBe4FfgTGAiuNvp/aqf61dh8FxWVMGx1jdRSPNH1UDFsO5vKnz7bTo21TurVpanUk5Uay8ot45vMdLNt1jF7hwbz7wAC6t3X+3yF7Drm0AVaJyDbgZyqPoX8lIs+LyBjbNm8CzUUkFZgGPOmcuArgREExb63fz/W92tC1tRaNM/j6NGDOuFiCA/2YuCiRfB3ipexgjOGjnzMYMeN7vk/O5qlru/LZo4PrpczBjhW6MWYbEFvF158953YRcJtjo6nqvL5mH0Wl5UwdqatzZwoLasi8u+IY968NPPHxNhaMj9Pz/FW1MnIKeWrJdtalHqd/h2a8eEsvosOa1GsGfaeom8nKL+LdH9O5OTacTi3r9y+LN+rfoRlPXtOV/+48yhtrdYiXulB5heGtdfsZPXMNWzJy+fvNPfngdwPrvcyhli+KKuu9ujqN0nLDlBGdrY7iNR66ogOJB07y4n/30CcihP4dmlkdSbmIlGOneOLTbWw+mMtVXcL4x2960TYk0LI8ukJ3I4dzz/DexoPcHt+O9s0bWx3Ha4gI/7ytNxGhgUx+L4msU0VWR1IWKymrYM6KFK6fs47046eZdUdf3rrvMkvLHLTQ3crclakATB6uq/P61jTAjwXj+5FfVDnEq6y8wupIyiLbDuUyZt46ZiQkc3XP1iRMu5KbY8Nd4vUVLXQ3cfBEIR9vymBc/wjCLV4FeKtubZry95t7sWFfDq8kJFsdR9WzotJyXvhmNzfPX8/JwhL+9dt45o6LpUWThlZH+4UeQ3cTc1am4NNAmHSVc95hpuwztl87Eg/ksGB1GnGRoYzq3srqSKoebNh3gic/3Ub6iULG9Y/gyWu7ERzoZ3WsC+gK3Q2kZRewJOkQ9wxsT8umAVbH8Xp/ubEHPcObMu2jLRw8oUO8PNmpolL+9Nl27ly4gQoD7z00gBdu6e2SZQ5a6G5h9vIUAvx8eGRYR6ujKCqHeC24ux8NRHSIlwdbuecYo2eu4f2fDvLQ5R34bupQBndy7QvIaKG7uL1HT/HltsPcNzjKpY7VebuIZo2YeUcfdh7O569Ld1odRzlQzukSpn6wmQfe3kRQgC+fThzMMzd0J9DfeTNYHEWPobu4mQnJNPH3ZcLQaKujqPMM79qKSVd1ZP6qNOLah3J7fITVkdQlMMbw5bYj/HXpTk4VlTJlRGcmXdUJf1/3WfdqobuwHZl5/HfnUaaO7ExII3+r46gqTBvVhc0Hc/nz5zvo0bYpPdrq5Et3dDSvcpjW8t3H6NMumJfGDnDLOUnu86PHC81ISCY40I8HLu9gdRRVDZ8GwpxxsYQ08uPRxUnkndEhXu7EGMP7Px1k1IzvWZeazTPXd2PJo0PcssxBC91lJR08yco9WTx8ZTRNA1zzFXVVqUWThsy/K47Mk2f4w8db0cnR7uHAidPc9a+NPLVkOz3Dg/lu6lAeuiIanwbWv0GorrTQXdSMZck0b+zPvYOirI6i7BAf1Ywnr+3Ksl3HWLhmn9Vx1EWUVxjeWLuPq2etYUdmHi/c0ov3fjfAI8Zp6DF0F7Rx3wnWpR7nmeu70bihPkXu4sHLO5B08CT//G4vfSNCGBB9wWV1lcX2Hq0cprU1I5eR3Vry95t70TrYc97boSt0F2OM4ZVlybQMasj4ge2tjqNqQUR46dbetG/WiMnvbyYrX4d4uYqSsgpmLU/mhrlrycgpZM64WP7123iPKnPQQnc561KP81N6DpOHdyLAz/XPe1W/FhTgx6vj4zhVVMpkHeLlErZk5HLj3HXMWp7Cdb3asHzalYzp09Ylhmk5mha6Czm7Og8PCeSOy/ScZnfVtXVTXrilFz/tz+HlZXutjuO1zpSU84+vd3HLq+vJO1PKm/fGM/vOWJo19txTgPUArQtZtTeLLRm5vHhLL6deGVw5329i27Ep/SSvf7+PfpGhjO7R2upIXuWHtOM8+el2DuYUcveASJ68titBXnC2mBa6izi7Oo9s1ohb+7WzOo5ygGdv7M72zDymf7yVr1oHecRZFK4uv6iUF77Zzfs/ZRDVvBEfTBjIQC96cVoPubiI73YeZefhfKaO7Iyfjz4tnqChrw/z74qjgQiPLErSIV5OtnzXMUbN+J4Pf87g4aHRfDtlqFeVOWihu4TyCsOMhGQ6hjXmpr7hVsdRDhTRrBGz7ujL7iP5/PnzHVbH8UgnCor5/fubeejdTYQ28ufzSUN46rpubjFMy9H0kIsL+GrbYZKPFTDvrli3fpeaqtpVXVvy++GdmLsylfioUO64LNLqSB7BGMPSrYf569KdFBSXMW1UDI9c2dGthmk5mha6xcrKK5i9PIWurYO4rmcbq+MoJ5k6MqZyiNcXO+nRNpie4TrE61Iczj3DM5/vYOWeLGIjQ3jp1t7EtAqyOpblavxRJiIRIrJKRHaJyE4RmVLFNsNEJE9Ettg+nnVOXM/z2eZM9h0/zeOjYmigq3OP5dNAmH1nX5o18tchXpegosKwaMMBRs9cw49pJ3j2hu588shgLXMbe343KQOmG2O6AwOBSSLSvYrt1hpj+to+nndoSg9VUlbBnJUp9AoPZrRem9LjNW/SkPl3x3E49wzTP9pKRYUO8aqN/cdPM+5fG3jm8x30iagcpvXA5R30MOU5aix0Y8wRY0yS7fYpYDegr9w5wMeJGWTknGHa6BiPfNeaulC/9qE8fV03lu8+xus6xMsuZeUVvP59GtfMWsOuI/n889beLHpwAJHNG1kdzeXU6hi6iEQBscDGKu4eJCJbgcPA/xhjLrgul4hMACYAREZ69wtDRaXlzFuZSr/2oQyLCbM6jqpH9w+JIvHgSV7+bg99I0IY1NG7Tq2rjd1H8vnjp9vYdiiPUd1b8febe9JKL5ReLbtfDhaRJsCnwFRjTP55dycB7Y0xfYC5wOdVfQ9jzEJjTLwxJj4szLtL7IOfDnIkr4jpo3R17m3ODvGKatGY3+sQryoVl5UzY9lebpy7jsO5Z5h/VxwL7+mnZV4DuwpdRPyoLPPFxpgl599vjMk3xhTYbn8D+ImIa18e20JnSsqZtyqNgdHNXP4q4so5mjT05bXx/ThdXMbk9zZTqkO8fpF44CTXz1nHnJWpjOnTloTHr+T63m104WMHe85yEeBNYLcxZkY127S2bYeI9Ld93xOODOpJ/rMhneMFxUwf3cXqKMpCMa2CePHWXvyUnsPL3+kQr8KSMp77cidjX/uBwuIy/n3/Zcy4oy+hHjxMy9HsOYY+BLgH2C4iW2xfexqIBDDGvAaMBSaKSBlwBrjT6HW4qlRQXMaC1WkMjQnjsqhmVsdRFrupbzib0k+ycM0+4iJDuaandw7xWpdynCeXbOPQyTP8dlB7nrimK0304i61VuP/MWPMOuCiv+sYY+YB8xwVypO9vX4/JwtLmT4qxuooykU8c0M3tmXm8YePt9KldRAdWnjPEK+8M6X84+tdfLTpEB1aNOajhwfRv4MudOrKe98ja4G8M6UsXLOPkd1a0ScixOo4ykVUDvGKxcdHmLgokTMl3jHE67udRxk143s+Tcpk4rCOfDvlCi3zS6SFXo/eXLuP/KLKmRNKnatdaOUQr73HTvHM5zvw5COW2aeKmbQ4iYf/k0jzJg35/NEh/PGarnqFLgfQg1T1JOd0CW+tT+f6Xm3o3rap1XGUCxrWpSW/H96ZOStSiI8KZVx/z3qvhjGGJUmZPP/VLs6UlPOHq7swYWi0jot2IC30evL6mjROl5QxdWRnq6MoFzZlRGc2HzzJX5bupFe45wzxysw9w9NLtvN9cjb92ofy0q296dSyidWxPI7+aKwH2aeKefeHA9zUpy2ddYiQuojKIV6xNG/szyOLEskrdO8hXhUVhnd/TGf0jO/5OT2Hv97YnY8fHqRl7iRa6PVgweo0SsormDJSj52rmjVr7M/8u+M4ll/EtI+2uO0Qr7TsAu5Y+CPPfrGTuPahfDd1KPcN6aBTRZ1IC93JjuSdYdHGA9waF+5Vp6OpSxMXGcqfruvGij1ZLPg+zeo4tVJWXsGrq1O5dvZa9h49xctje/PuA/2JaKbDtJxNj6E72fxVqRhj+P1wPXauaufewVEkHszllWV7iY0MYXBH1x8TsfNwHn/8dBs7MvO5tmdrnrupBy2DdP5KfdEVuhNl5BTy4c8Z3HFZhK5OVK2JCC/e0ovosCY89v5mjua57hCvotJyXv5uD2PmredoXjEL7o5jwfh+Wub1TAvdieauTEFEmHyVrs5V3TRu6Mtr4+MoLCln8ntJLjnEa1N6DtfNWcv8VWn8Jjac5dOGcm0vvZyiFbTQnWT/8dN8mpTJ+AHtaR2sqxRVd51aBvHirb3ZdOAkL327x+o4vzhdXMZfl+7kttd/pLi0gncf6M//3daHkEY6TMsqegzdSWYvT8bfpwETh3W0OoryAGP6tCUxPYc31u2nX/tQy1fAa5KzeWrJdg7nneHeQVH84eouNNZhWpbTZ8AJUo6d4outh3l4aEfCghpaHUd5iD9d352th/L4wyfb6NI6iOiw+j+XO7ewhL9/vZtPEg8RHdaYjx8eRLxODXUZesjFCWYtT6Gxvy8PD422OoryIP6+DZh/dxx+PsLERUkUlpTV6+N/u/0II2es4bPNmUy+qhPfPHaFlrmL0UJ3sJ2H8/h6+xEeGBKlg/mVw4WHBDL7zliSs07xzGf1M8QrK7+IR/6TyMTFSbRq2pClk4fwP1d30WFaLkgPuTjYzIQUmgb48uAVujpXzjE0JowpIzoza3kK/aJCuXtAe6c8jjGGTxIP8bevdlFUVsEfr+nK767ogK8O03JZWugOtCUjl+W7j/E/o2MIDvSzOo7yYI8N70zSwVyeW7qLXuHB9G4X4tDvn5FTyNOfbWdtynEuiwrlxVt709GCY/aqdvRHrQPNSEimWWN/7hvSweooysM1aCDMuqMvLZr4M3FRErmFJQ75vhUVhrfX7+fqWWtIOnCSv93Ugw8nDNIydxNa6A7yc3oOa5KzeeTKaL0WoqoXzRr78+r4fmSdKuLxDy99iFdq1ilue/1H/vrlLi6LasZ3jw/lnkFROkzLjWihO8gry/YSFtSQewZGWR1FeZG+ESH8+YburNqbzaurU+v0PUrLK5i3MoXrZq8jLbuAGbf34e37L6NdqI6rcDe6lHSAH1KPs2Ff5aznQH995V/Vr3sGtifxwElmJCQTGxnKkE72D/HakVl5XvvuI/lc37sNf72xh753wo3pCv0SGWP4v2V7aRMcwJ0edskw5R5EhBdu6UXHWgzxKiot58Vv93DT/PUcLyjm9Xv6Mf+uOC1zN6eFfolWJ2eTdDCXycM76Xm5yjKN/H1ZML4fRaXlTKphiNdP+3O4bvZaXvs+jbFx7Vj++JVc3aN1PaZVzqKFfgmMMcxYlkxEs0Bu6xdhdRzl5Tq1bMJLY3uTeOAkL3xz4RCvguIy/vz5Dm5//UdKyitY9OAAXhrbm+BGeoqtp6jxGLqIRADvAq0AAyw0xsw+bxsBZgPXAYXAfcaYJMfHdS3Ldh1je2YeL4/tjb+v/mxU1ruhd1s2pZ/krfWVQ7yu7105xGvV3iz+tGQ7R/KLeGBIB/7n6hga+etLaJ7Gnme0DJhujEkSkSAgUUQSjDG7ztnmWqCz7WMAsMD2X49VUWGYmZBMdIvG/CY23Oo4Sv3i6eu6se1QLk98spXWwQ1ZvOEgSzZn0rllEz55ZDD92odaHVE5SY3LSmPMkbOrbWPMKWA3cH6D3QS8ayptAEJExKMn3H+9/Qh7jp5iysjO+lZo5VLODvFq6OfDrQt+ZOnWwzw2vBNfPXa5lrmHq9XvXCISBcQCG8+7KxzIOOfzQ7avHTnvz08AJgBERrrvGSHlFYZZy5OJadWEG3u3tTqOUhdoExzIgrvj+Pf6dKaM7Ey3Nk2tjqTqgd2FLiJNgE+BqcaY/Lo8mDFmIbAQID4+3vlj4pzkiy2ZpGWf5rXxcfouOuWyBkQ3Z0B0c6tjqHpk17ECEfGjsswXG2OWVLFJJnDuaR7tbF/zOKXlFcxankKPtk31VC+llEupsdBtZ7C8Cew2xsyoZrOlwG+l0kAgzxhzpJpt3dqniYc4mFPI9NExVP6vUUop12DPIZchwD3AdhHZYvva00AkgDHmNeAbKk9ZTKXytMX7HZ7UBRSXlTN3ZSp9I0K4qktLq+MopdSv1Fjoxph1wEWXoqbysimTHBXKVX34cwaZuWd48dZeujpXSrkcPd/OTkWl5cxbmUr/Ds24vBbDj5RSqr5oodtp0YYDZJ0qZvooPXaulHJNWuh2OF1cxoLVaVzRuYWeBqaUclla6HZ458d0TpwuYdqoGKujKKVUtbTQa5BfVMrr3+9jeNeWxEbq26aVUq5LC70Gb63bT96ZUl2dK6Vcnhb6ReQWlvDm2v1c06M1PcODrY6jlFIXpYV+EQvX7KOgpIzHdXWulHIDWujVOF5QzNs/pHNj77Z0aR1kdRyllKqRFno1XludRlFpOVNGdrY6ilJK2UULvQrH8ov4z4YD3BLXjo5hTayOo5RSdtFCr8L8VamUVximjNDVuVLKfWihnycz9wwf/JTBbfERRDRrZHUcpZSymxb6eeatTAHg98M7WZxEKaVqRwv9HAdOnOajTYe4a0AkbUMCrY6jlFK1ooV+jtkrUvDzER4d1tHqKEopVWta6DapWQV8vjmT3w6KomXTAKvjKKVUrWmh28xankyAnw8PD422OopSStWJFjqw+0g+X207wgNDOtC8SUOr4yilVJ1ooQMzE5IJCvDld1fo6lwp5b68vtC3H8pj2a5j/O6KaIIb+VkdRyml6szrC31Gwl5CGvlx/5Aoq6MopdQl8epCTzxwklV7s3l4aEeCAnR1rpRyb15d6DMS9tKiiT/3Dm5vdRSllLpkNRa6iLwlIlkisqOa+4eJSJ6IbLF9POv4mI73Y9oJ1qeeYOKwTjTy97U6jlJKXTJ7muxtYB7w7kW2WWuMucEhieqBMYYZCXtp3TSAuwdEWh1HKaUcosYVujFmDZBTD1nqzdqU4/ycfpJJwzsR4OdjdRyllHIIRx1DHyQiW0XkWxHpUd1GIjJBRDaJyKbs7GwHPXTtGGN4ZdlewkMCuSM+wpIMSinlDI4o9CSgvTGmDzAX+Ly6DY0xC40x8caY+LCwMAc8dO2t2J3F1kN5TBnRGX9fr35NWCnlYS650Ywx+caYAtvtbwA/EWlxycmcoKLC8EpCMlHNG3FLXLjVcZRSyqEuudBFpLWIiO12f9v3PHGp39cZ/rvzKLuP5DN1ZAy+Pro6V0p5lhrPchGR94FhQAsROQT8BfADMMa8BowFJopIGXAGuNMYY5yWuI7KKwwzE5Lp3LIJN/Zpa3UcpZRyuBoL3Rgzrob751F5WqNL+3LrYVKyCph/Vxw+DcTqOEop5XBecdyhrLyCWcuT6damKdf2bG11HKWUcgqvKPQlSZmknyhk2qgYGujqXCnloTy+0EvKKpi9IoU+7YIZ2a2l1XGUUsppPL7QP9qUQWbuGaaN7oLtZByllPJIHl3oRaXlzFuZSnz7UIZ2dslT45VSymE8utDf23iQo/lFTNfVuVLKC3hsoReWlPHq6jQGd2zOoI7NrY6jlFJO57GF/u6PBzheUMz00TFWR1FKqXrhkYV+qqiU179PY1iXMPq1b2Z1HKWUqhceWej/Xp/OycJSpo3S1blSynt4XKHnFZbyr7X7GN29Fb3bhVgdRyml6o3HFfob6/ZxqqiMx3V1rpTyMh5V6DmnS3hr3X6u792Gbm2aWh1HKaXqlUcV+uvfp3GmtJzHR3a2OopSStU7jyn0rFNFvPNjOjf3DadTyyCr4yilVL3zmEJ/dVUapeWGKbo6V0p5KY8o9MO5Z3hv40Fu69eO9s0bWx1HKaUs4RGFPm9VKgbD5OGdrI6ilFKWcftCz8gp5KOfMxjXP5J2oY2sjqOUUpZx+0KfvSIFnwbCpKt0da6U8m5uXej7sgtYknSIewa2p1XTAKvjKKWUpdy60GevSCHAz4dHhnW0OopSSlnObQt979FTLN16mHsHR9GiSUOr4yillOXcttBnLU+mib8vDw+NtjqKUkq5hBoLXUTeEpEsEdlRzf0iInNEJFVEtolInONj/tqOzDy+3XGUBy7vQEgjf2c/nFJKuQV7VuhvA9dc5P5rgc62jwnAgkuPdXEzE5IJDvTjwSs6OPuhlFLKbdRY6MaYNUDORTa5CXjXVNoAhIhIG0cFPN/mgydZsSeLCUOjaRrg56yHUUopt+OIY+jhQMY5nx+yfe0CIjJBRDaJyKbs7Ow6PZgBhsaEcd/gqDr9eaWU8lT1+qKoMWahMSbeGBMfFhZWp+8RFxnKuw/0p3FDXwenU0op9+aIQs8EIs75vJ3ta0oppeqRIwp9KfBb29kuA4E8Y8wRB3xfpZRStVDjcQsReR8YBrQQkUPAXwA/AGPMa8A3wHVAKlAI3O+ssEoppapXY6EbY8bVcL8BJjkskVJKqTpx23eKKqWU+jUtdKWU8hBa6Eop5SG00JVSykNI5WuaFjywSDZwoI5/vAVw3IFxrKT74po8ZV88ZT9A9+Ws9saYKt+ZaVmhXwoR2WSMibc6hyPovrgmT9kXT9kP0H2xhx5yUUopD6GFrpRSHsJdC32h1QEcSPfFNXnKvnjKfoDuS43c8hi6UkqpC7nrCl0ppdR5tNCVUspDuHShu+IFquvCjv0YJiJ5IrLF9vFsfWe0l4hEiMgqEdklIjtFZEoV27j882LnfrjF8yIiASLyk4hste3Lc1Vs01BEPrQ9JxtFJMqCqDWyc1/uE5Hsc56Xh6zIag8R8RGRzSLyVRX3Of45Mca47AcwFIgDdlRz/3XAt4AAA4GNVmeu434MA76yOqed+9IGiLPdDgKSge7u9rzYuR9u8bzY/j83sd32AzYCA8/b5lHgNdvtO4EPrc59CftyHzDP6qx27s804L2q/h454zlx6RW6cbELVNeVHfvhNowxR4wxSbbbp4DdXHgNWZd/XuzcD7dg+/9cYPvUz/Zx/tkONwHv2G5/AowQEamniHazc1/cgoi0A64H3qhmE4c/Jy5d6Haw+wLVbmCQ7dfMb0Wkh9Vh7GH7FTGWylXUudzqebnIfoCbPC+2X+23AFlAgjGm2ufEGFMG5AHN6zWknezYF4BbbYfzPhGRiCrudwWzgCeAimrud/hz4u6F7imSqJzP0AeYC3xubZyaiUgT4FNgqjEm3+o8dVXDfrjN82KMKTfG9KXymr79RaSnxZHqzI59+RKIMsb0BhL4/6tclyEiNwBZxpjE+nxcdy90j7hAtTEm/+yvmcaYbwA/EWlhcaxqiYgflSW42BizpIpN3OJ5qWk/3O15ATDG5AKrgGvOu+uX50REfIFg4ES9hqul6vbFGHPCGFNs+/QNoF89R7PHEGCMiKQDHwDDRWTReds4/Dlx90L3iAtUi0jrs8fORKQ/lc+LS/5js+V8E9htjJlRzWYu/7zYsx/u8ryISJiIhNhuBwKjgD3nbbYUuNd2eyyw0thejXMl9uzLea/HjKHy9Q+XYox5yhjTzhgTReULniuNMePP28zhz0mN1xS1knjIBart2I+xwEQRKQPOAHe64j82myHAPcB223FOgKeBSHCr58We/XCX56UN8I6I+FD5Q+cjY8xXIvI8sMkYs5TKH17/EZFUKl+gv9O6uBdlz748JiJjgDIq9+U+y9LWkrOfE33rv1JKeQh3P+SilFLKRgtdKaU8hBa6Ukp5CC10pZTyEFroSinlIbTQlVLKQ2ihK6WUh/h/vyV/3iC5QPwAAAAASUVORK5CYII=\n", - "text/plain": [ - "
" - ] - }, - "metadata": { - "needs_background": "light" - }, - "output_type": "display_data" - } - ], - "source": [ - "plt.plot([1, 2, 3, 4], [1, 4, 2, 3]) " - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## 三、Figure的组成" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "现在我们来深入看一下figure的组成。通过一张figure解剖图,我们可以看到一个完整的matplotlib图像通常会包括以下四个层级,这些层级也被称为容器(container),下一节会详细介绍。在matplotlib的世界中,我们将通过各种命令方法来操纵图像中的每一个部分,从而达到数据可视化的最终效果,一副完整的图像实际上是各类子元素的集合。\n", - "\n", - "- `Figure`:顶层级,用来容纳所有绘图元素 \n", - "\n", - "- `Axes`:matplotlib宇宙的核心,容纳了大量元素用来构造一幅幅子图,一个figure可以由一个或多个子图组成\n", - "\n", - "- `Axis`:axes的下属层级,用于处理所有和坐标轴,网格有关的元素\n", - "\n", - "- `Tick`:axis的下属层级,用来处理所有和刻度有关的元素\n", - "\n", - " ![](https://matplotlib.org/_images/anatomy.png)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## 四、两种绘图接口" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "matplotlib提供了两种最常用的绘图接口,在最后的思考题中请思考两种模式的主要区别\n", - "\n", - "1. 显式创建figure和axes,在上面调用绘图方法,也被称为OO模式(object-oriented style)\n", - "\n", - "2. 依赖pyplot自动创建figure和axes,并绘图\n", - "\n", - "使用第一种绘图接口,是这样的:" - ] - }, - { - "cell_type": "code", - "execution_count": 9, - "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "" - ] - }, - "execution_count": 9, - "metadata": {}, - "output_type": "execute_result" - }, - { - "data": { - "image/png": "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\n", - "text/plain": [ - "
" - ] - }, - "metadata": { - "needs_background": "light" - }, - "output_type": "display_data" - } - ], - "source": [ - "x = np.linspace(0, 2, 100)\n", - "\n", - "fig, ax = plt.subplots() \n", - "ax.plot(x, x, label='linear') \n", - "ax.plot(x, x**2, label='quadratic') \n", - "ax.plot(x, x**3, label='cubic') \n", - "ax.set_xlabel('x label') \n", - "ax.set_ylabel('y label') \n", - "ax.set_title(\"Simple Plot\") \n", - "ax.legend() " - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "而如果采用第二种绘图接口,绘制同样的图,代码是这样的:" - ] - }, - { - "cell_type": "code", - "execution_count": 10, - "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "" - ] - }, - "execution_count": 10, - "metadata": {}, - "output_type": "execute_result" - }, - { - "data": { - "image/png": "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\n", - "text/plain": [ - "
" - ] - }, - "metadata": { - "needs_background": "light" - }, - "output_type": "display_data" - } - ], - "source": [ - "x = np.linspace(0, 2, 100)\n", - "\n", - "plt.plot(x, x, label='linear') \n", - "plt.plot(x, x**2, label='quadratic') \n", - "plt.plot(x, x**3, label='cubic')\n", - "plt.xlabel('x label')\n", - "plt.ylabel('y label')\n", - "plt.title(\"Simple Plot\")\n", - "plt.legend()" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## 五、通用绘图模板\n", - "由于matplotlib的知识点非常繁杂,在实际使用过程中也不可能将全部API都记住,很多时候都是边用边查。因此这里提供一个通用的绘图基础模板,任何复杂的图表几乎都可以基于这个模板骨架填充内容而成。初学者刚开始学习时只需要牢记这一模板就足以应对大部分简单图表的绘制,在学习过程中可以将这个模板模块化,了解每个模块在做什么,在绘制复杂图表时如何修改,填充对应的模块。" - ] - }, - { - "cell_type": "code", - "execution_count": 21, - "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "" - ] - }, - "execution_count": 21, - "metadata": {}, - "output_type": "execute_result" - }, - { - "data": { - "image/png": "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\n", - "text/plain": [ - "
" - ] - }, - "metadata": { - "needs_background": "light" - }, - "output_type": "display_data" - } - ], - "source": [ - "# step1 准备数据\n", - "x = np.linspace(0, 2, 100)\n", - "y = x**2\n", - "\n", - "# step2 设置绘图样式,这一模块的扩展参考第五章进一步学习,这一步不是必须的,样式也可以在绘制图像是进行设置\n", - "mpl.rc('lines', linewidth=4, linestyle='-.')\n", - "\n", - "# step3 定义布局, 这一模块的扩展参考第三章进一步学习\n", - "fig, ax = plt.subplots() \n", - "\n", - "# step4 绘制图像, 这一模块的扩展参考第二章进一步学习\n", - "ax.plot(x, y, label='linear') \n", - "\n", - "# step5 添加标签,文字和图例,这一模块的扩展参考第四章进一步学习\n", - "ax.set_xlabel('x label') \n", - "ax.set_ylabel('y label') \n", - "ax.set_title(\"Simple Plot\") \n", - "ax.legend() " - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## 思考题\n", - "- 请思考两种绘图模式的优缺点和各自适合的使用场景\n", - "- 在第五节绘图模板中我们是以OO模式作为例子展示的,请思考并写一个pyplot绘图模式的简单模板" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [] - } - ], - "metadata": { - "kernelspec": { - "display_name": "Python 3", - "language": "python", - "name": "python3" - }, - "language_info": { - "codemirror_mode": { - "name": "ipython", - "version": 3 - }, - "file_extension": ".py", - "mimetype": "text/x-python", - "name": "python", - "nbconvert_exporter": "python", - "pygments_lexer": "ipython3", - "version": "3.9.4" - }, - "toc": { - "base_numbering": 1, - "nav_menu": {}, - "number_sections": false, - "sideBar": true, - "skip_h1_title": false, - "title_cell": "Table of Contents", - "title_sidebar": "Contents", - "toc_cell": false, - "toc_position": {}, - "toc_section_display": true, - "toc_window_display": true - } - }, - "nbformat": 4, - "nbformat_minor": 4 -} diff --git a/notebook/第三回:布局格式定方圆.ipynb b/notebook/第三回:布局格式定方圆.ipynb deleted file mode 100644 index 0ed9fd8..0000000 --- a/notebook/第三回:布局格式定方圆.ipynb +++ /dev/null @@ -1,572 +0,0 @@ -{ - "cells": [ - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# 第三回:布局格式定方圆" - ] - }, - { - "cell_type": "code", - "execution_count": 2, - "metadata": { - "ExecuteTime": { - "end_time": "2020-11-01T10:58:25.798702Z", - "start_time": "2020-11-01T10:58:25.319113Z" - } - }, - "outputs": [], - "source": [ - "import numpy as np\n", - "import pandas as pd\n", - "import matplotlib.pyplot as plt\n", - "plt.rcParams['font.sans-serif'] = ['SimHei'] #用来正常显示中文标签\n", - "plt.rcParams['axes.unicode_minus'] = False #用来正常显示负号" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## 一、子图\n", - "\n", - "### 1. 使用 `plt.subplots` 绘制均匀状态下的子图\n", - "\n", - "返回元素分别是画布和子图构成的列表,第一个数字为行,第二个为列,不传入时默认值都为1\n", - "\n", - "`figsize` 参数可以指定整个画布的大小\n", - "\n", - "`sharex` 和 `sharey` 分别表示是否共享横轴和纵轴刻度\n", - "\n", - "`tight_layout` 函数可以调整子图的相对大小使字符不会重叠" - ] - }, - { - "cell_type": "code", - "execution_count": 2, - "metadata": { - "ExecuteTime": { - "end_time": "2020-11-01T10:58:26.423289Z", - "start_time": "2020-11-01T10:58:25.798702Z" - } - }, - "outputs": [ - { - "data": { - "image/png": "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\n", - "text/plain": [ - "
" - ] - }, - "metadata": { - "needs_background": "light" - }, - "output_type": "display_data" - } - ], - "source": [ - "fig, axs = plt.subplots(2, 5, figsize=(10, 4), sharex=True, sharey=True)\n", - "fig.suptitle('样例1', size=20)\n", - "for i in range(2):\n", - " for j in range(5):\n", - " axs[i][j].scatter(np.random.randn(10), np.random.randn(10))\n", - " axs[i][j].set_title('第%d行,第%d列'%(i+1,j+1))\n", - " axs[i][j].set_xlim(-5,5)\n", - " axs[i][j].set_ylim(-5,5)\n", - " if i==1: axs[i][j].set_xlabel('横坐标')\n", - " if j==0: axs[i][j].set_ylabel('纵坐标')\n", - "fig.tight_layout()" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "`subplots`是基于OO模式的写法,显式创建一个或多个axes对象,然后在对应的子图对象上进行绘图操作。 \n", - "还有种方式是使用`subplot`这样基于pyplot模式的写法,每次在指定位置新建一个子图,并且之后的绘图操作都会指向当前子图,本质上`subplot`也是`Figure.add_subplot`的一种封装。" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "在调用`subplot`时一般需要传入三位数字,分别代表总行数,总列数,当前子图的index" - ] - }, - { - "cell_type": "code", - "execution_count": 16, - "metadata": {}, - "outputs": [ - { - "data": { - "image/png": "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\n", - "text/plain": [ - "
" - ] - }, - "metadata": { - "needs_background": "light" - }, - "output_type": "display_data" - } - ], - "source": [ - "plt.figure()\n", - "# 子图1\n", - "plt.subplot(2,2,1) \n", - "plt.plot([1,2], 'r')\n", - "# 子图2\n", - "plt.subplot(2,2,2)\n", - "plt.plot([1,2], 'b')\n", - "#子图3\n", - "plt.subplot(224) # 当三位数都小于10时,可以省略中间的逗号,这行命令等价于plt.subplot(2,2,4) \n", - "plt.plot([1,2], 'g');" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "除了常规的直角坐标系,也可以通过`projection`方法创建极坐标系下的图表" - ] - }, - { - "cell_type": "code", - "execution_count": 3, - "metadata": {}, - "outputs": [ - { - "data": { - "image/png": "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\n", - "text/plain": [ - "
" - ] - }, - "metadata": { - "needs_background": "light" - }, - "output_type": "display_data" - } - ], - "source": [ - "N = 150\n", - "r = 2 * np.random.rand(N)\n", - "theta = 2 * np.pi * np.random.rand(N)\n", - "area = 200 * r**2\n", - "colors = theta\n", - "\n", - "\n", - "plt.subplot(projection='polar')\n", - "plt.scatter(theta, r, c=colors, s=area, cmap='hsv', alpha=0.75);" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "> 练一练 \n", - "\n", - "请思考如何用极坐标系画出类似的玫瑰图\n", - "\n" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "### 2. 使用 `GridSpec` 绘制非均匀子图\n", - "\n", - "所谓非均匀包含两层含义,第一是指图的比例大小不同但没有跨行或跨列,第二是指图为跨列或跨行状态\n", - "\n", - "利用 `add_gridspec` 可以指定相对宽度比例 `width_ratios` 和相对高度比例参数 `height_ratios`" - ] - }, - { - "cell_type": "code", - "execution_count": 3, - "metadata": { - "ExecuteTime": { - "end_time": "2020-11-01T10:58:27.018425Z", - "start_time": "2020-11-01T10:58:26.425522Z" - } - }, - "outputs": [ - { - "data": { - "image/png": "iVBORw0KGgoAAAANSUhEUgAAAr4AAAEdCAYAAADq52SoAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjMuMiwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8vihELAAAACXBIWXMAAAsTAAALEwEAmpwYAAA/M0lEQVR4nO3de9wcZX3//9ebHEgIkEQTAkRjqIeIFhGNLRgPt3yLgMcYLHwVtR5a0KJVa2lBsfSnILFUa78qCC31hG05lEYrVEQjyMFYgkHRFkQR1CgSW5IIBAjJ5/fHzJLNnd373sPs7jUz7+fjsY97792Z2Wuv67Mz11xzzXUpIjAzMzMzq7rdRp0AMzMzM7NhcMXXzMzMzGrBFV8zMzMzqwVXfM3MzMysFlzxNTMzM7NacMXXzMzMzGrBFV8zs3EkvVjS0havL5W0pOl/SXqnpH0m2NZjBpVOMzPrjiu+Zma7uhA4tfkFSTOAK4H3N718BPAx4O0TbOscSbdIemInHyxpX0k/kvTu7pJsZmaTccXXzGxXD+aPR0XEg8A5wLGS9s9ffitwN3BWq41I2g34P8BWYLGkGyVdL+m6/PEtSZ8ft9om4ImAZxcyMyvY1FEnwMwsQQ+TVVbH+39kFdMHJC0GXgGcGhFb2mzn5cA8stbju4ErgOOAWcB5wHRgg6TZwJOBO4H/ydd9qIgvYmZmO7jF18wMkDRb0h6SpjS9NkPSnpJOlLQZuImslXct8G1gCvBOST+XtEHSR8Zt9p1kLccXR8QPIuJ04B7g5og4IyL+MiI+DvwOcCPwf2LHPPI7tfhKerOkH0h6WNJDkq6RdPAAssLMrLLc4mtmlrkNWND0/xOBPwC+DrwLeDdZS3AABwLvBT4I/BAQ2f70J42VJT0LeBHw44jY3LTd3wL+ddxnN97f2Cphkt4F/C1wDfCpPJ3vAq6W9LSI+GUX39PMrLZc8TUzy7yUrFL7u2R9eVeRVWwfjojvA99vLChpjKzi+9WIuK7N9nbp95uP/rAQeLKkU/KXbwZ+lj9/uMU684EPAX8fESc0vf4j4NPA64G/7uwrmpnVm7s6mJkBEXFTRHyHrEUWYFNEfCev9HZF0quBFwMPjHvrJfnffYDlwP9HNjLEtkYyWmxuL+BM4M/Hvb42/7sAMzPriFt8zcxykgSsaPp/TkRszJ8fSXZj22ZgUb7IIkkHAjOA3YF1ZJXa84FfAV8kG9Whse23Az+JiKX5//cDv54oTRFxB1nFd7xD8783d/s9zczqyhVfM7MdxtjR4vu7wJ2SXhgR3wUuAmaPW/4L4/4/ICLulHQ2cAfwnKb3jgOeTdZXGLIuDzOBH3ebSEnTgD8lq1yv6nZ9M7O6clcHM7MdTiHrb/tTspbUXwEXSdoDeDwwNSJEdtMawPPz/6cCe+brERFnRcRFjY1K+i2yfsN3Ag9KOpwdLbb/1UM6Tye7we6UiPhND+ubmdWSK75mZjx6w9qLyW4U20o2ju7bgfnAwRHxm4jY1mrdiNgWEfdHxPY2m99ENhTa28n69n4VOINsFIf/IhsVotN0HkU2LvDFEfGZTtczMzNXfM3MGtMRn0c2HNn5jdcj4irgKcAvJT0272LQbhszJc3N++7uJCL+B3hxRFwOHE02WsQSYHVeWZ6eLzrhPlnSU4F/Jhth4s1dfEUzM8N9fM3MIOu7Oxs4ISIeHld33ekGtHHvXduinjuXFuPxNiamiIiQ9MP85Uvyv3PyvzPaJVDSfmQzvz0IvCwi7p/oC5mZ2a5c8TWz2ouIX0kai4hbW7z9EHAY2Ri7D5ENPfY7wGeB44Hv5MtNIbtZbcI+t3nr8unAeuCy/OVvk/Uh/p826+wHrCbrdjEWET9rtZyZmU3MFV8zM6BNpbfRUrum+TVJ++ZPf9puvQn8DVk3h7dGxMP5ZzwI/HyCdS4Fngp8DjgwH0Kt4Vd5lwwzM5uEK75mZruaDrTtz9uFaY3tSNqNbDa3k8hubju/eUFJ08luqlucv/RI/vq+wHPz196QP5pdA7jia2bWAVd8zcx2NZ0dN5xNZLJ96HRgen7D2xXAkWTDpB3b6PPb5FnADeyYve1OgIi4my5GfTAzs/Zc8TUz29VmspvIJrPHJO9PB6bnN7T9FVkf4TdExKbxC0bEGkm3kA199hWyPr1mZlYg7droYGZmZmZWPR7H18zMzMxqwRVfMzMzM6sFV3zNzMzMrBZc8TUzMzOzWnDF18zMzMxqwRVfMzMzM6sFV3zNzMzMrBZc8TUzMzOzWnDF18zMzMxqwRVfMzMzM6sFV3zNzMzMrBZc8TUzMzOzWnDF18zMzMxqwRVfMzMzM6sFV3zNzMzMrBYGUvGV9FFJbxv32uckLeliGy+W9MH8+RRJU5rek6Td+0zjuyWdOe61j0h6Xj/bHQbnbz24nG3YHHNWN475GoqIQh/AE4GHgO8Da4F1wFuBh4EfADcD/wU8LV/+eODT47axd77M7+b/L8+3szZ/fAf4ah9pnAtsAG5v2t6JwBbgVuB7efpf3LTOC4Grxm3nW8B1wP3ALfnzG4A3ALOBKcCngHc6f9vnb55fG4AHgI/kr+2X5+V1wCPAjU35eyQwBxDwFeCVRcfxqB8VLecnARcBXwde73JO61HFmGta70XANxxzfoyLi8rFfB63vwLuzh/7OebH5WnBQTQvL/AXA68APg9MzTP5+cAK4NKm5V8GbAQ+0/Ta1Dzz/3RAgT4T+BrwFuCZwNX5618CXgssJavQ7ta0zu8A6xvLttjmvcDica/9L/AU4GPAm5y/rfMXWATckS+7EPg5sKxpe3OBB4Hdm17bGwhgOrAKeNEwfizDelS0nKeQ7aBXAM8CfgY8tc7lnNKjijHXtN4M4IeM23875ur9qGrMAz8Z/xtoes8xH8FUijUbuBB4J7AVeCxwaZ7R78mXmSdpRkQ8CLwJ+CBwUNM25pKd1XxG0neAV0XEXQWmca88TccALwemSFqVf+6x+TLbgMcBP83/fxvwfrKWyZ1IOhTYE3iXJIDvRsSngd+QtWBCFlRFqGL+TgVeExE3A+RpelzT9o4ka1H/cJ6/3yD70W+LiIfz14rK31RUsZznAZ+IiMsAJP0n8GSyFguoZzmnpIox13AacBNZq1czx1y9VS7mJe0H3BMR29tszzEPA+nqMIWs2Xwm2Zn2W4Ez8uczgLuA6fmyAt5I0xlU03b+gay19DFkzfU/JDtI3gH8OH9c2GMaRRY4e+RpOprsbK+Rxm8CTxm3/BgtWnyBLwAryc7G3g/8Tf76nWTB+DHgjc7f9vnbtN4ewD3AAU2vXQf8SZ6/5wJvz19/JP+7ChgbxFnhKB9VLed8nRcCPwJm172cU3pUMeaAp5N1Q3squ7b4OuZq/qhazAMvITuG/pzsqtofjduWYz6Kb/EFWEzWj69hHlkT+lH5//sC04CHIyLyM4ydSHodWdP+IRHxv/k6jffOAO6OiE/0kcaZwFVN/+9FdrZ3Xf7/kjyNAEyQziPILpP8XkR8V9IbyFoWBmkxFcvfJicDqyPiJ3la/jBf7z8i4nZJC8jO0OtgMdUs52OBvwfOi4hNeVrqXM4pWUyFYk5ZAj8F/DFZK15zOh1zBhWLeWA7cCbwcbL+y9dL+veIuNsxv8MgKr6PB9ZHxCvh0R3M4yLirzpZWdJS4APAmgGkrWEfYFpEHJx/5u8Br4uIN3a6AUm7AR8m6/7wKUnfAl4J/E3xyd1JJfNX0sFkZ9vPzv+fBZxClr9fkfQPwGFk/a/qoJLlHBEXSboSuE7S5WTlWedyTknVYu5E4JaIuFbS4qZ01n3fYjtUKuYj4itkfY4Bbpd0NfCCfF/rmM8NouI7H1gmaW3+/zxguqSXNS3zvYh4c5v11wGHA/2cIXWSxgOa0rgX8Nim/wE2RMTR7TYQEdsl/W5EbJX0TeBK4NaI+EW+yB44fzvKX0mzyc66/7iRfxFxv6QD8/w9jOzs9rLI+iHtQdbXadfT7+qoVDnnfc8WR8S3ImKjpK8BT4+Iq2tezimpVMyR3bC0VNIKskvasyXdGBHPccxZrlIxL+nlwH9GxK/y1xcC23083Vnh4/hGxCURMQ94KdndhfcA50fE0ohYSnaj2OwJ1t8WEXd285mSDpN0q6TjO0zjjRGxN1nA/ifZqAxfbkrj0WRnWZNtZ2v+dBHZUE2nNL19ar7dQlU0f/8Z+EpE/Nu47TTy90CyH/sH8/+3k33Pyv5QK1jOM4DLJD1O0t5kXYT+M99Obcs5JVWLuYh4SUTsExH7As8BboiI5+TvOeascjEPHAycLmmWpOVkfduvybfjmM8VWvFV5hBJfwd8max/1flN751B1gH8uvZb2SltOxVEfolqNrvedTiLrJ/L3A7TuSRPyzXA1WR3/Tbeew9Zx/FJ06hsoOo35dt4Z0Tc0ngvIi4gGx+wMVRI36qYv3kXh6OB4yXdnT/elb+3u6Q/Ay4BjouIuwEi4sGI+BRZX6w9W6S31KpYzpH12z6VbOidW4BzIuLGfNlalnNKqhhzk2zHMVdzFY35jwD7k43j+35gRURsyJd1zDdEsXdILiC7K/A1wJT8tZOAs/LnRwBLO9zW18gHhG567VLgu8CzWyx/BuMGLW+z3Vlkl9XfSj6WHdnZ3j/nz59LNoZfy3Hwxm3rA2Rnicsm+A6bWqXX+dtR/n6ObADxp7V5/3ayH/jjiozjUT9czvUo55QejjnHXN0ejvld3q9NzCv/wqWWn1mdBrwv2o9fN4jPnQbMjIjNbd6fC/wmIh4ZVpoGYYT5uxfZ3bQPtXn/scC9w0xTlbmcbdgcc1Y3jvnRq0TF18zMzMxsMoXf3GZmZmZmliJXfM3MzMysFgYxzmzfpuwxO6bO3nk0sWlTduOp++411HTcdNNNv46I+UP90A7MmzcvFi9e3PP6t979G7Zu27UbzyjyuAgpllO/ZWQT6zWGU4wVcLyU0bD2o2WN2aodZ6xcJvrdJFnxnTp7H/b7g4/t9JqAtStfOtR0SLprqB/YocWLF7N27drJF2zjgFMubzleySjyuAgpllO/ZWQT6zWGU4wVcLyU0bD2o2WN2aodZ6xcJvrdDLXiq2xu6Esj4vndrrv/nJlt31u1bj1nX3kbv9i4hf3nzOTkI5ew/JCF/SS10vafM5P1G7e0fL0d53Gmnxi24vQSw5aWFPcp3aTJMTgx54+lamh9fPOhvT5LNi7dhHYbN3PezGlTOPnIJS2XXbVuPadedgvrN24hgPUbt3DqZbewat36AlKdrlXr1rNs5WoOOOVylq1c3dX3PfnIJcycNmWn16ZNEfc/9EjL7dU1j8frJoZtsFrF8ET7CRueTvZNKe5Tuk2TY3Bizh9L1TBvbtsGHAe0G/P2BElrJa3dKx5g4ZyZCFg4ZyZnrTio7Vn32Vfexpat23Z6bcvWbZx95W0FJz8dGx/Y2tdBY/khCzlrxUGP5vHcPaZBwMYtW1tur4553MaEMWzDMz6GJ9tP2HB0WnlMcZ/SbZocgxNz/liqhtbVoTHJg8a15ja9fz75dIFLly6N6085vKPt/qLFpZSJXq+Cuzc/yLw2O+hOdyrLD1n46LLLVq7m3ge27vR+8/bqmMetTBbDkk4ATgBYtGjR8BJWU40YblyefvdFN3P2lbclccm8riaqPDaXSb/7lEF0k+glTc370aoosjtXFfPHyq+vFl9Jr2t6/gJJr+w/Sd1p11+oyv2IWt0pC71XRCfb4dcxj3sREedHxNKIWDp/fnI3YVdSipfM66zTymM/+5RBlbn3c+7OZfXQdcVX0jck7Zn/+2ZJu0m6EDgd+J9CU9eB1PsRSbpA0g2STutnmWbTprQutl530JPt8FPPY6uvFC+Z11mnlcd+9imDKnPv5wB357Ia6KnFNyLuy59uB2YAnwZeDtxUULo6lnI/IkkrgCkR8Vxgf0lP7mWZ8fbde0ahO+jJdvgp57ENXz83VhbN3XDS0mnlsZ99yqDK3Pu5rDtXRGxq937zvTgbNmwYZtLMCtNLH9/mofkWAxfmz08Cdpd0f0Qc23bliLEePnNCCfcjGgMuzp+vBp4H3N7DMrv0H/2bFQcV1setsd5E20s4j4duEDFcFo3LzI0Wt8ZlZmAk8eEhk9LSyb6kedleYmaQZe793MTG34sz4uSY9aSXim/znT13RMQKSW8DLomIX0v6x4LSluQ4j12aBTSawzYDT+pxmV12OEXvoHvdXgXKyLrQ6c1Lw3LykUt2qohDLS9PJ2XQlUeXuVm99Vvv6KXie72kGcAjQKOv71TgYkn/HRFv7mGbu0itZalH9wGNZog9ad21pJNlklSRMrIupNa1oJsWRquGqpW5Gw/MOldEvaPrim9EnCZpPvAp4K2Svgx8NSIOl/T0brfXTmotSz26iazrwhrgYKDV3RedLJOkipSRdSHFrgW+PF0//ZR5ShXNVBsP6tydy9JWRL2j64qvpMvJ+vk+AzgTWAI8LGkM2E3S9Ih4SbfbHW/QLUtD2vmtAq6VtD9wNPB/JZ0REadNsMyhRSeiZcIK+P6ptf7Z4PV6mTmlyobVV2oVTTcemHWniHpHL10dVgBzgEvIKm3LgQeAU4FfAtN62OYuOmlZ6vVgOqydX0Rszk8IjgD+OiLuBr47yTJt76gtSlHfP8XWv0GTdAFwIHBFRJwx6vQMWy+XmVOrbNjojepEKLWKphsPiueT7Gorot7RS1eHhyTdB5wfERcCF0g6FDg+IlaS9f3t22QtS/0cTIe584uIe9kxakPPyxSpqO8/7JtMRr1Dax56TtI5kp4cEbuMwFF13V5mTq2yMSz9nCSNOtYHaZQnQqlVNOvYeDBIE8UWVKdfeJ0VUe/odRzf+yPiQkn75f+viYiV+WQWnc01PInJxlTsZxDz1HZ+w1bU9x/muJeJzNA1xq5Dzz3KY1zuatW69S0P7FDt31sv43M3JBLrAzPKSUdSm53Nk2YUq11svfvimzn5ku9W9jdVJ0XUO3rp6oAkAQuBf5J0DHBsRHySbKizk8kqBX2bqGWpn8pb3c+yZ8+cxsYtW1u+3q1h3ViUyAxdEw495zEud9aowLVT8d/bGJOMzz1+bO6GqreQj7LhIbWh0Ko2QsWotYuhCNgaO++Sq/Sbqpt+6x293Nz2DOAzwBSyCu8GScuBT0bENkmFdHWYTD99gFPb+Q2b1N3rKUiklb60Q8+NQqsKXEMNfm+Tjs/d7kQpkVgfmFE2PKRY0fSoJMVpF1vtlPU3VeWuUMPQSx/f70laBrwWOFfS6UBz8+FQWrqK6ANc18DZ+MCurb0TvZ6CiQ6Wdw4vGaUdem4UJjqo1GAq2J5Pkqp+RWrUDQ+uaFbXi546nwvX/LTj5cv4m/LNwv3rusVK0h8Bv09W2b0MOApYKOkNkv6g4PS11W8f4OWHLOT6Uw7nJytfyvWnHF6rgEmtn1snEukLtwp4vaSPAscClw/zw8umXTwtnDOzDr+3xkkSZCdJd3a6YiKxPjDDvDfAuiPpAkk3SDpt8qXT841bO7+3oqy/qUS6/ZVaL318d2dHhXkG8FOybg8z2Hk644EbVB/gqht1i0svUmilH8XQc2VWxjgr0Cp6HJ87hVgfNLe6pqcKo9ZMdHyfNkXMmj6VTVu2lvo35bpN/3rp6vAJSbOA+cBFwCuA5Xl/NSS9tNgk9qbqlwv7UdYDawoHy2EPPVdmvY75W7a4bKXfk6QUYt1qZ4web8hMRbvj/hSJs199cCV+U67b9K+Xm9v2IftR7An8fkT8StKMwlPWp5q3Nk2qKlN+lkGd86ubOKta3zWfJFnJ9HxDZiraHfer1JXGdZv+9dLiew/w25JeApwt6ZPAZwEkTSXrCtHSMGe9KmurZuqqVjnphqQFwKUR8fxO16lTfvVbwa/6MF5miSv9qDVFH/eLaLQouuHDdZv+9TSOL0BEXCHpSuAJEXFH/vLjgU+3Wn4U/Yd8ubB4da2cSJpLdoI3q5v16pJfRVTw3XfNbKQqMWpNUcf9IvZpg2r4cN2mP32d0UXEtoi4Q9IzJX0EuAJ4uM3iY3jWq9KrceVkG3Ac2SXAjtUlv4q407iMo42YVcgqPGrNo4rYp3kEhjT1MpzZv0v6mqTrJP1A0ibgEuA7wNMj4rI2q47vP7Sg+c2IOD8ilkbE0vnz53ebLBuSulROJJ0n6erGA3jXZDcotTp5q0t+FVHBL2oYr1Xr1rNs5WoOOOVylq1c7WlJzToQEZvJGqjWAC+q+6g1RezT6tLwUTa9dHX4Q7LWr23AbGAucBJwDLBc0nvbdGEYef+hTvraNC8zbf7ig4adxtTVpWN9RJzYwzq73PhRl/wq4k7jIvqu1alPtVnRfEPmDkXs0zwCQ5p6qfgeAjwAPEI2icVrgI3AnwAHAH8LvKzFeiPtP9TJAXH8Mpoydfow01gG7ljfnbrkV1EV/H77rtWlT7WZDVYR+7S6NHyUTVcVX0nTySqvW4HtwN5krbdPA74CXErW8tvKKnoc0L0InRwQWy1ju3LH+u7UIb9SqeD70qKZFaGIfVoq+0XbWVcV34h4GDhN0hLg3cDp+Ti+7wC+BbyfbArjl7RYd6SzXnVyQPTB0SYTEWOjTkOqUqjg+9KimRWliH1aCvtF21lX/WwlTZX0d2StvZcDt0j6M+Aw4CdkN629vN36EXFvRFwcEXf3keaebl7p5CYjHxzNyq2oG+T6IWm2pP+QdJWkf8uvlJklTdICSdeOOh1mg9ZtH9/twJeAt5DdqLYJuBF4D/DM/LV92TF6Q2EaN52t37gFAY0pYzq9eaWTvjatlqmSOs8gZqM1rNhL5NLi8cBHI+IqSeeSXQX70jATUEfev/Wu13HKx3MZWBl029VhO/B14OuS9gK+GhHXSDowIjZK+hlQ+CC84286Gz9PYic3r3RyQBy/TGx7pN2YxJOSNBv4F7I8vg84Lu8qMn65qcAd+QPgHRFxS6+f247vdrdRGXbsjfrSYkSc0/TvfOCeVstJOgE4AWDRokVDSFl1ef/Wt8Y45V/sdQMuAyuLfmZu+w35ANcRsTH/+8NikrWzTm4666R/bicHxOZl9OGX9VMB7bTV5xnAP0fEX/TxWZPy3e42KlWPPUnnAc19KVZHxAckHQbMjYg1rdZrNfyd9abqMVa0CWJ2svXanqy5DKwseq74DlMnldrU+ud22upDNrrFqyQtA+4C/iAiHhm/UL+tQ77b3Ual6rHXasxnSY8BPk77UW6sQFWPsaL1Mk55vl7bkzWXgZXF0CeR6MVkldoUxsUbP9OXpL/MX5+w1Yesj/QLI+J5ZOMh7zIiBvQ/s11dZhCz9NQt9vKb2S4GTo2Iu0adnjqoW4ylyGVgZaGI9K6wSdpA1voJwG4z937M1L3nPwFpl4r6tvvufSS2bf3Z9i2b/7fDzc8Dft3hsk+IiJ7nT85bfb4KHNPuAChp94h4KH/+DmB6RHxkku3ulD+daJmHEdsf2bzhrknyrpv8GpTJ0tBXOQ1Ch2WUQt72quO09xF7gzDwWJH0NuBDwHfzl86NiIsmWafr33QfyhJ3ZYmxQefn0PZvkq7udMjGjo7Tk5dBSrHotLRW1rS0/d0kWfHthqS1EbF0UMv3Km/1uQL4cERcNcFyFwNnAt8HrgI+FBFfG3T6OjWs/Eo9DYNQ5u9V5rTXXVnKzumsvpTyzmlprYppKUVXh5J6C/Bs4H1514fjJD1N0hnjlvsA8HngZuBbKVV6zczMzKqkFDe3lVFEnAuc2+Kt08Yt932ykR3MzMzMbICq0OJ7/oCXr7sU8iuFNAxCmb9XmdNed2UpO6ez+lLKO6eltcqlpfR9fM3MzMzMOlGFFl8zMzMzqyhJj5F0hKR5/W6r9BVfSQskXTvqdFjxJM2W9B+SrpL0b/lIGZVQ5e9mafM+szjOy/45D3eVQp6kdIyStB/ZTMG/A3xDUl/D+5W64itpLvBZYFaHy18g6QZJp02+tCWQX41pn48A7iab9rkqSvvdEogL61G3+8xRKUOMlSUvU5ZKHqYUb6nkCWkdo54OvDsizgSuBJ7Vz8ZKXfEFtgHHAZsnW1DSCmBKRDwX2F/SkweduDJLIb8i4pymMZAnmva5dMr63VKIC+tLx/vMUSlRjCWflyUw8jxMMN5GnieQ1jEqIr4WEWskvYCs1fdb/WyvVMOZSToPaJ6beHVEfEBSJ6uPkU0jCrAaeB5we6EJrJYxEsmvDqZ9Tt4EsVu27zZGInFhk+tznzkqY5QgxiJiM0DieZmURONxjITiLbW4SuUYpSxDjgO2kp0c9KxUFd+IOLGP1WcB6/Pnm4En9Z+iSksiv/Jpnz8OHDOKzy9Kq9gt6XdLIi6sM33uM0fFMVZRicaj462NlI5RkQ1BdpKkDwIvAyacBn4iZe/q0I37gJn58z2p13fvxcjzK+9MfzFwakTcNdnyZVLi7zbyuLDKc4zZMDneWkjpGCXpLyS9If93DrCxn+3VqYBvIruEAXAwcOfoklIKKeTXLtM+jyANg1LW75ZCXFi1OcZsmBxvraV0jDofeL2kbwJTgK/2s7HaTGAhaW/gWuDrwNHAoRGxabSpSpfzy1pxXNigOcZsmBxv9VObii88OkzIEcA3I+LuUacndc4va8VxYYPmGLNhcrzVS60qvmZmZmZWX3Xq42tmZmZmNeaKr5mZmZnVgiu+ZmZmZlYLrviamZmZWS244mtmZmZmteCKr5mZmZnVgiu+ZmZmZlYLrviamZmZWS244mtmZmZmteCKr5mZmZnVwkAqvpI+Kult4177nKQlXWzjzZLemj+fKmm3pvd2kzR91GkcFedvfbisbZgcb1Y3jvkaiohCH8ATgYeA7wNrgXXAW4GHgR8ANwP/BTwNOAXYBGwE3tO0jccBPwZ+K///j4Hv5NtrbPMzw0hj0zrHA59u+n8/4AbgOuAR4Mb8+Q3AkcAcQMBXgFc6f9vnb6t0As/K83INEHneXgd8CzgYmJ0vdytwcNFxnMKjomX9HOCLwJXA0S7rdB5VjLem9d7U+FzHmx+9xFNZYh74b+Du/PHz/DXHfHOeFhxE8/JCeTHwCuDzwFSySuHzgRXApfmyhwHfBX4rD6rNwOOBPfNtHDOgQO84jU3rvCwP9l2CF5gLPAjs3vTa3nlwTQdWAS9y/rbO33bpbHr/mcCd4z7jGcAv8uc3AweM8kc06nwsUVnPBn4IvAgYA+4B5ta9rFN4VDHemtabD/yacftvx1u9H1WMeWAW8F8TbM8xH8FUijUbuBB4J7AVeCxwKVnF8D35MvMkzQDuB14TEXcASLoT2B/YIy/c70m6Efi9iNg0ijRGxIP5/28CPggc1GJ7R+bf5cOSAL4BfAnYFhEP56/FsNNOefK3XTp/li97FBCSPpb//6/Az4EHmj6zqPxNSRXLej/gtIj4Rp7On5G1ltybL1vXsk5BFeOt4W+Bq1psz/FWb1WM+WcAt0ywPcc8DKSrwxSyy/wzgRlkTfJn5M9nAHcB08etsz/ZwW9W/r/IdlTvIjtD+QVwG1kz/E+A24E7gZXDSGOenjfSusX3OuBP8nSeC7w9f/2R/O8qYMz5O3Ea26Rzd+AO4NV5Or9I1vq+GPhRvszNwOJBnyGO4lHVss7XOQb4HjDFZZ3Go4rxBhwBXE12leEzTa873vyoXMyTdbNYn6fhx8ArmrbjmM8fRbf4kmfiRU3/zyO75H9U/v++wDSy/ikNZwLnRcT9+f/vA34P+P2I2EgWaABIuhD4l4j48rDSGBGRt9zuRNIfkp2B/UdE3C5pAdnZ2SAtpmL5O0E630+20/hORNwh6fFkP8xBxG2KFlPNsn5nns4/i4ht+Wt1L+sULKZC8SZpJllr76uAheO243gzqFjMA/cBfxERF0o6FFgl6cqIeAjH/KMG8YUfD6yPiFfCo5XDx0XEX7VaWNLRwPPIzkCQ9Eqyfis/GkDaekpjK5JmkXV2fwPwFUn/QNYP6Mbik7uTSuZvi3Q+Hngt8BrgekkfAWZGxM8lLR5g2lNSybKOiI9Kuhj4tqQryW7cqHtZp6Bq8XY68Lm8UeLRiq/3LdakUjEfEZ9rer5G0k+BgyX9Esf8owZR8Z0PLJO0Nv9/HjBd0sualvleRLw53wH9A/CqprOnrwPfBr42gLR1ncZ2G4iI+yUdGBFbJR1G1uXhssj69e4BTFGrZuIhpr0s+dsqnRHxM0lL8vx9PtndqB/O192DepylVqqsJT0J2CMivpfvcG8ElkTE5S7rJFQq3oCXk/V//FOyFrKZkvaOiBWON8tVKuYlvYGshbnRQr0Q2O7j6c4KH8c3Ii6JiHnAS8n6t9wDnB8RSyNiKfA2YLak3cluAjs7Iv6zaf37IuLubj5T0qsl3SpprMg0drCdrfnTA4G9yG6AA9ieb6Pwim/V8rddOvPtNPL3OWSjanwi/38D2WWbSqtaWZNdArxI0hxJ+5GV67p8O7Uu6xRULd4i4ukRsSAi9iVrlbsoIlbk7znerHIxD7wAeI+kPSSdRHY17ZZ8O475XKG1/LyF85lkN4I9l6wrwAHA4/L3Pkh2k8GlZP1TngnsJ+mUfBMnRcS/5s93o6niqGxA6N3JCnj8XYdzgCVkQ4sUmcbJtrU78A7gz4FXN34Akd1d+Slld4Pu2SK9Palo/rZNp6S9gPeSdSc5IiK2AETEBkkXKuvDN6tFekuvimUdEd+U9DmycSbvB94VEb/It1Xbsk5BFeNtkm053mquojH/XuCS/O93yOYQeCjflmO+IYq9Q3IB2SgGr2HH3donAWflz48Alna4rR8BC5r+F9lgy98GFrVY/kLgKUNO4+fIOoc/rc37twO/IuuP4/ztPo3XAKtb5R/Z5ZnNeR7PLDKOU3i4rOtT1ik8HG+Ot7o9HPM7vVermFf+pUtN2Y0Lb4iIs4b8uXsBD0d+RtXi/ccC90bE9mGmq2gjzN/HABvb5Z+keRHx62Gmqepc1jZMjjerG8f86FWi4mtmZmZmNpnCb24zMzMzM0tRkkNYzJs3LxYvXjzqZHDTTTf9OiLmjzod46WSP6lIsZxcRmlKMVbA8WLtOWbNujfR7ybJiu/ixYtZu3bt5AsOmKS7Rp2GVlLJn1SkWE4uozSlGCvgeLH2HLNm3Zvod5NkxXeUVq1bz9lX3sYvNm5h2vzFBw3zs5VNeXxpRDx/WJ/Z/H33nzOTk49cwvJDxs/uaf1wHpv1x78ha+Z4sH644ttk1br1nHrZLWzZug0ATZk6fVifLWku8FmycfSGYvz3Xb9xC6dedguAdyIFqXoe+wBkg1b135B1x/Fg/fLNbU3OvvK2R39MI7ANOI5sLL2haPV9t2zdxtlX3jasJFRelfO4cQBav3ELwY4D0Kp160edNKuQKv+GrHuOB+uXK75NfrFxy8g+OyI2R8Smdu9LOkHSWklrN2zYUMhntvu+o8yH1ElaIOnaTpevch77AGTDUOXfkHXP8WD9csW3yf5zZo46CW1FxKNzc8+fX8wNvu2+b8r5MEq9dEepch77AGTDUOXfkHXP8WD9csW3yclHLmHmtCmjTsbQtPq+M6dN4eQjl0y67qp161m2cjUHnHI5y1aursvl7a67o/STx6nzAWhy3V4hsF1V+Tdk3XM8WL9c8W2y/JCFnLXiIBbOmYmA2PbIw6NO0yCN/74L58zkrBUHTXqDQF37dvbSHaXXPC4DH4AmNoobVquoyr8h657jwfqV5JTFS5cujRTGB5R0U0QsHXU6xht1/ixbuZr1LS5nL5wzk+tPOXzo6Rl2OUm6OiLGJlpm1GU0LGUb1WGYsSJpb0DAFx0v1isfh8y6N9HvxsOZWdfct9Malh+yMOmK7ihFxGYASS3fl3QCcALAokWLhpcwM7Mac1cH65r7dpr1bxA3rJqZ2cRc8bWu1b1v52SXrc3MzCxN7upgXWtc2i5T304zMzMzV3ytJ+7badYZXyEwM0uHK76WvLKNHGBmZmZpcsXXktYYM7gxNW5jzGDAlV8zMzPrim9us6SdfeVtj1Z6G7Zs3cbZV942ohSZmZlZWbnia0nzmMFmZmZWlKFWfD1vvXXLYwabmZlZUYZW8fW89daLuo8ZbGZmZsUZZovvNuA4YPMQP9NKbvkhCzlrxUEsnDMTAQvnzOSsFQf5xjYzMzPr2tBGdfC89dYrjxlsZmZmRUjm5jbPW29mZmZmg+RxfM2sJU8cYmZmVeOKr1mF9Vp59cQhZmZWRUPv6uB5682Go1F5Xb9xC8GOyuuqdesnXdcTh5iZWRUl08fXzIrVT+XVE4eYmVkV1aqrg/ssWp30U3ndf85M1rdYzhOHmJlZmdWmxbefy75mZdTPrHeeOMRsOFatW8+ylas54JTLWbZytY9JZgNWm4pv6n0WJV0g6QZJp3WyvHeWNpl+Kq+eOMRs8NwgYzZ8tenqkHKfRUkrgCkR8VxJ50h6ckTc3m75jQ9s9R33NqlGLPTavccTh5gN1kQNMv7tmQ1GbSq+ifdZHAMuzp+vBp4H7FTxbZ7ZbvqcfdjPO0vrgCuvZulKuUHGrKpq09Uh8T6Ls4DGta3NwILxCzTPbMeMvVtuxDtLM7Py6Kcfvpn1pjYV38T7LN4HNPZ0ezJJuUyb0vpt7ywHr9u+2GZm7STeIGNWSbXp6gBJX/a9iax7wxrgYGDCO+723XsG06ZN2alvmHeWg9dtX2wzs4n02w/fzLpXq4pvwlYB10raHzgaOHSihefsMY3TVhzkneXwjTFBX+zmftiLFi0adtrMrIRSaZCRNBv4F7J6wX3AcRHx8GhTZVY8V3wTEBGbJY0BRwB/HRGbJlsnlZ1lzYzvi/2k5jcj4nzgfIClS5fGcJNmZtaX44GPRsRVks4FjgK+NOI0mRXOFd9ERMS97GhNtDR11RfbzKwsIuKcpn/nA/eMX8ZXtawKfOA261yjLzZkfbHvHF1SzMyKJ+kwYG5ErBn/XvPoQvPnzx9B6sz6V4kW31Xr1ru/axecXz1bRRd9sc3MykTSY4CPA8eMOi1mg1L6im9jykfPYtYZ51fveumLbWZWBpKmk3W3OzUi7hp1eswGpfRdHSaa8rGdVevWs2zlag445XKWrVxdq3nRe8kv2yEi7o2IiyPi7lGnxcysQG8Bng28T9LVko4bdYLMBqH0Lb7dTvlY9xZPT5Fp47nri5lFxLnAuaNOh9mglb7Ft9spH+ve4ukpMq1Z40Rw/cYtBDtOBOt0FcSsSHW+omhWBh1XfCW9run5CyS9cjBJ6k63Uz7WvcXTU2Ras7qfCJoVySeSZumbsOIr6RuS9sz/fbOk3SRdCJwO/M/AU9eB5Ycs5KwVB7FwzkwELJwzk7NWHNT2Um3dWzy7zS+rtrqfCJoVySeSZumbtI9vRNyXP90OzAA+DXwLSGZmqm5mMTv5yCU79fGF+rV4jp8fvrFTduW3fvafM5P1LSq5dTkRNCuSTyTN0jdZxbe5crsYuDB/fhKwu6T7I+LYQSRsUMZX+up4M09Zb/DzTVjF84mgWe/G75Nmz5zGxi1bd1nOJ5Jm6Zis4qum53dExApJbwMuiYhfS/rHAaZtYLppIa6iiS7HpZovE1XWrXc+ETTrTat90rQpYtpuYuv2HW1GPpE0S8tkFd/rJc0AHgEafX2nAhdL+u+IePNAU2cDUcbLce47Nzh1PxEcFEkXAAcCV0TEGaNOTxF81WWHVvukrduCuXtMY4/pU51HZomasOIbEadJmg98CnirpC8DX42IwyU9fSgptMKVsV9nGSvrVeSKT2ckrQCmRMRzJZ0j6ckRcfuo09WPsnaRGpR2+56ND2xl3V++eMipMbNOTTaqw+VkN7M9BzgTWAKMSboMOFPSFYNPohWtjEOa1X00jhR4qKaujJFN/wqwGnje+AUknSBpraS1GzZsGGbaeuKrLjvzPsmsnCYbx3cF2TSGdwKrgFuBB4B3Aq8Gjhlg2mxAyjikWRkr61Xjik9XZgGNM4LNwILxC0TE+RGxNCKWzp8/f6iJ64WvuuzM+ySzcpqsq8NDku4Dzo+IC4ELJB0KHB8RK8n6/loJla1fp2/CGj1XfLpyH9Bo+tuTisySWbYuUoPkfZJZOXUyju/9wIWS9ouIX0bEGmCNpN2AsYhYPfBUmlG+ynrVuOLTlZvIujesAQ4GSt8s7qHvduV9kln5TNoKoczjgIskzZd0UuMt4OSBpq4mJC2QdO2o02E2EV/a7coq4PWSPgocC1w+2uT0r4xdpMzMxpuwxVfSM4DPAFOAYyNig6TlwCcjYpskd3Xok6S5wGfJ+gSaJcuXdjsXEZsljQFHAH8dEZtGm6JiuIXTzMpusj6+35O0DHgtcK6k04HmaWmSmba4xLYBxwFfHHVCzCbjik/nIuJedozsYGZmCZisxfePgIfIKruXAUcBCyW9gZ1ndetIFQd075ak88iGhWtYHREfkCbOTkknACcALFq0aHAJNDMzM6uoyW5u250d/YBnAD8l6/Ywgy4rvlUc0L0XEXFij+udD5wPsHTpUre0m7XhSTbMzKydybo6fELSLGA+cBHwCmB5XglD0ku7+Kwxdh3Q/dGKr1s0LXWSFgCXRsTzR50Wa82zi5lZSnwinp7JujrsQ1ZJ3RP4/Yj4laQZPX7W+AHdn9T85rBbNB2M1g3fhFgOE02y4d+3mQ2TT8TTNFmL7z3Ab0t6CXC2pE+SHfyRNJWsK0SnkhnQPcVgjIixkXywdWrSmxDLdNUi5RO/ftLmSTbMLBU+EU/TpBNYAETEFZKuBJ4QEXfkLz8e+HQXn5XMgO4ORptMLzchlqUfdoonfg39ps2TbJhZKro9EU+5QaJKOm51jYhtEXGHpGdK+ghwBfBwF5+1ikQGdHerkE0mIk6MiLGmxwdGnaaiTHTiN2r9ps2TbJhZKtqdcLd6vXHSv37jFoIdJ/2r1q3fdQPWlwkrvpL+XdLXJF0n6QeSNgGXAN8Bnh4Rl3X6QRGxmewGtzXAi0Y5oHs3wVg3q9atZ9nK1RxwyuUsW7naP7oKSvnEr9+0eXYxM+tV0ce/bk7EU26QqJrJujr8IVnfxm3AbGAucBJwDLBc0nu7GZIslQHdPed8aylfArfipNwdoIi0eZINM+vWII5/3cx2mXKDRNVM1tXhEOBpZJNOzAdeD2wEXgf8FfC3A0zbwLhVqDWfcU6uCjchptwdIOW0mVl1Der4t/yQhVx/yuH8ZOVLuf6Uw9vWM3wlenjatvhKmk52M9pWYDuwN9loDE8DvgJcStbyW0puFdqVzzjroZtWiGFLOW1l5JtlzDoz6uOfr0QPT9uKb0Q8DJwmaQnwbuD0fBzfdwDfAt5PNoXxS4aSUhu4lC+BW7FSPvFLOW1l4q5LZp0b9fHPJ/3DM1GL71TgI8AnyEZguEXSXwPPAv6JbBKKNw4hjTYkPuM0S0MRLbUettGscykc/3zSPxwT3dy2HfgS8BayiSc2ATcC7wGemb+2LztmY7OS8xmn2egV1VI76ku3ZmXi4199TNTVYTvwdeDrkvYCvhoR10g6MCI2SvoZsGEQidr4wFaWrVzt4BuBTs443W/QbHCKaqkd9aVbs7IZRourj5+j19EEFhHxm4i4PH++Mf/7w7wfcOHWb9ziQZwT5UG2zQarqJZaj5BhlhYfP9PQ8cxtw7Q9dp7ttdchRTwZQ/E85JnZYBU1rJGHbTRLi4+faZhsAotkdNva4TuaB8P9Bs0Gq8ibbHyzjFkxiuii4ONnGpJs8W2l29YOn1kNhgfZNhsst9SapaWoLgo+fqYhyRbf3aSd/u+ltcNnVoORwpAvZlXnllqzdBR1w6mPn8Xot/U9yRbfhXNm9t3a4TOrwXBrlJlZNUm6QNINkk4bdVpSUlRDmo+f/Sui9T3JFt85e0zj+lMO72sbPrMaHLdGmZlVi6QVwJSIeK6kcyQ9OSJuH3W6UlDk0IA+fvaniNb3JFt8i+AzKzMzs46NARfnz1cDzxu/gKQTJK2VtHbDhoEM458kDw2YjiJa35Ns8S2Kz6zMzMw6MosdM7FuBp40foGIOB84H2Dp0qUx/v2q8qxu6Sii9b3SFV8zMzPryH1Ao/awJxW+ItwLN6SloYhurK74jpik2cC/kJXFfcBxg5oRz8ysyjwdbF9uIuvesAY4GPDYn5acIlrfXfEdveOBj0bEVZLOBY4CvjTiNJmZlYonLerbKuBaSfsDRwOHjjY5Zq312/ruSxkjFhHnRMRV+b/zgXtaLVfXmwrMzDrhSYv6ExGbyW5wWwO8KCI2jTZFZoPhFt8hk3Qe0NwZZXVEfEDSYcDciFjTar263lRgZtaJ1CctKkM3jIi4lx0jO5hVkiu+QxYRJ45/TdJjgI8Dxww/RdYJ98U2S1uRY60Wzd0wzNLhrg4jJmk62Rn2qRFx16jTY201+mIfAdxN1hfbzBKR8lir7oZhlg5XfEfvLcCzgfdJulrScaNOkO2q077YZjYaKU9alHo3DLM6cVeHEYuIc4FzR50O21kvfbElnQCcALBo0aLhJNSSJGkBcGlEPH/UaamTVMdaTbkbhlnduOJr1kIvfbF9A6IBSJoLfJZsJiyzQgbdtzSV4aZF25m7Oph1wH2xrQvbgOPIpn1ty0MU1kfK3TCsd42bFtdv3EKw46bFVevWT7qujY5bfM0609wX+33AuRFx0YjTZAmYoFvMhOv5CkG9pNoNw3o30U2LLut0laLi60sJNmrui23ttOoWY2bV55sWyyn5iq/HPzQzM7PUVO2mxbo0Mg6tj6+kBZKu7XY9j39oZmZmqUl57Ohu1am/8lAqvv3c5exLCWZWRhExNuo0mNngVOmmxTo1Mg6rq0PjLucvdrti1S4lmJmZWTVU5abFOjUyDqTFV9J5+SxkV0u6GnhXRGyaZJ2WQ/tU6VKCmZmZWWraNSZWsZFxIC2+vdzl3G5on8aZVB06XJuZmZkNW50mWUl+VAeozqUEMzMzs9TUqZGxFBXfQarL8B1mZmZm7dSlkXGoFd/U7nL2GMFmZmZm9TG0cXxTVKfhO8zMzMzqrtZdHdoN09Fq+DQbHnc/SZPLpRpcjjYoji0rg1pXfNuNESyo5GwlZeDuJ2lyuVSDy9EGxbFlZVHrrg4nH7kEtXg9wN0dRsTdT9LkcqkGl6MNimPLyqLWFd/lhywk2rxXxdlKyqBOs8eUiculGlyONiiOLSuLWld8IZtbu5UqzlZSBnWaPaZMXC7V4HK0QXFsWVnUvuLrKZHT4vJIk8ulGlyONiiOLSuLWt/cBvWaraQMXB5pcrlUg8vRBsWxZWVR+4ov1Ge2krJweaTJ5VINLkcbFMeWlYEi2t3eNTqSNgB3tXhrHvDrHjfby7pPiIj5PX7ewEyQP0XpJ58HrVXakiunScoo5fxtqGoak4sVKPQ3nWK5OU2daZemssVsinnbqbKmvazphsGlve3vJsmKbzuS1kbE0mGvWzcp51XKaetUGb6D01hOKeaJ09SZFNPUizJ/j7KmvazphtGkvfY3t5mZmZlZPbjia2ZmZma1ULaK7/kjWrduUs6rlNPWqTJ8B6exnFLME6epMymmqRdl/h5lTXtZ0w0jSHup+viamZmZmfWqbC2+ZmZmZmY9ccXXzMzMzGqhdBVfSQskXdvlOhdIukHSaYNKV1WkmleSZkv6D0lXSfo3SdNHnaZelOF7pBoDDWXIw2HopJwkTZX0U0lX54+DRpyeocbWZJ83zPxp+swJj2GSpkn6cp7uNw86PUXr5RidgtT3exMpY56Pcj9eqoqvpLnAZ4FZXayzApgSEc8F9pf05EGlr+wSz6vjgY9GxBHA3cBRI05Pr5L+HonHQEPSeTgMXZTTM4B/joix/HHLqNIz7Njq8POGkj9NaerkGPYOYG2e7pdJ2muQaSpSL8foFJRkv9dSWfOcEe7HS1XxBbYBxwGbu1hnDLg4f74aeF7BaaqSMRLNq4g4JyKuyv+dD9wzyvT0qgTfY4xEY6ChBHk4DGN0Vk6HAq+SdJ2kL0ga1DT1naSnk2WGnaZh5U9DJ8ewMXak+wagTBMT9HKMTsEYie/3JlDKPB/lfnzQP/K+SDoPWNL00uqI+ICkbjYzC1ifP98MPKmg5FVR8nkl6TBgbkSsGXVaOjFBDKf6PZKPgYaE87BwLeLohcAF+fOJyulG4IUR8UtJnwReAnxpAEnsJG6GHVudfN6w8geAiNgMMMkxbHy6FwwqPf0q6BidgtLs98brMKaSNYr9eNIV34g4sYDN3AfMzJ/vSflauYcp6byS9Bjg48Axo05Lp1rFcOLfI+kYaEg8Dws3Po4k/R2dldP3IuKh/PmtwKAu4XYSN8OOrU4+b1j5041GujeRpfu+0SanvYKO0SkoxX6vaka1H69D4d7EjssWBwN3ji4pyUs2r/KO7xcDp0bEXaNOT69K8D2SjYGGEuThMHRaTp+XdLCkKcCrgO+OMD3Djq1OPm9Y+dON5H+DFeQ8H7JR7sdLOYGFpKsjYqzDZfcGrgW+DhwNHBoRmwaYvNJKOa8kvQ34EDsOTOdGxEUjTFJPUv8eKcdAQ+p5OAytyglYCLw2Ik5rWu63gX8CBHwpIt43pPT8X+D3x6VlqLHVYZqGkj8t0nZ1RIxJOhx4WkR8oum9JwBXAF8DnkuWT9uGka6idHOMTkEZ9nuTKWGej2w/XsqKb7fyux6PAL4ZEXePOj0pc16ZY6AcUiunTtIz7DSnlkedkrQ/WQvklWWrgJVVWWPFuleLiq+ZmZmZWR36+JqZmZmZueJrZmZmZvVQyoqvpCmS9hh1OqrMeVwPLmcbJseb1ZHjPi3JV3wlvULSCXngzJH0BbIBs98vaVbTcgvyv++QdGL+/GBJuzUtM0PSFfnzM7VjfvarJV0z3G+WDudxPbicbZgcb1ZHjvv0JT2BRR4ADwNbgf2BE4Cn53+fCfw5cLokAaslHZov+1B+dvUZ8ukeJe1JNjtLSNoHOBN4MCK255+z5xC/WjKcx/XgcrZhcrxZHTnuyyHpii/ZbB4fBh4hC47VwHOANcAc4GpJTwKeAuwFzGta97Vk328h8FOywclPAA4AzgOOjYjtAPnfUs1zXSDncT24nG2YHG9WR477Ekh+ODNJnwauIZtT/Slk85YfTjbo+G7AD4FzgJPJpr67FNhCFoBvA/4eOC4i1kv6Q7Jgei/wKeB+sqC6K9/WP0bE54b25RLhPK4Hl7MNk+PN6shxn76kK76S9iILkluB04HPAb8C9gV+AqwH/hJYGhEXSdoXWA4sIhv4+5q8H809ERGSvgw8Nd/my/JLBquA15FdQnhkqF8wAc7jenA52zA53qyOHPflkHpXh/cCVwE/BvYDbgZuIJvR5jJgLCJ+LOkFkq4GHgQeD2wHniXpL4FVEfFxSYeRXRr4PnA18HZJjaA5FHgTcPyQvldKnMf14HK2YXK8WR057ssgIpJ9kAXOUcAbyZr37wS+TdbMfzXwhRbrvBV4Y4vX3ws8gSyoAL4B7AOsIusk/g2yoBz593Ye++Fy9qPMD8ebH3V8OO7L8Uh6OLOI+GXT858A7wf+EXgi8L/A/8uHDJnWbhuSpkqaEhEfAn6RvaTfBm6NiHuA6UCQXZaYO7hvkybncT24nG2YHG9WR477cki6jy+ApJeTDQuyDzATOCMiHpD0W8DHgM8CJ5INIdLKNODsiPhaPlzIZRFxVL7tTwN7RcSrB/w1kuY8rgeXsw2T483qyHGfvuQrvmZmZmZmRUi6q4OZmZmZWVFc8TUzMzOzWnDF18zMzMxqwRVfMzMzM6sFV3zNzMzMrBb+f1HYOxlYw3hjAAAAAElFTkSuQmCC\n", - "text/plain": [ - "
" - ] - }, - "metadata": { - "needs_background": "light" - }, - "output_type": "display_data" - } - ], - "source": [ - "fig = plt.figure(figsize=(10, 4))\n", - "spec = fig.add_gridspec(nrows=2, ncols=5, width_ratios=[1,2,3,4,5], height_ratios=[1,3])\n", - "fig.suptitle('样例2', size=20)\n", - "for i in range(2):\n", - " for j in range(5):\n", - " ax = fig.add_subplot(spec[i, j])\n", - " ax.scatter(np.random.randn(10), np.random.randn(10))\n", - " ax.set_title('第%d行,第%d列'%(i+1,j+1))\n", - " if i==1: ax.set_xlabel('横坐标')\n", - " if j==0: ax.set_ylabel('纵坐标')\n", - "fig.tight_layout()" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "在上面的例子中出现了 `spec[i, j]` 的用法,事实上通过切片就可以实现子图的合并而达到跨图的共能" - ] - }, - { - "cell_type": "code", - "execution_count": 4, - "metadata": { - "ExecuteTime": { - "end_time": "2020-11-01T10:58:27.397245Z", - "start_time": "2020-11-01T10:58:27.020418Z" - } - }, - "outputs": [ - { - "data": { - "image/png": "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\n", - "text/plain": [ - "
" - ] - }, - "metadata": { - "needs_background": "light" - }, - "output_type": "display_data" - } - ], - "source": [ - "fig = plt.figure(figsize=(10, 4))\n", - "spec = fig.add_gridspec(nrows=2, ncols=6, width_ratios=[2,2.5,3,1,1.5,2], height_ratios=[1,2])\n", - "fig.suptitle('样例3', size=20)\n", - "# sub1\n", - "ax = fig.add_subplot(spec[0, :3])\n", - "ax.scatter(np.random.randn(10), np.random.randn(10))\n", - "# sub2\n", - "ax = fig.add_subplot(spec[0, 3:5])\n", - "ax.scatter(np.random.randn(10), np.random.randn(10))\n", - "# sub3\n", - "ax = fig.add_subplot(spec[:, 5])\n", - "ax.scatter(np.random.randn(10), np.random.randn(10))\n", - "# sub4\n", - "ax = fig.add_subplot(spec[1, 0])\n", - "ax.scatter(np.random.randn(10), np.random.randn(10))\n", - "# sub5\n", - "ax = fig.add_subplot(spec[1, 1:5])\n", - "ax.scatter(np.random.randn(10), np.random.randn(10))\n", - "fig.tight_layout()" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## 二、子图上的方法\n", - "\n", - "补充介绍一些子图上的方法" - ] - }, - { - "cell_type": "markdown", - "metadata": { - "ExecuteTime": { - "end_time": "2020-11-01T09:23:21.140175Z", - "start_time": "2020-11-01T09:23:21.137223Z" - } - }, - "source": [ - "常用直线的画法为: `axhline, axvline, axline` (水平、垂直、任意方向)" - ] - }, - { - "cell_type": "code", - "execution_count": 17, - "metadata": { - "ExecuteTime": { - "end_time": "2020-11-01T10:58:27.686055Z", - "start_time": "2020-11-01T10:58:27.583390Z" - } - }, - "outputs": [ - { - "data": { - "image/png": "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\n", - "text/plain": [ - "
" - ] - }, - "metadata": { - "needs_background": "light" - }, - "output_type": "display_data" - } - ], - "source": [ - "fig, ax = plt.subplots(figsize=(4,3))\n", - "ax.axhline(0.5,0.2,0.8)\n", - "ax.axvline(0.5,0.2,0.8)\n", - "ax.axline([0.3,0.3],[0.7,0.7]);" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "使用 `grid` 可以加灰色网格" - ] - }, - { - "cell_type": "code", - "execution_count": 18, - "metadata": { - "ExecuteTime": { - "end_time": "2020-11-01T10:58:27.774748Z", - "start_time": "2020-11-01T10:58:27.688043Z" - } - }, - "outputs": [ - { - "data": { - "image/png": "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\n", - "text/plain": [ - "
" - ] - }, - "metadata": { - "needs_background": "light" - }, - "output_type": "display_data" - } - ], - "source": [ - "fig, ax = plt.subplots(figsize=(4,3))\n", - "ax.grid(True)" - ] - }, - { - "cell_type": "markdown", - "metadata": { - "ExecuteTime": { - "end_time": "2020-11-01T09:35:34.166136Z", - "start_time": "2020-11-01T09:35:34.161109Z" - } - }, - "source": [ - "使用 `set_xscale` 可以设置坐标轴的规度(指对数坐标等)" - ] - }, - { - "cell_type": "code", - "execution_count": 21, - "metadata": { - "ExecuteTime": { - "end_time": "2020-11-01T10:58:28.239217Z", - "start_time": "2020-11-01T10:58:27.775747Z" - } - }, - "outputs": [ - { - "data": { - "image/png": "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\n", - "text/plain": [ - "
" - ] - }, - "metadata": { - "needs_background": "light" - }, - "output_type": "display_data" - } - ], - "source": [ - "fig, axs = plt.subplots(1, 2, figsize=(10, 4))\n", - "for j in range(2):\n", - " axs[j].plot(list('abcd'), [10**i for i in range(4)])\n", - " if j==0:\n", - " axs[j].set_yscale('log')\n", - " else:\n", - " pass\n", - "fig.tight_layout()" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## 思考题\n", - "\n", - "- 墨尔本1981年至1990年的每月温度情况" - ] - }, - { - "cell_type": "code", - "execution_count": 3, - "metadata": { - "ExecuteTime": { - "end_time": "2020-11-01T10:58:28.482772Z", - "start_time": "2020-11-01T10:58:28.472757Z" - } - }, - "outputs": [ - { - "data": { - "text/html": [ - "
\n", - "\n", - "\n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
TimeTemperature
01981-0117.712903
11981-0217.678571
21981-0313.500000
31981-0412.356667
41981-059.490323
\n", - "
" - ], - "text/plain": [ - " Time Temperature\n", - "0 1981-01 17.712903\n", - "1 1981-02 17.678571\n", - "2 1981-03 13.500000\n", - "3 1981-04 12.356667\n", - "4 1981-05 9.490323" - ] - }, - "execution_count": 3, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "ex1 = pd.read_csv('data/layout_ex1.csv')\n", - "ex1.head()" - ] - }, - { - "cell_type": "markdown", - "metadata": { - "ExecuteTime": { - "end_time": "2020-11-01T10:21:13.743892Z", - "start_time": "2020-11-01T10:21:13.738905Z" - } - }, - "source": [ - "请利用数据,画出如下的图:\n", - "\n", - "" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "- 画出数据的散点图和边际分布\n", - "\n", - "用 `np.random.randn(2, 150)` 生成一组二维数据,使用两种非均匀子图的分割方法,做出该数据对应的散点图和边际分布图\n", - "\n", - "" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [] - } - ], - "metadata": { - "kernelspec": { - "display_name": "Python 3", - "language": "python", - "name": "python3" - }, - "language_info": { - "codemirror_mode": { - "name": "ipython", - "version": 3 - }, - "file_extension": ".py", - "mimetype": "text/x-python", - "name": "python", - "nbconvert_exporter": "python", - "pygments_lexer": "ipython3", - "version": "3.9.4" - }, - "toc": { - "base_numbering": 1, - "nav_menu": {}, - "number_sections": false, - "sideBar": true, - "skip_h1_title": false, - "title_cell": "Table of Contents", - "title_sidebar": "Contents", - "toc_cell": false, - "toc_position": { - "height": "calc(100% - 180px)", - "left": "10px", - "top": "150px", - "width": "288.661px" - }, - "toc_section_display": true, - "toc_window_display": true - } - }, - "nbformat": 4, - "nbformat_minor": 4 -} diff --git a/notebook/第二回:艺术画笔见乾坤.ipynb b/notebook/第二回:艺术画笔见乾坤.ipynb deleted file mode 100644 index c516817..0000000 --- a/notebook/第二回:艺术画笔见乾坤.ipynb +++ /dev/null @@ -1,1464 +0,0 @@ -{ - "cells": [ - { - "cell_type": "code", - "execution_count": 89, - "metadata": {}, - "outputs": [], - "source": [ - "import numpy as np\n", - "import pandas as pd\n", - "import re\n", - "import matplotlib\n", - "import matplotlib.pyplot as plt\n", - "from matplotlib.lines import Line2D \n", - "from matplotlib.patches import Circle, Wedge\n", - "from matplotlib.collections import PatchCollection" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# 第二回:艺术画笔见乾坤" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## 一、概述" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "### 1. matplotlib的三层api\n", - "matplotlib的原理或者说基础逻辑是,用Artist对象在画布(canvas)上绘制(Render)图形。 \n", - "就和人作画的步骤类似: \n", - "1. 准备一块画布或画纸\n", - "2. 准备好颜料、画笔等制图工具\n", - "3. 作画\n", - " \n", - "所以matplotlib有三个层次的API: \n", - " \n", - "`matplotlib.backend_bases.FigureCanvas` 代表了绘图区,所有的图像都是在绘图区完成的 \n", - "`matplotlib.backend_bases.Renderer` 代表了渲染器,可以近似理解为画笔,控制如何在 FigureCanvas 上画图。 \n", - "`matplotlib.artist.Artist` 代表了具体的图表组件,即调用了Renderer的接口在Canvas上作图。 \n", - "前两者处理程序和计算机的底层交互的事项,第三项Artist就是具体的调用接口来做出我们想要的图,比如图形、文本、线条的设定。所以通常来说,我们95%的时间,都是用来和matplotlib.artist.Artist类打交道的。\n", - "\n" - ] - }, - { - "cell_type": "markdown", - "metadata": { - "ExecuteTime": { - "end_time": "2021-05-23T07:51:58.496608Z", - "start_time": "2021-05-23T07:51:58.471601Z" - } - }, - "source": [ - "### 2. Artist的分类\n", - "Artist有两种类型:`primitives` 和`containers`。 \n", - " \n", - "`primitive`是基本要素,它包含一些我们要在绘图区作图用到的标准图形对象,如**曲线Line2D,文字text,矩形Rectangle,图像image**等。 \n", - " \n", - "`container`是容器,即用来装基本要素的地方,包括**图形figure、坐标系Axes和坐标轴Axis**。他们之间的关系如下图所示: \n", - "![分类](https://img-blog.csdnimg.cn/20201122230916134.jpeg?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl8zODYwNDk2MQ==,size_16,color_FFFFFF,t_70#pic_center) " - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "可视化中常见的artist类可以参考下图这张表格,解释下每一列的含义。 \n", - "第一列表示matplotlib中子图上的辅助方法,可以理解为可视化中不同种类的图表类型,如柱状图,折线图,直方图等,这些图表都可以用这些辅助方法直接画出来,属于更高层级的抽象。 \n", - "\n", - "第二列表示不同图表背后的artist类,比如折线图方法`plot`在底层用到的就是`Line2D`这一artist类。\n", - "\n", - "第三列是第二列的列表容器,例如所有在子图中创建的`Line2D`对象都会被自动收集到`ax.lines`返回的列表中。 \n", - "\n", - "下一节的具体案例更清楚地阐释了这三者的关系,其实在很多时候,我们只用记住第一列的辅助方法进行绘图即可,而无需关注具体底层使用了哪些类,但是了解底层类有助于我们绘制一些复杂的图表,因此也很有必要了解。" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "| Axes helper method | Artist | Container |\n", - "| ------------------- | ------ | ----------- |\n", - "| `bar` - bar charts | `Rectangle` | ax.patches |\n", - "| `errorbar` - error bar plots | `Line2D` and `Rectangle` | ax.lines and ax.patches |\n", - "| `fill` - shared area | `Polygon` | ax.patches |\n", - "| `hist` - histograms | `Rectangle` | ax.patches |\n", - "|`imshow` - image data | `AxesImage` | ax.images |\n", - "| `plot` - xy plots | `Line2D` | ax.lines |\n", - "| `scatter` - scatter charts | `PolyCollection` | ax.collections |" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## 二、基本元素 - primitives\n", - "各容器中可能会包含多种`基本要素-primitives`, 所以先介绍下primitives,再介绍容器。\n", - " \n", - "本章重点介绍下 `primitives` 的几种类型:**曲线-Line2D,矩形-Rectangle,多边形-Polygon,图像-image** \n" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "### 1. 2DLines\n", - "在matplotlib中曲线的绘制,主要是通过类 `matplotlib.lines.Line2D` 来完成的。 \n", - " \n", - "matplotlib中`线-line`的含义:它表示的可以是连接所有顶点的实线样式,也可以是每个顶点的标记。此外,这条线也会受到绘画风格的影响,比如,我们可以创建虚线种类的线。" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "它的构造函数:\n", - "\n", - ">```\n", - "class matplotlib.lines.Line2D(xdata, ydata, linewidth=None, linestyle=None, color=None, marker=None, markersize=None, markeredgewidth=None, markeredgecolor=None, markerfacecolor=None, markerfacecoloralt='none', fillstyle=None, antialiased=None, dash_capstyle=None, solid_capstyle=None, dash_joinstyle=None, solid_joinstyle=None, pickradius=5, drawstyle=None, markevery=None, **kwargs)\n", - ">```\n" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "其中常用的的参数有: \n", - "+ **xdata**:需要绘制的line中点的在x轴上的取值,若忽略,则默认为range(1,len(ydata)+1)\n", - "+ **ydata**:需要绘制的line中点的在y轴上的取值\n", - "+ **linewidth**:线条的宽度\n", - "+ **linestyle**:线型\n", - "+ **color**:线条的颜色\n", - "+ **marker**:点的标记,详细可参考[markers API](https://matplotlib.org/api/markers_api.html#module-matplotlib.markers)\n", - "+ **markersize**:标记的size\n", - " \n", - "其他详细参数可参考[Line2D官方文档](https://matplotlib.org/stable/api/_as_gen/matplotlib.lines.Line2D.html)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "#### a. 如何设置Line2D的属性\n", - "有三种方法可以用设置线的属性。 \n", - "1) 直接在plot()函数中设置 \n", - "2) 通过获得线对象,对线对象进行设置 \n", - "3) 获得线属性,使用setp()函数设置 \n", - "\n" - ] - }, - { - "cell_type": "code", - "execution_count": 2, - "metadata": { - "ExecuteTime": { - "end_time": "2021-05-23T08:29:16.033193Z", - "start_time": "2021-05-23T08:29:15.893804Z" - } - }, - "outputs": [ - { - "data": { - "image/png": "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\n", - "text/plain": [ - "
" - ] - }, - "metadata": { - "needs_background": "light" - }, - "output_type": "display_data" - } - ], - "source": [ - "# 1) 直接在plot()函数中设置\n", - "x = range(0,5)\n", - "y = [2,5,7,8,10]\n", - "plt.plot(x,y, linewidth=10); # 设置线的粗细参数为10" - ] - }, - { - "cell_type": "code", - "execution_count": 11, - "metadata": { - "ExecuteTime": { - "end_time": "2021-05-23T08:29:16.160728Z", - "start_time": "2021-05-23T08:29:16.036194Z" - } - }, - "outputs": [ - { - "data": { - "image/png": "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\n", - "text/plain": [ - "
" - ] - }, - "metadata": { - "needs_background": "light" - }, - "output_type": "display_data" - } - ], - "source": [ - "# 2) 通过获得线对象,对线对象进行设置\n", - "x = range(0,5)\n", - "y = [2,5,7,8,10]\n", - "line, = plt.plot(x, y, '-') # 这里等号坐标的line,是一个列表解包的操作,目的是获取plt.plot返回列表中的Line2D对象\n", - "line.set_antialiased(False); # 关闭抗锯齿功能" - ] - }, - { - "cell_type": "code", - "execution_count": 12, - "metadata": { - "ExecuteTime": { - "end_time": "2021-05-23T08:29:16.287757Z", - "start_time": "2021-05-23T08:29:16.162728Z" - } - }, - "outputs": [ - { - "data": { - "image/png": "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\n", - "text/plain": [ - "
" - ] - }, - "metadata": { - "needs_background": "light" - }, - "output_type": "display_data" - } - ], - "source": [ - "# 3) 获得线属性,使用setp()函数设置\n", - "x = range(0,5)\n", - "y = [2,5,7,8,10]\n", - "lines = plt.plot(x, y)\n", - "plt.setp(lines, color='r', linewidth=10);" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "#### b. 如何绘制lines\n", - "1) 绘制直线line \n", - "2) errorbar绘制误差折线图 \n", - " \n" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "介绍两种绘制直线line常用的方法: \n", - "+ **plot方法绘制** \n", - "+ **Line2D对象绘制** \n", - "\n" - ] - }, - { - "cell_type": "code", - "execution_count": 29, - "metadata": { - "ExecuteTime": { - "end_time": "2021-05-23T08:29:16.415785Z", - "start_time": "2021-05-23T08:29:16.288756Z" - } - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "[, ]\n" - ] - }, - { - "data": { - "image/png": "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\n", - "text/plain": [ - "
" - ] - }, - "metadata": { - "needs_background": "light" - }, - "output_type": "display_data" - } - ], - "source": [ - "# 1. plot方法绘制\n", - "x = range(0,5)\n", - "y1 = [2,5,7,8,10]\n", - "y2= [3,6,8,9,11]\n", - "\n", - "fig,ax= plt.subplots()\n", - "ax.plot(x,y1)\n", - "ax.plot(x,y2)\n", - "print(ax.lines); # 通过直接使用辅助方法画线,打印ax.lines后可以看到在matplotlib在底层创建了两个Line2D对象" - ] - }, - { - "cell_type": "code", - "execution_count": 38, - "metadata": { - "ExecuteTime": { - "end_time": "2021-05-23T08:29:16.527324Z", - "start_time": "2021-05-23T08:29:16.416784Z" - } - }, - "outputs": [ - { - "data": { - "image/png": "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\n", - "text/plain": [ - "
" - ] - }, - "metadata": { - "needs_background": "light" - }, - "output_type": "display_data" - } - ], - "source": [ - "# 2. Line2D对象绘制\n", - "\n", - "x = range(0,5)\n", - "y1 = [2,5,7,8,10]\n", - "y2= [3,6,8,9,11]\n", - "fig,ax= plt.subplots()\n", - "lines = [Line2D(x, y1), Line2D(x, y2,color='orange')] # 显式创建Line2D对象\n", - "for line in lines:\n", - " ax.add_line(line) # 使用add_line方法将创建的Line2D添加到子图中\n", - "ax.set_xlim(0,4)\n", - "ax.set_ylim(2, 11);" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "**2) errorbar绘制误差折线图** \n", - "pyplot里有个专门绘制误差线的功能,通过`errorbar`类实现,它的构造函数: \n", - " \n", - ">matplotlib.pyplot.errorbar(x, y, yerr=None, xerr=None, fmt='', ecolor=None, elinewidth=None, capsize=None, barsabove=False, lolims=False, uplims=False, xlolims=False, xuplims=False, errorevery=1, capthick=None, \\*, data=None, \\**kwargs)\n", - " \n", - "其中最主要的参数是前几个: \n", - "+ **x**:需要绘制的line中点的在x轴上的取值 \n", - "+ **y**:需要绘制的line中点的在y轴上的取值 \n", - "+ **yerr**:指定y轴水平的误差 \n", - "+ **xerr**:指定x轴水平的误差 \n", - "+ **fmt**:指定折线图中某个点的颜色,形状,线条风格,例如‘co--’ \n", - "+ **ecolor**:指定error bar的颜色 \n", - "+ **elinewidth**:指定error bar的线条宽度 \n" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "绘制errorbar" - ] - }, - { - "cell_type": "code", - "execution_count": 42, - "metadata": { - "ExecuteTime": { - "end_time": "2021-05-23T08:29:16.623411Z", - "start_time": "2021-05-23T08:29:16.529325Z" - } - }, - "outputs": [ - { - "data": { - "image/png": "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\n", - "text/plain": [ - "
" - ] - }, - "metadata": { - "needs_background": "light" - }, - "output_type": "display_data" - } - ], - "source": [ - "fig = plt.figure()\n", - "x = np.arange(10)\n", - "y = 2.5 * np.sin(x / 20 * np.pi)\n", - "yerr = np.linspace(0.05, 0.2, 10)\n", - "plt.errorbar(x, y + 3, yerr=yerr, label='both limits (default)');" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "### 2. patches\n", - "matplotlib.patches.Patch类是二维图形类,并且它是众多二维图形的父类,它的所有子类见[matplotlib.patches API](https://matplotlib.org/stable/api/patches_api.html) , \n", - "Patch类的构造函数: \n", - "\n", - ">Patch(edgecolor=None, facecolor=None, color=None,\n", - " linewidth=None, linestyle=None, antialiased=None,\n", - " hatch=None, fill=True, capstyle=None, joinstyle=None,\n", - " **kwargs) \n", - "\n", - "本小节重点讲述三种最常见的子类,矩形,多边形和楔型。\n", - " " - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "#### a. Rectangle-矩形\n", - "`Rectangle`矩形类在官网中的定义是: 通过锚点xy及其宽度和高度生成。\n", - "Rectangle本身的主要比较简单,即xy控制锚点,width和height分别控制宽和高。它的构造函数:\n", - "\n", - "> class matplotlib.patches.Rectangle(xy, width, height, angle=0.0, **kwargs)\n", - "\n", - "在实际中最常见的矩形图是**`hist直方图`和`bar条形图`**。 \n", - " \n", - " " - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "**1) hist-直方图** \n", - "\n", - ">matplotlib.pyplot.hist(x,bins=None,range=None, density=None, bottom=None, histtype='bar', align='mid', log=False, color=None, label=None, stacked=False, normed=None)\n", - " \n", - "下面是一些常用的参数: \n", - "+ **x**: 数据集,最终的直方图将对数据集进行统计\n", - "+ **bins**: 统计的区间分布\n", - "+ **range**: tuple, 显示的区间,range在没有给出bins时生效\n", - "+ **density**: bool,默认为false,显示的是频数统计结果,为True则显示频率统计结果,这里需要注意,频率统计结果=区间数目/(总数*区间宽度),和normed效果一致,官方推荐使用density\n", - "+ **histtype**: 可选{'bar', 'barstacked', 'step', 'stepfilled'}之一,默认为bar,推荐使用默认配置,step使用的是梯状,stepfilled则会对梯状内部进行填充,效果与bar类似\n", - "+ **align**: 可选{'left', 'mid', 'right'}之一,默认为'mid',控制柱状图的水平分布,left或者right,会有部分空白区域,推荐使用默认\n", - "+ **log**: bool,默认False,即y坐标轴是否选择指数刻度\n", - "+ **stacked**: bool,默认为False,是否为堆积状图" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "hist绘制直方图" - ] - }, - { - "cell_type": "code", - "execution_count": 44, - "metadata": { - "ExecuteTime": { - "end_time": "2021-05-23T08:29:16.766398Z", - "start_time": "2021-05-23T08:29:16.625404Z" - } - }, - "outputs": [ - { - "data": { - "image/png": "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\n", - "text/plain": [ - "
" - ] - }, - "metadata": { - "needs_background": "light" - }, - "output_type": "display_data" - } - ], - "source": [ - "x=np.random.randint(0,100,100) #生成[0-100)之间的100个数据,即 数据集 \n", - "bins=np.arange(0,101,10) #设置连续的边界值,即直方图的分布区间[0,10),[10,20)... \n", - "plt.hist(x,bins,color='fuchsia',alpha=0.5)#alpha设置透明度,0为完全透明 \n", - "plt.xlabel('scores') \n", - "plt.ylabel('count') \n", - "plt.xlim(0,100); #设置x轴分布范围 plt.show()" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "`Rectangle`矩形类绘制直方图" - ] - }, - { - "cell_type": "code", - "execution_count": 51, - "metadata": { - "ExecuteTime": { - "end_time": "2021-05-23T08:29:17.129308Z", - "start_time": "2021-05-23T08:29:16.768398Z" - } - }, - "outputs": [ - { - "data": { - "image/png": "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\n", - "text/plain": [ - "
" - ] - }, - "metadata": { - "needs_background": "light" - }, - "output_type": "display_data" - } - ], - "source": [ - "df = pd.DataFrame(columns = ['data'])\n", - "df.loc[:,'data'] = x\n", - "df['fenzu'] = pd.cut(df['data'], bins=bins, right = False,include_lowest=True)\n", - "\n", - "df_cnt = df['fenzu'].value_counts().reset_index()\n", - "df_cnt.loc[:,'mini'] = df_cnt['index'].astype(str).map(lambda x:re.findall('\\[(.*)\\,',x)[0]).astype(int)\n", - "df_cnt.loc[:,'maxi'] = df_cnt['index'].astype(str).map(lambda x:re.findall('\\,(.*)\\)',x)[0]).astype(int)\n", - "df_cnt.loc[:,'width'] = df_cnt['maxi']- df_cnt['mini']\n", - "df_cnt.sort_values('mini',ascending = True,inplace = True)\n", - "df_cnt.reset_index(inplace = True,drop = True)\n", - "\n", - "#用Rectangle把hist绘制出来\n", - "\n", - "fig = plt.figure()\n", - "ax1 = fig.add_subplot(111)\n", - "\n", - "for i in df_cnt.index:\n", - " rect = plt.Rectangle((df_cnt.loc[i,'mini'],0),df_cnt.loc[i,'width'],df_cnt.loc[i,'fenzu'])\n", - " ax1.add_patch(rect)\n", - "\n", - "ax1.set_xlim(0, 100)\n", - "ax1.set_ylim(0, 16);" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "**2) bar-柱状图** \n", - " \n", - ">matplotlib.pyplot.bar(left, height, alpha=1, width=0.8, color=, edgecolor=, label=, lw=3)\n", - " \n", - "下面是一些常用的参数: \n", - "+ **left**:x轴的位置序列,一般采用range函数产生一个序列,但是有时候可以是字符串 \n", - "+ **height**:y轴的数值序列,也就是柱形图的高度,一般就是我们需要展示的数据; \n", - "+ **alpha**:透明度,值越小越透明 \n", - "+ **width**:为柱形图的宽度,一般这是为0.8即可; \n", - "+ **color或facecolor**:柱形图填充的颜色; \n", - "+ **edgecolor**:图形边缘颜色 \n", - "+ **label**:解释每个图像代表的含义,这个参数是为legend()函数做铺垫的,表示该次bar的标签 \n", - " \n", - " \n", - "有两种方式绘制柱状图\n", - "+ bar绘制柱状图 \n", - "+ `Rectangle`矩形类绘制柱状图" - ] - }, - { - "cell_type": "code", - "execution_count": 53, - "metadata": { - "ExecuteTime": { - "end_time": "2021-05-23T08:29:17.257348Z", - "start_time": "2021-05-23T08:29:17.131294Z" - } - }, - "outputs": [ - { - "data": { - "image/png": "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\n", - "text/plain": [ - "
" - ] - }, - "metadata": { - "needs_background": "light" - }, - "output_type": "display_data" - } - ], - "source": [ - "# bar绘制柱状图\n", - "y = range(1,17)\n", - "plt.bar(np.arange(16), y, alpha=0.5, width=0.5, color='yellow', edgecolor='red', label='The First Bar', lw=3);" - ] - }, - { - "cell_type": "code", - "execution_count": 55, - "metadata": { - "ExecuteTime": { - "end_time": "2021-05-23T08:29:17.385378Z", - "start_time": "2021-05-23T08:29:17.258358Z" - } - }, - "outputs": [ - { - "data": { - "image/png": "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\n", - "text/plain": [ - "
" - ] - }, - "metadata": { - "needs_background": "light" - }, - "output_type": "display_data" - } - ], - "source": [ - "# Rectangle矩形类绘制柱状图\n", - "fig = plt.figure()\n", - "ax1 = fig.add_subplot(111)\n", - "\n", - "for i in range(1,17):\n", - " rect = plt.Rectangle((i+0.25,0),0.5,i)\n", - " ax1.add_patch(rect)\n", - "ax1.set_xlim(0, 16)\n", - "ax1.set_ylim(0, 16);" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "#### b. Polygon-多边形\n", - "matplotlib.patches.Polygon类是多边形类。它的构造函数:\n", - " \n", - ">class matplotlib.patches.Polygon(xy, closed=True, **kwargs) \n", - " \n", - "xy是一个N×2的numpy array,为多边形的顶点。 \n", - "closed为True则指定多边形将起点和终点重合从而显式关闭多边形。 \n" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "matplotlib.patches.Polygon类中常用的是fill类,它是基于xy绘制一个填充的多边形,它的定义:\n", - "\n", - ">matplotlib.pyplot.fill(*args, data=None, **kwargs)\n", - "\n", - "参数说明 : 关于x、y和color的序列,其中color是可选的参数,每个多边形都是由其节点的x和y位置列表定义的,后面可以选择一个颜色说明符。您可以通过提供多个x、y、[颜色]组来绘制多个多边形。" - ] - }, - { - "cell_type": "code", - "execution_count": 57, - "metadata": { - "ExecuteTime": { - "end_time": "2021-05-23T08:29:17.511490Z", - "start_time": "2021-05-23T08:29:17.387390Z" - } - }, - "outputs": [ - { - "data": { - "image/png": "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\n", - "text/plain": [ - "
" - ] - }, - "metadata": { - "needs_background": "light" - }, - "output_type": "display_data" - } - ], - "source": [ - "# 用fill来绘制图形\n", - "x = np.linspace(0, 5 * np.pi, 1000) \n", - "y1 = np.sin(x)\n", - "y2 = np.sin(2 * x) \n", - "plt.fill(x, y1, color = \"g\", alpha = 0.3);" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "#### c. Wedge-契形\n", - "matplotlib.patches.Polygon类是多边形类。其基类是matplotlib.patches.Patch,它的构造函数:\n", - "\n", - ">class matplotlib.patches.Wedge(center, r, theta1, theta2, width=None, **kwargs) \n", - " \n", - "一个Wedge-契形 是以坐标x,y为中心,半径为r,从θ1扫到θ2(单位是度)。 \n", - "如果宽度给定,则从内半径r -宽度到外半径r画出部分楔形。wedge中比较常见的是绘制饼状图。 \n", - " " - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "matplotlib.pyplot.pie语法: \n", - ">matplotlib.pyplot.pie(x, explode=None, labels=None, colors=None, autopct=None, pctdistance=0.6, shadow=False, labeldistance=1.1, startangle=0, radius=1, counterclock=True, wedgeprops=None, textprops=None, center=0, 0, frame=False, rotatelabels=False, *, normalize=None, data=None)\n", - " \n", - "制作数据x的饼图,每个楔子的面积用x/sum(x)表示。 \n", - "其中最主要的参数是前4个: \n", - "+ **x**:契型的形状,一维数组。\n", - "+ **explode**:如果不是等于None,则是一个len(x)数组,它指定用于偏移每个楔形块的半径的分数。 \n", - "+ **labels**:用于指定每个契型块的标记,取值是列表或为None。 \n", - "+ **colors**:饼图循环使用的颜色序列。如果取值为None,将使用当前活动循环中的颜色。 \n", - "+ **startangle**:饼状图开始的绘制的角度。 " - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "pie绘制饼状图" - ] - }, - { - "cell_type": "code", - "execution_count": 68, - "metadata": { - "ExecuteTime": { - "end_time": "2021-05-23T08:29:17.607540Z", - "start_time": "2021-05-23T08:29:17.513509Z" - } - }, - "outputs": [ - { - "data": { - "image/png": "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\n", - "text/plain": [ - "
" - ] - }, - "metadata": {}, - "output_type": "display_data" - } - ], - "source": [ - "labels = 'Frogs', 'Hogs', 'Dogs', 'Logs'\n", - "sizes = [15, 30, 45, 10] \n", - "explode = (0, 0.1, 0, 0) \n", - "fig1, ax1 = plt.subplots() \n", - "ax1.pie(sizes, explode=explode, labels=labels, autopct='%1.1f%%', shadow=True, startangle=90) \n", - "ax1.axis('equal'); # Equal aspect ratio ensures that pie is drawn as a circle. " - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "wedge绘制饼图" - ] - }, - { - "cell_type": "code", - "execution_count": 84, - "metadata": { - "ExecuteTime": { - "end_time": "2021-05-23T08:29:17.703570Z", - "start_time": "2021-05-23T08:29:17.608560Z" - } - }, - "outputs": [ - { - "data": { - "image/png": "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\n", - "text/plain": [ - "
" - ] - }, - "metadata": { - "needs_background": "light" - }, - "output_type": "display_data" - } - ], - "source": [ - "fig = plt.figure(figsize=(5,5))\n", - "ax1 = fig.add_subplot(111)\n", - "theta1 = 0\n", - "sizes = [15, 30, 45, 10] \n", - "patches = []\n", - "patches += [\n", - " Wedge((0.5, 0.5), .4, 0, 54), \n", - " Wedge((0.5, 0.5), .4, 54, 162), \n", - " Wedge((0.5, 0.5), .4, 162, 324), \n", - " Wedge((0.5, 0.5), .4, 324, 360), \n", - "]\n", - "colors = 100 * np.random.rand(len(patches))\n", - "p = PatchCollection(patches, alpha=0.8)\n", - "p.set_array(colors)\n", - "ax1.add_collection(p);" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "### 3. collections\n", - "collections类是用来绘制一组对象的集合,collections有许多不同的子类,如RegularPolyCollection, CircleCollection, Pathcollection, 分别对应不同的集合子类型。其中比较常用的就是散点图,它是属于PathCollection子类,scatter方法提供了该类的封装,根据x与y绘制不同大小或颜色标记的散点图。 它的构造方法:\n", - " \n", - ">Axes.scatter(self, x, y, s=None, c=None, marker=None, cmap=None, norm=None, vmin=None, vmax=None, alpha=None, linewidths=None, verts=, edgecolors=None, *, plotnonfinite=False, data=None, **kwargs)\n", - " \n", - " \n", - "其中最主要的参数是前5个: \n", - "+ **x**:数据点x轴的位置 \n", - "+ **y**:数据点y轴的位置 \n", - "+ **s**:尺寸大小 \n", - "+ **c**:可以是单个颜色格式的字符串,也可以是一系列颜色 \n", - "+ **marker**: 标记的类型 \n" - ] - }, - { - "cell_type": "code", - "execution_count": 85, - "metadata": { - "ExecuteTime": { - "end_time": "2021-05-23T08:29:17.799637Z", - "start_time": "2021-05-23T08:29:17.705561Z" - } - }, - "outputs": [ - { - "data": { - "image/png": "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\n", - "text/plain": [ - "
" - ] - }, - "metadata": { - "needs_background": "light" - }, - "output_type": "display_data" - } - ], - "source": [ - "# 用scatter绘制散点图\n", - "x = [0,2,4,6,8,10] \n", - "y = [10]*len(x) \n", - "s = [20*2**n for n in range(len(x))] \n", - "plt.scatter(x,y,s=s) ;" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "### 4. images\n", - "images是matplotlib中绘制image图像的类,其中最常用的imshow可以根据数组绘制成图像,它的构造函数:\n", - ">class matplotlib.image.AxesImage(ax, cmap=None, norm=None, interpolation=None, origin=None, extent=None, filternorm=True, filterrad=4.0, resample=False, **kwargs)\n", - " \n", - "imshow根据数组绘制图像\n", - ">matplotlib.pyplot.imshow(X, cmap=None, norm=None, aspect=None, interpolation=None, alpha=None, vmin=None, vmax=None, origin=None, extent=None, shape=, filternorm=1, filterrad=4.0, imlim=, resample=None, url=None, *, data=None, **kwargs)\n", - "\n", - "使用imshow画图时首先需要传入一个数组,数组对应的是空间内的像素位置和像素点的值,interpolation参数可以设置不同的差值方法,具体效果如下。" - ] - }, - { - "cell_type": "code", - "execution_count": 87, - "metadata": { - "ExecuteTime": { - "end_time": "2021-05-23T08:29:18.406235Z", - "start_time": "2021-05-23T08:29:17.801624Z" - } - }, - "outputs": [ - { - "data": { - "image/png": "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\n", - "text/plain": [ - "
" - ] - }, - "metadata": {}, - "output_type": "display_data" - } - ], - "source": [ - "methods = [None, 'none', 'nearest', 'bilinear', 'bicubic', 'spline16',\n", - " 'spline36', 'hanning', 'hamming', 'hermite', 'kaiser', 'quadric',\n", - " 'catrom', 'gaussian', 'bessel', 'mitchell', 'sinc', 'lanczos']\n", - "\n", - "\n", - "grid = np.random.rand(4, 4)\n", - "\n", - "fig, axs = plt.subplots(nrows=3, ncols=6, figsize=(9, 6),\n", - " subplot_kw={'xticks': [], 'yticks': []})\n", - "\n", - "for ax, interp_method in zip(axs.flat, methods):\n", - " ax.imshow(grid, interpolation=interp_method, cmap='viridis')\n", - " ax.set_title(str(interp_method))\n", - "\n", - "plt.tight_layout();" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## 三、对象容器 - Object container\n", - "容器会包含一些`primitives`,并且容器还有它自身的属性。 \n", - "比如`Axes Artist`,它是一种容器,它包含了很多`primitives`,比如`Line2D`,`Text`;同时,它也有自身的属性,比如`xscal`,用来控制X轴是`linear`还是`log`的。 " - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "### 1. Figure容器\n", - "`matplotlib.figure.Figure`是`Artist`最顶层的`container`-对象容器,它包含了图表中的所有元素。一张图表的背景就是在`Figure.patch`的一个矩形`Rectangle`。 \n", - "当我们向图表添加`Figure.add_subplot()`或者`Figure.add_axes()`元素时,这些都会被添加到`Figure.axes`列表中。" - ] - }, - { - "cell_type": "code", - "execution_count": 17, - "metadata": { - "ExecuteTime": { - "end_time": "2021-05-23T08:29:18.548550Z", - "start_time": "2021-05-23T08:29:18.408222Z" - } - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "AxesSubplot(0.125,0.536818;0.775x0.343182)\n", - "[, ]\n" - ] - }, - { - "data": { - "image/png": "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\n", - "text/plain": [ - "
" - ] - }, - "metadata": { - "needs_background": "light" - }, - "output_type": "display_data" - } - ], - "source": [ - "fig = plt.figure()\n", - "ax1 = fig.add_subplot(211) # 作一幅2*1的图,选择第1个子图\n", - "ax2 = fig.add_axes([0.1, 0.1, 0.7, 0.3]) # 位置参数,四个数分别代表了(left,bottom,width,height)\n", - "print(ax1) \n", - "print(fig.axes) # fig.axes 中包含了subplot和axes两个实例, 刚刚添加的" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "由于`Figure`维持了`current axes`,因此你不应该手动的从`Figure.axes`列表中添加删除元素,而是要通过`Figure.add_subplot()`、`Figure.add_axes()`来添加元素,通过`Figure.delaxes()`来删除元素。但是你可以迭代或者访问`Figure.axes`中的`Axes`,然后修改这个`Axes`的属性。 \n", - " \n", - "比如下面的遍历axes里的内容,并且添加网格线:" - ] - }, - { - "cell_type": "code", - "execution_count": 18, - "metadata": { - "ExecuteTime": { - "end_time": "2021-05-23T08:29:18.644260Z", - "start_time": "2021-05-23T08:29:18.550540Z" - } - }, - "outputs": [ - { - "data": { - "image/png": "iVBORw0KGgoAAAANSUhEUgAAAYIAAACGCAYAAADQHI0rAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjMuMiwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8vihELAAAACXBIWXMAAAsTAAALEwEAmpwYAAALqklEQVR4nO3dXYxc5X3H8e8vBosmRSENC40MbtzK3ZaLIBFqaJM2SytSGzWyInFhGgUJJbJoQ1VVahXUC3LRm1a5qSJILAtZKBfBFw0kruTwIkVTolJaQ8WLTWK0ddKwciTEi4iWVEWGfy9m3B0ta/Z4d3Zmmef7kUae87yMn/lr9/z2nJk5k6pCktSu9016AZKkyTIIJKlxBoEkNc4gkKTGGQSS1DiDQJIat2oQJDmU5KUkx8/RnyRfSzKf5Nkk1wz17U5yctB35ygXLkkajS5HBPcBu9+lfw+wc3DbD3wDIMkW4J5B/1XALUmuWs9iJUmjt2oQVNVjwKvvMmQv8M3qewK4JMlHgF3AfFWdqqo3gcODsZKkTWQUrxFsA14c2l4YtJ2rXZK0iVwwgsfICm31Lu0rP0iyn/6pJS666KKPb9++fQRLe+97++23ed/7fE3fOiyxFkusxZIXXnjh5aqaWcvcUQTBAnDl0PYVwGlg6znaV1RVB4GDALOzs3Xy5MkRLO29r9frMTc3N+llTJx1WGItlliLJUn+e61zRxGlR4BbB+8euh54vap+BhwDdibZkWQrsG8wVpK0iax6RJDkfmAOuDTJAvAV4EKAqjoAHAVuAuaBXwC3DfrOJLkDeBjYAhyqqhMb8BwkSeuwahBU1S2r9BfwpXP0HaUfFJKkTcpXWSSpcQaBJDXOIJCkxhkEktQ4g0CSGmcQSFLjDAJJapxBIEmNMwgkqXEGgSQ1ziCQpMYZBJLUOINAkhpnEEhS4wwCSWqcQSBJjesUBEl2JzmZZD7JnSv0/02Spwe340neSvIrg76fJHlu0PfkqJ+AJGl9unxV5RbgHuBG+l9UfyzJkap6/uyYqvoq8NXB+M8Af1VVrw49zA1V9fJIVy5JGokuRwS7gPmqOlVVbwKHgb3vMv4W4P5RLE6StPG6BME24MWh7YVB2zskeT+wG/j2UHMBjyR5Ksn+tS5UkrQxVj01BGSFtjrH2M8A/7rstNAnqup0ksuAR5P8qKoee8d/0g+J/QAzMzP0er0OS5t+i4uL1gLrMMxaLLEWo9ElCBaAK4e2rwBOn2PsPpadFqqq04N/X0ryIP1TTe8Igqo6CBwEmJ2drbm5uQ5Lm369Xg9rYR2GWYsl1mI0upwaOgbsTLIjyVb6O/sjywcl+SDwKeC7Q20fSHLx2fvAp4Hjo1i4JGk0Vj0iqKozSe4AHga2AIeq6kSS2wf9BwZDPws8UlVvDE2/HHgwydn/61tV9dAon4AkaX26nBqiqo4CR5e1HVi2fR9w37K2U8DV61qhJGlD+cliSWqcQSBJjTMIJKlxBoEkNc4gkKTGGQSS1DiDQJIaZxBIUuMMAklqnEEgSY0zCCSpcQaBJDXOIJCkxhkEktQ4g0CSGmcQSFLjOgVBkt1JTiaZT3LnCv1zSV5P8vTgdlfXuZKkyVr1G8qSbAHuAW6k/0X2x5Icqarnlw39QVX9yRrnSpImpMsRwS5gvqpOVdWbwGFgb8fHX89cSdIYdPnO4m3Ai0PbC8B1K4z73STPAKeBv66qE+cxlyT7gf0AMzMz9Hq9DkubfouLi9YC6zDMWiyxFqPRJQiyQlst2/5P4NeqajHJTcB3gJ0d5/Ybqw4CBwFmZ2drbm6uw9KmX6/Xw1pYh2HWYom1GI0up4YWgCuHtq+g/1f//6uqn1fV4uD+UeDCJJd2mStJmqwuQXAM2JlkR5KtwD7gyPCAJL+aJIP7uwaP+0qXuZKkyVr11FBVnUlyB/AwsAU4VFUnktw+6D8A3Az8WZIzwP8A+6qqgBXnbtBzkSStQZfXCM6e7jm6rO3A0P27gbu7zpUkbR5+sliSGmcQSFLjDAJJapxBIEmNMwgkqXEGgSQ1ziCQpMYZBJLUOINAkhpnEEhS4wwCSWqcQSBJjTMIJKlxBoEkNc4gkKTGdQqCJLuTnEwyn+TOFfo/l+TZwe3xJFcP9f0kyXNJnk7y5CgXL0lav1W/mCbJFuAe4Eb630F8LMmRqnp+aNiPgU9V1WtJ9tD/EvrrhvpvqKqXR7huSdKIdDki2AXMV9WpqnoTOAzsHR5QVY9X1WuDzSfof0m9JOk9oEsQbANeHNpeGLSdyxeA7w1tF/BIkqeS7D//JUqSNlKX7yzOCm214sDkBvpB8Mmh5k9U1ekklwGPJvlRVT22wtz9wH6AmZkZer1eh6VNv8XFRWuBdRhmLZZYi9HoEgQLwJVD21cAp5cPSvIx4F5gT1W9cra9qk4P/n0pyYP0TzW9Iwiq6iD91xaYnZ2tubm57s9iivV6PayFdRhmLZZYi9HocmroGLAzyY4kW4F9wJHhAUm2Aw8An6+qF4baP5Dk4rP3gU8Dx0e1eEnS+q16RFBVZ5LcATwMbAEOVdWJJLcP+g8AdwEfBr6eBOBMVV0LXA48OGi7APhWVT20Ic9EkrQmXU4NUVVHgaPL2g4M3f8i8MUV5p0Crl7eLknaPPxksSQ1ziCQpMYZBJLUOINAkhpnEEhS4wwCSWqcQSBJjTMIJKlxBoEkNc4gkKTGGQSS1DiDQJIaZxBIUuMMAklqnEEgSY0zCCSpcZ2CIMnuJCeTzCe5c4X+JPnaoP/ZJNd0nStJmqxVgyDJFuAeYA9wFXBLkquWDdsD7Bzc9gPfOI+5kqQJ6nJEsAuYr6pTVfUmcBjYu2zMXuCb1fcEcEmSj3ScK0maoC5BsA14cWh7YdDWZUyXuZKkCery5fVZoa06jukyt/8AyX76p5UA/jfJ8Q5ra8GlwMuTXsQmYB2WWIsl1mLJ7FondgmCBeDKoe0rgNMdx2ztMBeAqjoIHARI8mRVXdthbVPPWvRZhyXWYom1WJLkybXO7XJq6BiwM8mOJFuBfcCRZWOOALcO3j10PfB6Vf2s41xJ0gStekRQVWeS3AE8DGwBDlXViSS3D/oPAEeBm4B54BfAbe82d0OeiSRpTbqcGqKqjtLf2Q+3HRi6X8CXus7t4OB5jp9m1qLPOiyxFkusxZI11yL9fbgkqVVeYkKSGjexIFjPZSumTYdafG5Qg2eTPJ7k6kmscxy6XpIkye8keSvJzeNc3zh1qUWSuSRPJzmR5F/GvcZx6fA78sEk/5zkmUEtbpvEOjdakkNJXjrX2+vXvN+sqrHf6L9w/F/Ar9N/i+kzwFXLxtwEfI/+ZxGuB/59EmvdJLX4PeBDg/t7Wq7F0Ljv03/t6eZJr3uCPxeXAM8D2wfbl0163ROsxd8C/zC4PwO8Cmyd9No3oBZ/AFwDHD9H/5r2m5M6IljPZSumzaq1qKrHq+q1weYT9D+PMY26XpLkL4BvAy+Nc3Fj1qUWfwo8UFU/Baiqaa1Hl1oUcHGSAL9MPwjOjHeZG6+qHqP/3M5lTfvNSQXBei5bMW3O93l+gX7iT6NVa5FkG/BZ4ADTrcvPxW8CH0rSS/JUklvHtrrx6lKLu4Hfpv+B1eeAv6yqt8ezvE1lTfvNTm8f3QDruWzFtDmfy3DcQD8IPrmhK5qcLrX4R+DLVfVW/4+/qdWlFhcAHwf+CPgl4N+SPFFVL2z04sasSy3+GHga+EPgN4BHk/ygqn6+wWvbbNa035xUEKznshXTptPzTPIx4F5gT1W9Mqa1jVuXWlwLHB6EwKXATUnOVNV3xrLC8en6O/JyVb0BvJHkMeBqYNqCoEstbgP+vvonyueT/Bj4LeA/xrPETWNN+81JnRpaz2Urps2qtUiyHXgA+PwU/rU3bNVaVNWOqvpoVX0U+Cfgz6cwBKDb78h3gd9PckGS9wPXAT8c8zrHoUstfkr/yIgkl9O/ANupsa5yc1jTfnMiRwS1jstWTJuOtbgL+DDw9cFfwmdqCi+01bEWTehSi6r6YZKHgGeBt4F7q2rqrtrb8efi74D7kjxH//TIl6tq6q5KmuR+YA64NMkC8BXgQljfftNPFktS4/xksSQ1ziCQpMYZBJLUOINAkhpnEEhS4wwCSWqcQSBJjTMIJKlx/wf2sF5IyEVsZQAAAABJRU5ErkJggg==\n", - "text/plain": [ - "
" - ] - }, - "metadata": { - "needs_background": "light" - }, - "output_type": "display_data" - } - ], - "source": [ - "fig = plt.figure()\n", - "ax1 = fig.add_subplot(211)\n", - "\n", - "for ax in fig.axes:\n", - " ax.grid(True)\n" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "`Figure`也有它自己的`text、line、patch、image`。你可以直接通过`add primitive`语句直接添加。但是注意`Figure`默认的坐标系是以像素为单位,你可能需要转换成figure坐标系:(0,0)表示左下点,(1,1)表示右上点。" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "**Figure容器的常见属性:** \n", - "`Figure.patch`属性:Figure的背景矩形 \n", - "`Figure.axes`属性:一个Axes实例的列表(包括Subplot) \n", - "`Figure.images`属性:一个FigureImages patch列表 \n", - "`Figure.lines`属性:一个Line2D实例的列表(很少使用) \n", - "`Figure.legends`属性:一个Figure Legend实例列表(不同于Axes.legends) \n", - "`Figure.texts`属性:一个Figure Text实例列表 " - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "### 2. Axes容器" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "`matplotlib.axes.Axes`是matplotlib的核心。大量的用于绘图的`Artist`存放在它内部,并且它有许多辅助方法来创建和添加`Artist`给它自己,而且它也有许多赋值方法来访问和修改这些`Artist`。 \n", - " \n", - "和`Figure`容器类似,`Axes`包含了一个patch属性,对于笛卡尔坐标系而言,它是一个`Rectangle`;对于极坐标而言,它是一个`Circle`。这个patch属性决定了绘图区域的形状、背景和边框。" - ] - }, - { - "cell_type": "code", - "execution_count": 90, - "metadata": { - "ExecuteTime": { - "end_time": "2021-05-23T08:29:18.740285Z", - "start_time": "2021-05-23T08:29:18.646261Z" - } - }, - "outputs": [ - { - "data": { - "image/png": "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\n", - "text/plain": [ - "
" - ] - }, - "metadata": { - "needs_background": "light" - }, - "output_type": "display_data" - } - ], - "source": [ - "fig = plt.figure()\n", - "ax = fig.add_subplot(111)\n", - "rect = ax.patch # axes的patch是一个Rectangle实例\n", - "rect.set_facecolor('green')" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "`Axes`有许多方法用于绘图,如`.plot()、.text()、.hist()、.imshow()`等方法用于创建大多数常见的`primitive`(如`Line2D,Rectangle,Text,Image`等等)。在`primitives`中已经涉及,不再赘述。 \n", - " \n", - "Subplot就是一个特殊的Axes,其实例是位于网格中某个区域的Subplot实例。其实你也可以在任意区域创建Axes,通过Figure.add_axes([left,bottom,width,height])来创建一个任意区域的Axes,其中left,bottom,width,height都是[0—1]之间的浮点数,他们代表了相对于Figure的坐标。" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "你不应该直接通过`Axes.lines`和`Axes.patches`列表来添加图表。因为当创建或添加一个对象到图表中时,`Axes`会做许多自动化的工作: \n", - "它会设置Artist中figure和axes的属性,同时默认Axes的转换; \n", - "它也会检视Artist中的数据,来更新数据结构,这样数据范围和呈现方式可以根据作图范围自动调整。 \n", - " \n", - "你也可以使用Axes的辅助方法`.add_line()`和`.add_patch()`方法来直接添加。 " - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "另外Axes还包含两个最重要的Artist container:\n", - "\n", - "`ax.xaxis`:XAxis对象的实例,用于处理x轴tick以及label的绘制 \n", - "`ax.yaxis`:YAxis对象的实例,用于处理y轴tick以及label的绘制 \n", - "会在下面章节详细说明。" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "**Axes容器**的常见属性有: \n", - "`artists`: Artist实例列表 \n", - "`patch`: Axes所在的矩形实例 \n", - "`collections`: Collection实例 \n", - "`images`: Axes图像 \n", - "`legends`:\t Legend 实例 \n", - "`lines`:\t Line2D 实例 \n", - "`patches`:\t Patch 实例 \n", - "`texts`:\t Text 实例 \n", - "`xaxis`:\t matplotlib.axis.XAxis 实例 \n", - "`yaxis`:\t matplotlib.axis.YAxis 实例 " - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "### 3. Axis容器" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "`matplotlib.axis.Axis`实例处理`tick line`、`grid line`、`tick label`以及`axis label`的绘制,它包括坐标轴上的刻度线、刻度`label`、坐标网格、坐标轴标题。通常你可以独立的配置y轴的左边刻度以及右边的刻度,也可以独立地配置x轴的上边刻度以及下边的刻度。\n", - "\n", - "刻度包括主刻度和次刻度,它们都是Tick刻度对象。 \n", - " \n", - "`Axis`也存储了用于自适应,平移以及缩放的`data_interval`和`view_interval`。它还有Locator实例和Formatter实例用于控制刻度线的位置以及刻度label。\n", - "\n", - "每个Axis都有一个`label`属性,也有主刻度列表和次刻度列表。这些`ticks`是`axis.XTick`和`axis.YTick`实例,它们包含着`line primitive`以及`text primitive`用来渲染刻度线以及刻度文本。\n", - "\n", - "刻度是动态创建的,只有在需要创建的时候才创建(比如缩放的时候)。Axis也提供了一些辅助方法来获取刻度文本、刻度线位置等等: \n", - "常见的如下:" - ] - }, - { - "cell_type": "code", - "execution_count": 95, - "metadata": { - "ExecuteTime": { - "end_time": "2021-05-23T08:29:18.867939Z", - "start_time": "2021-05-23T08:29:18.741276Z" - } - }, - "outputs": [ - { - "data": { - "text/plain": [ - "[]" - ] - }, - "execution_count": 95, - "metadata": {}, - "output_type": "execute_result" - }, - { - "data": { - "text/plain": [ - "array([-0.5, 0. , 0.5, 1. , 1.5, 2. , 2.5, 3. , 3.5, 4. , 4.5])" - ] - }, - "execution_count": 95, - "metadata": {}, - "output_type": "execute_result" - }, - { - "data": { - "text/plain": [ - "[Text(0, 0, ''),\n", - " Text(0, 0, ''),\n", - " Text(0, 0, ''),\n", - " Text(0, 0, ''),\n", - " Text(0, 0, ''),\n", - " Text(0, 0, ''),\n", - " Text(0, 0, ''),\n", - " Text(0, 0, ''),\n", - " Text(0, 0, ''),\n", - " Text(0, 0, ''),\n", - " Text(0, 0, '')]" - ] - }, - "execution_count": 95, - "metadata": {}, - "output_type": "execute_result" - }, - { - "data": { - "text/plain": [ - "" - ] - }, - "execution_count": 95, - "metadata": {}, - "output_type": "execute_result" - }, - { - "data": { - "text/plain": [ - "array([0., 4.])" - ] - }, - "execution_count": 95, - "metadata": {}, - "output_type": "execute_result" - }, - { - "data": { - "text/plain": [ - "array([-0.2, 4.2])" - ] - }, - "execution_count": 95, - "metadata": {}, - "output_type": "execute_result" - }, - { - "data": { - "image/png": "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\n", - "text/plain": [ - "
" - ] - }, - "metadata": { - "needs_background": "light" - }, - "output_type": "display_data" - } - ], - "source": [ - "# 不用print,直接显示结果\n", - "from IPython.core.interactiveshell import InteractiveShell\n", - "InteractiveShell.ast_node_interactivity = \"all\"\n", - "\n", - "fig, ax = plt.subplots()\n", - "x = range(0,5)\n", - "y = [2,5,7,8,10]\n", - "plt.plot(x, y, '-')\n", - "\n", - "axis = ax.xaxis # axis为X轴对象\n", - "axis.get_ticklocs() # 获取刻度线位置\n", - "axis.get_ticklabels() # 获取刻度label列表(一个Text实例的列表)。 可以通过minor=True|False关键字参数控制输出minor还是major的tick label。\n", - "axis.get_ticklines() # 获取刻度线列表(一个Line2D实例的列表)。 可以通过minor=True|False关键字参数控制输出minor还是major的tick line。\n", - "axis.get_data_interval()# 获取轴刻度间隔\n", - "axis.get_view_interval()# 获取轴视角(位置)的间隔" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "下面的例子展示了如何调整一些轴和刻度的属性(忽略美观度,仅作调整参考): " - ] - }, - { - "cell_type": "code", - "execution_count": 96, - "metadata": { - "ExecuteTime": { - "end_time": "2021-05-23T08:29:18.963976Z", - "start_time": "2021-05-23T08:29:18.868934Z" - } - }, - "outputs": [ - { - "data": { - "image/png": "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\n", - "text/plain": [ - "
" - ] - }, - "metadata": {}, - "output_type": "display_data" - } - ], - "source": [ - "fig = plt.figure() # 创建一个新图表\n", - "rect = fig.patch # 矩形实例并将其设为黄色\n", - "rect.set_facecolor('lightgoldenrodyellow')\n", - "\n", - "ax1 = fig.add_axes([0.1, 0.3, 0.4, 0.4]) # 创一个axes对象,从(0.1,0.3)的位置开始,宽和高都为0.4,\n", - "rect = ax1.patch # ax1的矩形设为灰色\n", - "rect.set_facecolor('lightslategray')\n", - "\n", - "\n", - "for label in ax1.xaxis.get_ticklabels(): \n", - " # 调用x轴刻度标签实例,是一个text实例\n", - " label.set_color('red') # 颜色\n", - " label.set_rotation(45) # 旋转角度\n", - " label.set_fontsize(16) # 字体大小\n", - "\n", - "for line in ax1.yaxis.get_ticklines():\n", - " # 调用y轴刻度线条实例, 是一个Line2D实例\n", - " line.set_color('green') # 颜色\n", - " line.set_markersize(25) # marker大小\n", - " line.set_markeredgewidth(2)# marker粗细" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "### 4. Tick容器" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "`matplotlib.axis.Tick`是从`Figure`到`Axes`到`Axis`到`Tick`中最末端的容器对象。 \n", - "`Tick`包含了`tick`、`grid line`实例以及对应的`label`。 \n", - " \n", - "所有的这些都可以通过`Tick`的属性获取,常见的`tick`属性有 \n", - "`Tick.tick1line`:Line2D实例 \n", - "`Tick.tick2line`:Line2D实例 \n", - "`Tick.gridline`:Line2D实例 \n", - "`Tick.label1`:Text实例 \n", - "`Tick.label2`:Text实例 \n", - " \n", - "y轴分为左右两个,因此tick1对应左侧的轴;tick2对应右侧的轴。 \n", - "x轴分为上下两个,因此tick1对应下侧的轴;tick2对应上侧的轴。 " - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "下面的例子展示了,如何将Y轴右边轴设为主轴,并将标签设置为美元符号且为绿色:" - ] - }, - { - "cell_type": "code", - "execution_count": 98, - "metadata": { - "ExecuteTime": { - "end_time": "2021-05-23T08:29:19.075005Z", - "start_time": "2021-05-23T08:29:18.965966Z" - } - }, - "outputs": [ - { - "data": { - "image/png": "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\n", - "text/plain": [ - "
" - ] - }, - "metadata": { - "needs_background": "light" - }, - "output_type": "display_data" - } - ], - "source": [ - "fig, ax = plt.subplots()\n", - "ax.plot(100*np.random.rand(20))\n", - "\n", - "# 设置ticker的显示格式\n", - "formatter = matplotlib.ticker.FormatStrFormatter('$%1.2f')\n", - "ax.yaxis.set_major_formatter(formatter)\n", - "\n", - "# 设置ticker的参数,右侧为主轴,颜色为绿色\n", - "ax.yaxis.set_tick_params(which='major', labelcolor='green',\n", - " labelleft=False, labelright=True);" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## 思考题" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "- primitives 和 container的区别和联系是什么,分别用于控制可视化图表中的哪些要素" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "- 使用提供的drug数据集,对第一列yyyy和第二列state分组求和,画出下面折线图。PA加粗标黄,其他为灰色。 \n", - "图标题和横纵坐标轴标题,以及线的文本暂不做要求。 \n", - " \n", - "![](https://img-blog.csdnimg.cn/20210523162430365.png)\n" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "- 分别用一组长方形柱和填充面积的方式模仿画出下图,函数 y = -1 * (x - 2) * (x - 8) +10 在区间[2,9]的积分面积\n", - "![](https://img-blog.csdnimg.cn/20201126105910781.png)\n", - "![](https://img-blog.csdnimg.cn/20201126105910780.png)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## 参考资料\n", - "[1. matplotlib设计的基本逻辑](https://zhuanlan.zhihu.com/p/32693665) \n", - "[2. AI算法工程师手册](https://www.bookstack.cn/read/huaxiaozhuan-ai/spilt.2.333f5abdbabf383d.md) " - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [] - } - ], - "metadata": { - "kernelspec": { - "display_name": "Python 3", - "language": "python", - "name": "python3" - }, - "language_info": { - "codemirror_mode": { - "name": "ipython", - "version": 3 - }, - "file_extension": ".py", - "mimetype": "text/x-python", - "name": "python", - "nbconvert_exporter": "python", - "pygments_lexer": "ipython3", - "version": "3.9.4" - }, - "toc": { - "base_numbering": 1, - "nav_menu": {}, - "number_sections": false, - "sideBar": true, - "skip_h1_title": false, - "title_cell": "Table of Contents", - "title_sidebar": "Contents", - "toc_cell": false, - "toc_position": { - "height": "calc(100% - 180px)", - "left": "10px", - "top": "150px", - "width": "341.292px" - }, - "toc_section_display": true, - "toc_window_display": true - } - }, - "nbformat": 4, - "nbformat_minor": 4 -} diff --git a/notebook/第五回:样式色彩秀芳华.ipynb b/notebook/第五回:样式色彩秀芳华.ipynb deleted file mode 100644 index cc7045f..0000000 --- a/notebook/第五回:样式色彩秀芳华.ipynb +++ /dev/null @@ -1,715 +0,0 @@ -{ - "cells": [ - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# 第五回:样式色彩秀芳华" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "第五回详细介绍matplotlib中样式和颜色的使用,绘图样式和颜色是丰富可视化图表的重要手段,因此熟练掌握本章可以让可视化图表变得更美观,突出重点和凸显艺术性。 \n", - "关于绘图样式,常见的有3种方法,分别是修改预定义样式,自定义样式和rcparams。 \n", - "关于颜色使用,本章介绍了常见的5种表示单色颜色的基本方法,以及colormap多色显示的方法。" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## 一、matplotlib的绘图样式(style)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "在matplotlib中,要想设置绘制样式,最简单的方法是在绘制元素时单独设置样式。\n", - "但是有时候,当用户在做专题报告时,往往会希望保持整体风格的统一而不用对每张图一张张修改,因此matplotlib库还提供了四种批量修改全局样式的方式" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "### 1.matplotlib预先定义样式" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "matplotlib贴心地提供了许多内置的样式供用户使用,使用方法很简单,只需在python脚本的最开始输入想使用style的名称即可调用,尝试调用不同内置样式,比较区别" - ] - }, - { - "cell_type": "code", - "execution_count": 7, - "metadata": {}, - "outputs": [], - "source": [ - "import matplotlib as mpl\n", - "import matplotlib.pyplot as plt\n", - "import numpy as np" - ] - }, - { - "cell_type": "code", - "execution_count": 15, - "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "[]" - ] - }, - "execution_count": 15, - "metadata": {}, - "output_type": "execute_result" - }, - { - "data": { - "image/png": "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pB5tP3qO8QusnMwvwcPNhd/d14fRN3XVWEZERJo1lZF64HAYvLPhELO/3I/dYdC9vTfJ8VH07ayxjIiIiMpIHTtbZGPS4nTW7z8NwMjIzvzhwTBaeerQi4iIgMpInfru8FnGL7SSW2DD082Fl0f25bEBQRrLiIiI/IDKSB2wOwz+/M1B3vxqPw4Dgju2Ym58NCEBPmZHExERaXBURmrZ6UIbExdZ2XTwLAAPRwcyI7YvLT10qEVERK5E75C1aNPBM0xYmMaZIhst3F2ZEduPR/oHmh1LRESkQVMZqQV2h8GctQd4++sDGAaE+Pswd3QUwR01lhEREbkWlZEayi0oYfwCK98dOQdA3I1BvHR/X7zcXU1OJiIi0jiojNTA+v2nmbQojbPFpXh7uPLqQ2GMjOxidiwREZFGRWWkGsrtDmav2c+8dYcA6N3Jl7nxUfTo0MrkZCIiIo2PyoiTTl64xPgFVrYfOw/AzwZ247cjemssIyIiUk0qI074em8ukxanc+FiGT6ebsx8OJwR4Z3MjiUiItKoqYxUQZndwazV+3hvw2EAwrr4kRwfRbd23iYnExERafxURq7h+PmLJKZYScu+AMDPB13H1OGheLppLCMiIlIbVEauYnVmDpOXpFNQUo6vlxuzHo1gWN8As2OJiIg0KSojV2ArtzPzi718uOkoAJFBrXk7Loqgti3NDSYiItIEqYz8SNbZiySkpJJxIh+Ap27tzuRhoXi4uZicTEREpGly6h02KSmJG264AR8fHzp27EhsbCz79u275n5LliwhNDQULy8vwsLCWLlyZbUD16WVGacY8da3ZJzIp3VLd/76xAB+O6KPioiIiEgdcupddv369SQkJLB161bWrFlDWVkZd999N8XFxZXus3nzZuLi4hg7dixWq5XY2FhiY2PZtWtXjcPXlpIyOy8u38WvP0ql0FbOgG5tWDn+Vob29jc7moiISJNnMQzDqO7Op0+fpmPHjqxfv57bbrvtimtGjRpFcXExn3322eVtAwcOJDIyknfeeadKz1NQUICfnx/5+fn4+vpWN+4VHTlTTMJHqew+VQDAr4dczzN39cLdVVdDREREaqKq7981umckP//7+yratm1b6ZotW7YwadKkCtuGDRvG8uXLK93HZrNhs9kuf11QUFCTmJVakXaCaZ9kUFxqp623B2+OimRwrw518lwi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\n", - "text/plain": [ - "
" - ] - }, - "metadata": {}, - "output_type": "display_data" - } - ], - "source": [ - "plt.style.use('default')\n", - "plt.plot([1,2,3,4],[2,3,4,5])" - ] - }, - { - "cell_type": "code", - "execution_count": 16, - "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "[]" - ] - }, - "execution_count": 16, - "metadata": {}, - "output_type": "execute_result" - }, - { - "data": { - "image/png": "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rIKnWQWvLmcVExMT1AsJNSojM2bM4KOPPmLMmDEkJycf99ikpCSKi4urrBUXF5OUlFTtfWJjY4mt5gqntTkoc/GVJKamUrJ7t07WIFlrNasgaVah0byCp1kFT7MKnp+zCukNrNZaZsyYwdq1a/njH/9ImzZtTnifrKwsNm7cWGVtw4YNdOjQIbSkIiIiEpFCKiMzZszg3Xff5f777yc+Pp6ioiKKioo4evRo5TGTJ08mJyen8nbPnj1Zv349ixcvZteuXSxYsIDt27dz9dVX196vQkRERBqskLZpli1bBsDo0aOrrA8fPpxLL70UgMLCwirvyO3YsSMjRoxg3rx5zJ07l9TUVEaOHHncN72KiIhI9AipjCxYsOCEx/ywqAB0796d7t27h/JUIiIiEiVC2qYRERERqW0qIyIiIuIrlRERERHxlcqIiIiI+EplRERERHylMiIiIiK+UhkRERERX6mMiIiIiK9URkRERMRXNfrWXr/ExNRN3Lp63EikWQVPswqN5hU8zSp4mlXw6mJWwT6msfpuZREREfFRVG/THDlyhEceeYQjR474HSXsaVbB06xCo3kFT7MKnmYVvHCYVVSXEWstO3fuRC8OnZhmFTzNKjSaV/A0q+BpVsELh1lFdRkRERER/6mMiIiIiK+iuozExsbSp08fYmNj/Y4S9jSr4GlWodG8gqdZBU+zCl44zEqfphERERFfRfUrIyIiIuI/lRERERHxlcqIiIiI+EplRERERHwV0Rft37RpE4sWLWLnzp3s37+fhx56iPPPP/+49/nss8+YPXs2X3/9NcnJydx0001ceuml9RPYR6HO6rPPPmPMmDE/Wp86dSpJSUl1mNR/CxcuZO3atezatYu4uDiysrK49dZbSUtLO+79Vq9ezfz58ykoKCAlJYUBAwaQnZ1dT6n9UZNZrVy5kmeffbbKWmxsLHPmzKnruL5atmwZy5Yto6CgAID09HT69OlDt27dqr1PNJ5TEPqsovWcOpbXX3+dnJwcevbsyaBBg6o9rr7PrYguI2VlZZx22mlcfvnlTJgw4YTH79mzh//93//liiuu4L777uPTTz/l+eefJykpia5du9Z9YB+FOqvvPPnkkyQkJFTebtGiRV3ECyubNm3iqquu4vTTT6eiooK5c+fy2GOPMXHiRJo0aXLM+2zZsoVJkybRv39/srOzWbVqFePHj2fs2LG0a9eunn8F9acmswKIj49n0qRJ9ZjUf61ataJ///6kpqZireWdd95h3LhxjBs3jrZt2/7o+Gg9pyD0WUF0nlM/tG3bNpYvX05GRsZxj/Pj3IroMtKtW7fj/qvih5YtW0abNm247bbbAK9tf/7557z55psRX0ZCndV3EhMTadq0aR0kCl+jRo2qcvvee+9l8ODB7Nixg7PPPvuY91myZAldu3bl+uuvB6Bv375s3LiRpUuXMnTo0DrP7JeazArAGBPxr7D90Lnnnlvldr9+/Vi2bBlffPHFMf+CjdZzCkKfFUTnOfV9paWlPP300wwbNozXXnvtuMf6cW5FdBkJ1RdffEGnTp2qrHXp0oVZs2b5E6gBePjhhwkEArRt25abb76ZM8880+9I9a6kpASAZs2aVXvM1q1b6dWrV5W1Ll26sG7dujrNFm6CmRV4f3AOHz4cay2ZmZn069ev2r9kIpHruqxevZqysjKysrKOeYzOKU8wswKdU9OnT6dbt2507tz5hGXEj3NLZeR7ioqKSExMrLKWmJjIkSNHOHr0KHFxcT4lCz8tW7ZkyJAhnH766QQCAVasWMGYMWN4/PHHad++vd/x6o3rusyaNYuOHTse9+XL6s6toqKiOk4YPoKdVVpaGvfccw8ZGRmUlJSwaNEiHn30USZOnEhycnI9Jq5/eXl5jBo1ikAgQJMmTXjooYdIT08/5rHRfk6FMqtoPqcA3nvvPXbu3Mlf/vKXoI7349xSGZEaSUtLq/ImxI4dO/Ltt9/y5ptvct999/mYrH7NmDGDr7/+mj/96U9+Rwl7wc4qKyuryr9ws7KyePDBB1m+fDl9+/at65i+SktLY/z48ZSUlLBmzRqeeeYZxowZU+1fstEslFlF8zlVWFjIrFmzePTRR8P6H9QqI9+TlJREcXFxlbXi4mLi4+PD+n9iuDjjjDP4/PPP/Y5Rb2bMmMFHH33EmDFjTvivq+rOrWjZww5lVj8UExNDZmYm+fn5dZQufMTExJCSkgJA+/bt2b59O0uWLDnmPn20n1OhzOpY942Wc2rHjh0UFxfzyCOPVK65rsvmzZtZunQpOTk5OE7Vq3z4cW6pjHxPhw4d+Pjjj6usbdiw4bj7kPL/+/LLL2nZsqXfMeqctZaZM2eydu1aRo8eTZs2bU54n6ysLDZu3Mi1115bubZhwwY6dOhQl1F9V5NZ/ZDruuTl5dXoDdYNneu6BAKBY/5ctJ5T1TnerI51bLScU506dfrRJySfe+450tLSuOGGG35URMCfcyuiL3pWWlrKl19+yZdffgl4H9398ssvKSwsBCAnJ4fJkydXHn/llVeyZ88eXn75ZXbt2sXbb7/N6tWrq/wPiVShzurNN99k3bp15Ofnk5eXx6xZs/j000+56qqr/Ihfr2bMmMG7777L/fffT3x8PEVFRRQVFXH06NHKYyZPnkxOTk7l7Z49e7J+/XoWL17Mrl27WLBgAdu3b+fqq6/245dQb2oyq9zcXNavX8+3337Ljh07eOqppygoKKBHjx5+/BLqTU5ODps2bWLPnj3k5eVV3r744osBnVPfF+qsovWcAu8jze3atavyX+PGjWnevHnle7fC4dyK6FdGtm/fXuXCXLNnzwbgkksu4d5772X//v2Vf9kCtGnThv/5n//hxRdfZMmSJSQnJ3P33XdH/Md6IfRZlZeXM3v2bPbt20fjxo3JyMjgD3/4A+ecc069Z69vy5YtA2D06NFV1ocPH155gbzCwkKMMZU/17FjR0aMGMG8efOYO3cuqampjBw5MuKvB1GTWR06dIgpU6ZQVFRE06ZNad++PY899ljEv2+iuLiYZ555hv3795OQkEBGRgajRo2ic+fOgM6p7wt1VtF6TgUrHM4tY621dfboIiIiIicQ0ds0IiIiEv5URkRERMRXKiMiIiLiK5URERER8ZXKiIiIiPhKZURERER8pTIiIiIivlIZEREREV+pjIiIiIivVEZERETEVyojIiIi4iuVEREREfHV/wcj3S4EVTA//gAAAABJRU5ErkJggg==\n", - "text/plain": [ - "
" - ] - }, - "metadata": {}, - "output_type": "display_data" - } - ], - "source": [ - "plt.style.use('ggplot')\n", - "plt.plot([1,2,3,4],[2,3,4,5])" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "那么matplotlib究竟内置了那些样式供使用呢?总共以下26种丰富的样式可供选择。" - ] - }, - { - "cell_type": "code", - "execution_count": 17, - "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "['Solarize_Light2', '_classic_test_patch', 'bmh', 'classic', 'dark_background', 'fast', 'fivethirtyeight', 'ggplot', 'grayscale', 'seaborn', 'seaborn-bright', 'seaborn-colorblind', 'seaborn-dark', 'seaborn-dark-palette', 'seaborn-darkgrid', 'seaborn-deep', 'seaborn-muted', 'seaborn-notebook', 'seaborn-paper', 'seaborn-pastel', 'seaborn-poster', 'seaborn-talk', 'seaborn-ticks', 'seaborn-white', 'seaborn-whitegrid', 'tableau-colorblind10']\n" - ] - } - ], - "source": [ - "print(plt.style.available)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "### 2.用户自定义stylesheet" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "在任意路径下创建一个后缀名为mplstyle的样式清单,编辑文件添加以下样式内容 \n", - "\n", - "> axes.titlesize : 24 \n", - "axes.labelsize : 20 \n", - "lines.linewidth : 3 \n", - "lines.markersize : 10 \n", - "xtick.labelsize : 16 \n", - "ytick.labelsize : 16 \n", - "\n", - "引用自定义stylesheet后观察图表变化。" - ] - }, - { - "cell_type": "code", - "execution_count": 18, - "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "[]" - ] - }, - "execution_count": 18, - "metadata": {}, - "output_type": "execute_result" - }, - { - "data": { - "image/png": "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\n", - "text/plain": [ - "
" - ] - }, - "metadata": {}, - "output_type": "display_data" - } - ], - "source": [ - "plt.style.use('file/presentation.mplstyle')\n", - "plt.plot([1,2,3,4],[2,3,4,5])" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "值得特别注意的是,matplotlib支持混合样式的引用,只需在引用时输入一个样式列表,若是几个样式中涉及到同一个参数,右边的样式表会覆盖左边的值。" - ] - }, - { - "cell_type": "code", - "execution_count": 19, - "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "[]" - ] - }, - "execution_count": 19, - "metadata": {}, - "output_type": "execute_result" - }, - { - "data": { - "image/png": "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\n", - "text/plain": [ - "
" - ] - }, - "metadata": {}, - "output_type": "display_data" - } - ], - "source": [ - "plt.style.use(['dark_background', 'file/presentation.mplstyle'])\n", - "plt.plot([1,2,3,4],[2,3,4,5])" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "### 3.设置rcparams" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "我们还可以通过修改默认rc设置的方式改变样式,所有rc设置都保存在一个叫做 matplotlib.rcParams的变量中。 \n", - "修改过后再绘图,可以看到绘图样式发生了变化。" - ] - }, - { - "cell_type": "code", - "execution_count": 20, - "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "[]" - ] - }, - "execution_count": 20, - "metadata": {}, - "output_type": "execute_result" - }, - { - "data": { - "image/png": "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pB5tP3qO8QusnMwvwcPNhd/d14fRN3XVWEZERJo1lZF64HAYvLPhELO/3I/dYdC9vTfJ8VH07ayxjIiIiMpIHTtbZGPS4nTW7z8NwMjIzvzhwTBaeerQi4iIgMpInfru8FnGL7SSW2DD082Fl0f25bEBQRrLiIiI/IDKSB2wOwz+/M1B3vxqPw4Dgju2Ym58NCEBPmZHExERaXBURmrZ6UIbExdZ2XTwLAAPRwcyI7YvLT10qEVERK5E75C1aNPBM0xYmMaZIhst3F2ZEduPR/oHmh1LRESkQVMZqQV2h8GctQd4++sDGAaE+Pswd3QUwR01lhEREbkWlZEayi0oYfwCK98dOQdA3I1BvHR/X7zcXU1OJiIi0jiojNTA+v2nmbQojbPFpXh7uPLqQ2GMjOxidiwREZFGRWWkGsrtDmav2c+8dYcA6N3Jl7nxUfTo0MrkZCIiIo2PyoiTTl64xPgFVrYfOw/AzwZ247cjemssIyIiUk0qI074em8ukxanc+FiGT6ebsx8OJwR4Z3MjiUiItKoqYxUQZndwazV+3hvw2EAwrr4kRwfRbd23iYnExERafxURq7h+PmLJKZYScu+AMDPB13H1OGheLppLCMiIlIbVEauYnVmDpOXpFNQUo6vlxuzHo1gWN8As2OJiIg0KSojV2ArtzPzi718uOkoAJFBrXk7Loqgti3NDSYiItIEqYz8SNbZiySkpJJxIh+Ap27tzuRhoXi4uZicTEREpGly6h02KSmJG264AR8fHzp27EhsbCz79u275n5LliwhNDQULy8vwsLCWLlyZbUD16WVGacY8da3ZJzIp3VLd/76xAB+O6KPioiIiEgdcupddv369SQkJLB161bWrFlDWVkZd999N8XFxZXus3nzZuLi4hg7dixWq5XY2FhiY2PZtWtXjcPXlpIyOy8u38WvP0ql0FbOgG5tWDn+Vob29jc7moiISJNnMQzDqO7Op0+fpmPHjqxfv57bbrvtimtGjRpFcXExn3322eVtAwcOJDIyknfeeadKz1NQUICfnx/5+fn4+vpWN+4VHTlTTMJHqew+VQDAr4dczzN39cLdVVdDREREaqKq7981umckP//7+yratm1b6ZotW7YwadKkCtuGDRvG8uXLK93HZrNhs9kuf11QUFCTmJVakXaCaZ9kUFxqp623B2+OimRwrw518lwi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\n", - "text/plain": [ - "
" - ] - }, - "metadata": {}, - "output_type": "display_data" - } - ], - "source": [ - "plt.style.use('default') # 恢复到默认样式\n", - "plt.plot([1,2,3,4],[2,3,4,5])" - ] - }, - { - "cell_type": "code", - "execution_count": 21, - "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "[]" - ] - }, - "execution_count": 21, - "metadata": {}, - "output_type": "execute_result" - }, - { - "data": { - "image/png": "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\n", - "text/plain": [ - "
" - ] - }, - "metadata": {}, - "output_type": "display_data" - } - ], - "source": [ - "mpl.rcParams['lines.linewidth'] = 2\n", - "mpl.rcParams['lines.linestyle'] = '--'\n", - "plt.plot([1,2,3,4],[2,3,4,5])" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "另外matplotlib也还提供了了一种更便捷的修改样式方式,可以一次性修改多个样式。" - ] - }, - { - "cell_type": "code", - "execution_count": 22, - "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "[]" - ] - }, - "execution_count": 22, - "metadata": {}, - "output_type": "execute_result" - }, - { - "data": { - "image/png": "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\n", - "text/plain": [ - "
" - ] - }, - "metadata": {}, - "output_type": "display_data" - } - ], - "source": [ - "mpl.rc('lines', linewidth=4, linestyle='-.')\n", - "plt.plot([1,2,3,4],[2,3,4,5])" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## 二、matplotlib的色彩设置(color)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "在可视化中,如何选择合适的颜色和搭配组合也是需要仔细考虑的,色彩选择要能够反映出可视化图像的主旨。 \n", - "从可视化编码的角度对颜色进行分析,可以将颜色分为`色相、亮度和饱和度`三个视觉通道。通常来说: \n", - "`色相`: 没有明显的顺序性、一般不用来表达数据量的高低,而是用来表达数据列的类别。 \n", - "`明度和饱和度`: 在视觉上很容易区分出优先级的高低、被用作表达顺序或者表达数据量视觉通道。 \n", - "具体关于色彩理论部分的知识,不属于本教程的重点,请参阅有关拓展材料学习。 \n", - "[ECharts数据可视化实验室](https://vis.baidu.com/chartcolor/basis/) \n", - "[学会这6个可视化配色基本技巧,还原数据本身的意义](https://zhuanlan.zhihu.com/p/88892542)\n", - "\n", - "在matplotlib中,设置颜色有以下几种方式:" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "### 1.RGB或RGBA" - ] - }, - { - "cell_type": "code", - "execution_count": 24, - "metadata": {}, - "outputs": [], - "source": [ - "plt.style.use('default')" - ] - }, - { - "cell_type": "code", - "execution_count": 25, - "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "[]" - ] - }, - "execution_count": 25, - "metadata": {}, - "output_type": "execute_result" - }, - { - "data": { - "image/png": "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tH37dm3btk1Dhw7VmDFjtGfPHqunea2srCy99dZb6tatm9VTvFbnzp118uTJSx+bNm2yepLXKSwsVGpqqvz8/LRs2TJlZ2frxRdfVNOmTet9S72/pbfZRowYoREjRlg9w+stX778sl+/++67ioqK0vbt2zVw4ECLVnmf0aNHX/brWbNmae7cudqyZYs6d+5s0SrvVVpaqrvvvltvv/22nn/+eavneC1fX1+1bNnS6hle7YUXXlBcXJzmz59/6XOJiYmWbPH4VyxgjaKiIklSRESExUu8l8vl0vvvv6+ysjKlpKRYPccrTZgwQSNHjlR6errVU7xabm6uYmJi1KZNG9199906evSo1ZO8zmeffabevXvrjjvuUFRUlHr27Km3337bki0e/4oF6p/b7dZjjz2m1NRUdenSxeo5XmfXrl1KSUlRRUWFgoODtXDhQiUnJ1s9y+u8//772rFjh7Kysqye4tX69u2rd999Vx07dtTJkyc1Y8YMDRgwQLt371ZISIjV87zGwYMHNXfuXE2aNEnTpk1TVlaWJk6cKH9/f9133331uoWwQI1NmDBBu3fv5py0jnTs2FE7d+5UUVGRFixYoPvuu0/r168nLkx07NgxPfroo1q1apUCAgKsnuPVvntU3a1bN/Xt21cJCQn64IMP9OCDD1q4zLu43W717t1bs2fPliT17NlTu3fv1ptvvlnvYcFRCGrk4Ycf1uLFi7V27VrFxsZaPccr+fv7q127drruuuuUkZGh7t27689//rPVs7zK9u3bdebMGfXq1Uu+vr7y9fXV+vXr9corr8jX11cul8vqiV4rPDxcHTp0UF5entVTvEp0dPS//Z+PTp06WXLsxCsWuCqGYeiRRx7RwoULtW7dOssuCmqM3G63nE6n1TO8Slpamnbt2nXZ5+6//34lJSXpySeflI+Pj0XLvF9paakOHDigX/7yl1ZP8Sqpqan/9hYA+/fvV0JCQr1v8fiwKC0tvax8Dx06pJ07dyoiIkLx8fEWLvMuEyZM0HvvvadPP/1UISEhOnXqlCQpLCxMgYGBFq/zHlOnTtWIESMUHx+vkpISvffee1q3bp1WrFhh9TSvEhIS8m/XBwUFBSkyMpLrhkw2efJkjR49WgkJCcrPz9f06dPl4+Oju+66y+ppXuXxxx9Xv379NHv2bP385z/X1q1bNW/ePM2bN6/+xxgebu3atYakf/u47777rJ7mVX7oMZZkzJ8/3+ppXuWBBx4wEhISDH9/f6N58+ZGWlqasXLlSqtnNQqDBg0yHn30UatneJ0777zTiI6ONvz9/Y1WrVoZd955p5GXl2f1LK+0aNEio0uXLobD4TCSkpKMefPmWbKDH5sOAABMw8WbAADANIQFAAAwDWEBAABMQ1gAAADTEBYAAMA0hAUAADANYQEAAExDWAAAANMQFgAAwDSEBQAAMA1hAQAATENYAAAA0/x/8L/Eax5IGTYAAAAASUVORK5CYII=\n", - "text/plain": [ - "
" - ] - }, - "metadata": {}, - "output_type": "display_data" - } - ], - "source": [ - "# 颜色用[0,1]之间的浮点数表示,四个分量按顺序分别为(red, green, blue, alpha),其中alpha透明度可省略\n", - "plt.plot([1,2,3],[4,5,6],color=(0.1, 0.2, 0.5))\n", - "plt.plot([4,5,6],[1,2,3],color=(0.1, 0.2, 0.5, 0.5))" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "### 2.HEX RGB 或 RGBA " - ] - }, - { - "cell_type": "code", - "execution_count": 26, - "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "[]" - ] - }, - "execution_count": 26, - "metadata": {}, - "output_type": "execute_result" - }, - { - "data": { - "image/png": "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zjvvqGHDhhYvAwDAe13VWcCcOXNks9k0YcIEk+aY45tvvlHv3r2VmZkpf39/zZo1S0uWLCEqAACoYVd8xWLLli1asGCBOnXqZOaeq2IYhlJSUjRz5kxVVFSoefPmWrx4sW655RarpwEAUCdc0RWL4uJiPfjgg0pLS6s1VwHOnTunP/7xj3rmmWdUUVGhhIQErVu3jqgAAMCNrigsxowZoyFDhqh///6/+7VOp1MOh+OiD7OdOHFCPXv21MqVKxUQEKBXX31V//mf/6nw8HDTHwsAAFxatY9CPvzwQ33zzTfasmXLZX397Nmz9cILL1R7WHU0bdpUN910k/z9/ZWenq4uXbrU6OMBAIBfZzMMw7jcLz569Ki6du2qnJycC/dW9OnTR126dNF//Md//Or3OJ1OOZ3OC392OByKiYlRYWGhQkNDr279PykoKJCPj4+pPxMAAPwvh8OhsLCw3/39Xa2wsNvtuueeey56O/GqqirZbDb5+PjI6XT+7luNX+4wAABQe1zu7+9qHYX069dPO3fuvOhzycnJateunaZOnfq7UQEAALxbtcIiJCREHTt2vOhzDRo0UERExL98HgAA1D28WQYAADDNVb+k99q1a02YAQAAvAFXLAAAgGkICwAAYBrCAgAAmIawAAAApiEsAACAaQgLAABgGsICAACYhrAAAACmISwAAIBpCAsAAGAawgIAAJiGsAAAAKYhLAAAgGkICwAAYBrCAgAAmIawAAAApiEsAACAaQgLAABgGsICAACYhrAAAACmISwAAIBpCAsAAGAawgIAAJiGsAAAAKYhLAAAgGkICwAAYBrCAgAAmIawAAAApiEsAACAaQgLAABgGsICAACYhrAAAACmISwAAIBpCAsAAGAawgIAAJiGsAAAAKYhLAAAgGkICwAAYBrCAgAAmIawAAAApiEsAACAaQgLAABgGsICAACYhrAAAACmISwAAIBpCAsAAGAawgIAAJiGsAAAAKYhLAAAgGkICwAAYBrCAgAAmIawAAAApiEsAACAaQgLAABgGsICAACYhrAAAACmqVZYpKSkqFOnTgoNDVVoaKhiY2O1cuXKmtoGAAA8TLXCIjo6WnPmzNG2bdu0detW3XnnnUpMTNT3339fU/sAAIAHsRmGYVzND2jUqJFeffVVjRgx4rK+3uFwKCwsTIWFhQoNDb2ahwYAAP+k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\n", - "text/plain": [ - "
" - ] - }, - "metadata": {}, - "output_type": "display_data" - } - ], - "source": [ - "# 用十六进制颜色码表示,同样最后两位表示透明度,可省略\n", - "plt.plot([1,2,3],[4,5,6],color='#0f0f0f')\n", - "plt.plot([4,5,6],[1,2,3],color='#0f0f0f80')" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "RGB颜色和HEX颜色之间是可以一一对应的,以下网址提供了两种色彩表示方法的转换工具。 \n", - "[https://www.colorhexa.com/](https://www.colorhexa.com/)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "### 3.灰度色阶" - ] - }, - { - "cell_type": "code", - "execution_count": 27, - "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "[]" - ] - }, - "execution_count": 27, - "metadata": {}, - "output_type": "execute_result" - }, - { - "data": { - "image/png": "iVBORw0KGgoAAAANSUhEUgAAAiwAAAGdCAYAAAAxCSikAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjMuMiwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8vihELAAAACXBIWXMAAA9hAAAPYQGoP6dpAABPQklEQVR4nO3deViTZ6I28DtsYV9UdhFBFNxxqQhq0YKCIoIQWv1sbTt2unw931dPp8cu17Rq23O0Tmem09N+rXVstedMx5awuYECilbFXariCqKICCgKYQ2QPN8fneZMCihB4A3h/l1XrmnePAn3My8ht+/zJpEJIQSIiIiIjJiZ1AGIiIiIHoaFhYiIiIweCwsREREZPRYWIiIiMnosLERERGT0WFiIiIjI6LGwEBERkdFjYSEiIiKjZyF1gJ6g1WpRXl4OBwcHyGQyqeMQERFRFwghUFdXBy8vL5iZPfgYikkUlvLycvj4+Egdg4iIiLrh5s2bGDp06APHmERhcXBwAPDzhB0dHSVOQ0RERF2hUqng4+Ojex1/EJMoLL8sAzk6OrKwEBER9TNdOZ2DJ90SERGR0WNhISIiIqPHwkJERERGj4WFiIiIjB4LCxERERk9FhYiIiIyeiwsREREZPRYWIiIiMjosbAQERGR0TO4sNy6dQtPP/00Bg8eDBsbG4wfPx4nT5584H3y8vIwefJkyOVyBAQEYMuWLe3GfP755xg+fDisra0REhKC48ePGxqNiIiITJRBheX+/fuYMWMGLC0tkZmZiQsXLuCPf/wjXFxcOr1PSUkJYmJiMGfOHBQUFGDlypV44YUXsGfPHt2Y77//Hq+//jpWr16N06dPY+LEiYiKikJVVVX3Z0ZEREQmQyaEEF0d/NZbb+Hw4cP48ccfu/wD3nzzTezatQvnz5/XbVuyZAlqamqQlZUFAAgJCcFjjz2Gzz77DACg1Wrh4+OD//N//g/eeuuth/4MlUoFJycn1NbW8ruEiIiI+glDXr8NOsKyfft2TJ06FUlJSXBzc8OkSZOwadOmB94nPz8fkZGRetuioqKQn58PAGhpacGpU6f0xpiZmSEyMlI35tfUajVUKpXehYiIiHqeVqvF/v37ceDAAUlzGFRYrl27hi+++AIjR47Enj178Morr+D//t//i61bt3Z6n4qKCri7u+ttc3d3h0qlQlNTE+7evQuNRtPhmIqKig4fc926dXByctJdfHx8DJkGERERdUFdXR2+/fZbHDx4EAcOHMDdu3cly2JhyGCtVoupU6fiP/7jPwAAkyZNwvnz5/Hll1/i2Wef7ZWAHXn77bfx+uuv666rVCqWFiIioh5UVFSEtLQ0NDY2wsrKCgsXLsSQIUMky2NQYfH09MSYMWP0to0ePRopKSmd3sfDwwOVlZV62yorK+Ho6AgbGxuYm5vD3Ny8wzEeHh4dPqZcLodcLjckOhEREXWBVqvFvn37cPjwYQA/v44rFAoMHjxY0lwGLQnNmDEDly9f1tt25coV+Pr6dnqf0NBQ5Obm6m3Lzs5GaGgoAMDKygpTpkzRG6PVapGbm6sbQ0RERL2vtrYWW7Zs0ZWVqVOnYsWKFZKXFcDAIyz/+q//irCwMPzHf/wHnnzySRw/fhxfffUVvvrqK92Yt99+G7du3cK3334LAHj55Zfx2WefYdWqVfjNb36Dffv24YcffsCuXbt093n99dfx7LPPYurUqZg2bRo++eQTNDQ04Pnnn++haRIREdGDXLlyBenp6WhqaoJcLkdsbCzGjh0rdSwdgwrLY489hrS0NLz99tt4//334efnh08++QTLli3Tjbl9+zZKS0t11/38/LBr1y7867/+K/7yl79g6NCh+Otf/4qoqCjdmKeeegp37tzBe++9h4qKCgQHByMrK6vdibhERETUszQaDXJzc3XvzPX09IRCocCgQYMkTqbPoM9hMVb8HBYiIiLD1dTUQKlU4tatWwB+/ly0yMhIWFgYdDyj2wx5/e6bRERERGRULl26hIyMDDQ3N8Pa2hpxcXEICgqSOlanWFiIiIgGkLa2NmRnZ+u+s8/b2xsKhQLOzs7SBnsIFhYiIqIB4t69e1Aqlbh9+zaAn9/JGxERAXNzc4mTPRwLCxER0QBQWFiIHTt2QK1Ww8bGBvHx8Rg1apTUsbqMhYWIiMiEtbW1Yc+ePTh58iQAwMfHB4mJiXBycpI4mWFYWIiIiExUdXU1kpOTdZ8mP3PmTMyZMwdmZgZ9bqxRYGEhIiIyQefOncPOnTvR0tICW1tbLF68GAEBAVLH6jYWFiIiIhPS2tqKzMxMnDlzBgDg6+uLxMREODg4SJzs0bCwEBERmYg7d+5AqVSiqqoKAPD4448jPDy8Xy4B/RoLCxERkQkoKCjA7t270draCjs7OyQkJMDf31/qWD2GhYWIiKgfa2lpwe7du/HTTz8B+Pk7/BISEmBvby9xsp7FwkJERNRPVVVVITk5GXfv3oVMJkN4eDhmzZplEktAv8bCQkRE1M8IIXDmzBlkZmaira0NDg4OSEhIwPDhw6WO1mtYWIiIiPoRtVqNXbt24dy5cwCAgIAAxMfHw87OTuJkvYuFhYiIqJ+oqKiAUqlEdXU1ZDIZnnjiCcyYMQMymUzqaL2OhYWIiMjICSFw6tQpZGVlQaPRwNHREYmJiRg2bJjU0foMCwsREZERa25uxs6dO1FYWAgAGDVqFOLi4mBraytxsr7FwkJERGSkysvLoVQqcf/+fZiZmSEyMhLTp08fEEtAv8bCQkREZGSEEDh+/Diys7Oh0Wjg5OQEhUKBoUOHSh1NMiwsRERERqSpqQnbt2/HpUuXAABBQUFYtGgRbGxsJE4mLRYWIiIiI1FWVoaUlBTU1NTAzMwM8+bNw7Rp0wbkEtCvsbAQERFJTAiBo0ePIicnB1qtFi4uLlAoFPDy8pI6mtFgYSEiIpJQY2MjMjIycOXKFQDAmDFjEBsbC2tra4mTGRcWFiIiIoncvHkTSqUSKpUK5ubmiI6OxpQpU7gE1AEWFiIioj4mhMDhw4exb98+CCEwaNAgJCUlwcPDQ+poRouFhYiIqA81NDQgPT0dRUVFAIDx48cjJiYGcrlc4mTGjYWFiIioj9y4cQMpKSmoq6uDhYUF5s+fj0mTJnEJqAtYWIiIiHqZVqvFoUOHkJeXByEEhgwZgqSkJLi5uUkdrd9gYSEiIupF9fX1SE1NRUlJCQBg4sSJWLBgAaysrCRO1r+wsBAREfWSa9euITU1FQ0NDbC0tMSCBQsQHBwsdax+iYWFiIioh2m1Whw4cAAHDx4EALi5uUGhUMDV1VXiZP2XmSGD16xZA5lMpncJCgrqdPzs2bPbjZfJZIiJidGNee6559rdHh0d3f0ZERERSaiurg7/9V//pSsrkyZNwgsvvMCy8ogMPsIyduxY5OTk/M8DWHT+EKmpqWhpadFdr66uxsSJE5GUlKQ3Ljo6Gt98843uOt/aRURE/VFRURHS0tLQ2NgIKysrLFy4EOPHj5c6lkkwuLBYWFh0+YNtBg0apHd927ZtsLW1bVdY5HI5PyyHiIj6La1Wi/379+PQoUMAAHd3dyQlJWHw4MESJzMdBi0JAcDVq1fh5eUFf39/LFu2DKWlpV2+7+bNm7FkyRLY2dnpbc/Ly4ObmxsCAwPxyiuvoLq6+oGPo1aroVKp9C5ERERSUKlU2Lp1q66sTJ06FS+88ALLSg+TCSFEVwdnZmaivr4egYGBuH37NtauXYtbt27h/PnzcHBweOB9jx8/jpCQEBw7dgzTpk3Tbf/lqIufnx+Ki4vxzjvvwN7eHvn5+TA3N+/wsdasWYO1a9e2215bWwtHR8euToeIiOiRXLlyBenp6WhqaoJcLkdsbCzGjh0rdax+Q6VSwcnJqUuv3wYVll+rqamBr68v/vSnP2HFihUPHPvSSy8hPz8fZ8+efeC4a9euYcSIEcjJyUFERESHY9RqNdRqte66SqWCj48PCwsREfUJjUaD3Nxc5OfnAwA8PT2hUCjanQpBD2ZIYXmktzU7Oztj1KhRuu9D6ExDQwO2bduG999//6GP6e/vjyFDhqCoqKjTwiKXy3liLhERSaKmpgZKpRK3bt0CAEybNg1z58594JtQ6NE90v+79fX1KC4uxjPPPPPAccnJyVCr1Xj66acf+phlZWWorq6Gp6fno0QjIiLqcZcuXUJGRgaam5thbW2NRYsWYfTo0VLHGhAMOun2jTfewIEDB3D9+nUcOXIEixcvhrm5OZYuXQoAWL58Od5+++1299u8eTPi4+PbnYBUX1+Pf/u3f8PRo0dx/fp15ObmIi4uDgEBAYiKinqEaREREfUcjUaDrKwsfP/992huboa3tzdeeukllpU+ZNARlrKyMixduhTV1dVwdXXFzJkzcfToUd2H4ZSWlsLMTL8DXb58GYcOHcLevXvbPZ65uTnOnj2LrVu3oqamBl5eXpg3bx4++OADLvkQEZFRuH//PpRKJcrLywEAoaGhiIiI6PSNIdQ7HumkW2NhyEk7REREXXXhwgVs374darUaNjY2iIuLQ2BgoNSxTEafnXRLRERkitra2rBnzx6cPHkSAODj44PExEQ4OTlJnGzgYmEhIiL6J9XV1VAqlaioqAAAzJgxA3PmzOESkMRYWIiIiP7h3Llz2LlzJ1paWmBra4vFixcjICBA6lgEFhYiIiK0trYiKysLp0+fBgD4+voiISGB50UaERYWIiIa0O7evYvk5GRUVVUBAB5//HGEh4e3e9crSYuFhYiIBqyffvoJu3btQmtrK+zs7JCQkAB/f3+pY1EHWFiIiGjAaWlpQWZmJgoKCgAAfn5+SEhIgL29vbTBqFMsLERENKBUVVVBqVTizp07kMlkCA8Px6xZs7gEZORYWIiIaEAQQuDMmTPIzMxEW1sb7O3tkZiYiOHDh0sdjbqAhYWIiEyeWq3Grl27cO7cOQDAiBEjsHjxYtjZ2UmcjLqKhYWIiExaRUUFlEolqqurIZPJ8MQTT2DGjBmQyWRSRyMDsLAQEZFJEkLg1KlTyMrKgkajgaOjIxITEzFs2DCpo1E3sLAQEZHJUavV2LFjBwoLCwEAI0eORHx8PGxtbSVORt3FwkJERCalvLwcSqUS9+/fh5mZGSIiIhAaGsoloH6OhYWIiEyCEALHjx9HdnY2NBoNnJycoFAoMHToUKmjUQ9gYSEion6vubkZ27dvx8WLFwEAQUFBWLRoEWxsbCRORj2FhYWIiPq1W7duQalUoqamBmZmZpg3bx6mTZvGJSATw8JCRET9khACR48eRU5ODrRaLVxcXKBQKODl5SV1NOoFLCxERNTvNDU1IT09HVeuXAEAjBkzBrGxsbC2tpY4GfUWFhYiIupXbt68CaVSCZVKBXNzc0RFRWHq1KlcAjJxLCxERNQvCCFw5MgR5ObmQgiBQYMGISkpCR4eHlJHoz7AwkJEREavoaEB6enpKCoqAgCMGzcOCxcuhFwulzgZ9RUWFiIiMmo3btxASkoK6urqYGFhgfnz52PSpElcAhpgWFiIiMgoabVaHDp0CHl5eRBCYMiQIVAoFHB3d5c6GkmAhYWIiIxOfX090tLScO3aNQDAxIkTsWDBAlhZWUmcjKTCwkJEREalpKQEqampqK+vh6WlJRYsWIDg4GCpY5HEWFiIiMgoaLVaHDhwAAcPHgQAuLq6IikpCa6urhInI2PAwkJERJKrq6tDamoqrl+/DgCYNGkS5s+fD0tLS2mDkdFgYSEiIkkVFxcjNTUVjY2NsLS0xMKFCzFhwgSpY5GRYWEhIiJJaLVa7N+/H4cOHQIAuLu7IykpCYMHD5Y4GRkjFhYiIupzKpUKKSkpKC0tBQBMmTIF0dHRsLDgyxJ1zMyQwWvWrIFMJtO7BAUFdTp+y5Yt7cb/+ouphBB477334OnpCRsbG0RGRuLq1avdmw0RERm9q1ev4ssvv0RpaSmsrKygUCiwcOFClhV6IIN/O8aOHYucnJz/eYCH/II5Ojri8uXLuuu//mTCDRs24NNPP8XWrVvh5+eHd999F1FRUbhw4QK/dZOIyIRoNBrs27cPR44cAQB4enpCoVBg0KBBEiej/sDgwmJhYWHQF03JZLJOxwsh8Mknn+D3v/894uLiAADffvst3N3dkZ6ejiVLlhgaj4iIjFBNTQ1SUlJQVlYGAJg2bRrmzp3LoyrUZQYtCQE/H8rz8vKCv78/li1bplt/7Ex9fT18fX3h4+ODuLg4FBYW6m4rKSlBRUUFIiMjdducnJwQEhKC/Pz8Th9TrVZDpVLpXYiIyDhdunQJGzduRFlZGeRyOZ588knMnz+fZYUMYlBhCQkJwZYtW5CVlYUvvvgCJSUlmDVrFurq6jocHxgYiK+//hoZGRn47//+b2i1WoSFhekadkVFBQC0+14Id3d33W0dWbduHZycnHQXHx8fQ6ZBRER9QKPRICsrC99//z2am5vh7e2Nl156CaNHj5Y6GvVDMiGE6O6da2pq4Ovriz/96U9YsWLFQ8e3trZi9OjRWLp0KT744AMcOXIEM2bMQHl5OTw9PXXjnnzySchkMnz//fcdPo5arYZardZdV6lU8PHxQW1tLRwdHbs7HSIi6iH379+HUqlEeXk5AGD69OmIjIyEubm5xMnImKhUKjg5OXXp9fuRjsc5Oztj1KhRKCoq6tJ4S0tLTJo0STf+l3NbKisr9QpLZWXlA783Qi6XQy6Xdz84ERH1mgsXLmD79u1Qq9WwtrZGfHw8AgMDpY5F/ZzB57D8s/r6ehQXF+uVjQfRaDQ4d+6cbryfnx88PDyQm5urG6NSqXDs2DGEhoY+SjQiIupjbW1t2L17N5KTk6FWq+Hj44OXX36ZZYV6hEFHWN544w3ExsbC19cX5eXlWL16NczNzbF06VIAwPLly+Ht7Y1169YBAN5//31Mnz4dAQEBqKmpwR/+8AfcuHEDL7zwAoCf30G0cuVKfPjhhxg5cqTubc1eXl6Ij4/v2ZkSEVGvqa6uhlKp1J1/OGPGDMyZM4dLQNRjDCosZWVlWLp0Kaqrq+Hq6oqZM2fi6NGjum/SLC0thZnZ/xy0uX//Pn7729+ioqICLi4umDJlCo4cOYIxY8boxqxatQoNDQ148cUXUVNTg5kzZyIrK4ufwUJE1E+cP38eO3bsQEtLC2xtbbF48WIEBARIHYtMzCOddGssDDlph4iIekZrayuysrJw+vRpAICvry8SEhL4d5i6rM9OuiUiooHp7t27SE5ORlVVFQBg1qxZmD17tt5RdqKexMJCREQG+emnn7Br1y60trbCzs4OCQkJ8Pf3lzoWmTgWFiIi6pKWlhZkZmaioKAAwM/v9Fy8eDEcHBykDUYDAgsLERE9VFVVFZRKJe7cuQOZTIbw8HDMmjWLS0DUZ1hYiIioU0IIFBQUYPfu3Whra4O9vT0SExMxfPhwqaPRAMPCQkREHWppacGuXbtw9uxZAMCIESOwePFi2NnZSZyMBiIWFiIiaqeyshLJycmorq6GTCbDnDlzMHPmTMhkMqmj0QDFwkJERDpCCJw6dQpZWVnQaDRwcHCAQqHAsGHDpI5GAxwLCxERAQDUajV27NiBwsJCAMDIkSMRHx8PW1tbiZMRsbAQERGA27dvQ6lU4t69ezAzM0NERARCQ0O5BERGg4WFiGgAE0LgxIkT2Lt3LzQaDZycnKBQKDB06FCpoxHpYWEhIhqgmpubsX37dly8eBEAEBgYiLi4ONjY2EicjKg9FhYiogHo1q1bUCqVqKmpgZmZGebOnYuQkBAuAZHRYmEhIhpAhBA4evQocnJyoNVq4ezsDIVCAW9vb6mjET0QCwsR0QDR1NSEjIwMXL58GQAwevRoLFq0CNbW1hInI3o4FhYiogHg5s2bUCqVUKlUMDc3R1RUFKZOncolIOo3WFiIiEyYEAJHjhxBbm4uhBAYNGgQFAoFPD09pY5GZBAWFiIiE9XY2Ii0tDQUFRUBAMaNG4eFCxdCLpdLnIzIcCwsREQm6MaNG0hJSUFdXR0sLCwQHR2NyZMncwmI+i0WFiIiEyKEwI8//oi8vDwIITB48GAkJSXB3d1d6mhEj4SFhYjIRNTX1yMtLQ3Xrl0DAEyYMAExMTGwsrKSOBnRo2NhISIyASUlJUhNTUV9fT0sLCwQExOD4OBgqWMR9RgWFiKifkyr1eLgwYM4cOAAAMDV1RVJSUlwdXWVOBlRz2JhISLqp+rq6pCamorr168DAIKDg7FgwQJYWlpKG4yoF7CwEBH1Q8XFxUhLS0NDQwMsLS2xcOFCTJgwQepYRL2GhYWIqB/RarXIy8vDjz/+CABwd3eHQqHAkCFDJE5G1LtYWIiI+gmVSoWUlBSUlpYCAKZMmYKoqCguAdGAwMJCRNQPXL16FWlpaWhqaoKVlRViY2Mxbtw4qWMR9RkWFiIiI6bRaLBv3z4cOXIEAODp6QmFQoFBgwZJnIyob7GwEBEZqdraWiiVSpSVlQEApk2bhrlz58LCgn+6aeDhbz0RkRG6fPky0tPT0dzcDLlcjri4OIwePVrqWESSMTNk8Jo1ayCTyfQuQUFBnY7ftGkTZs2aBRcXF7i4uCAyMhLHjx/XG/Pcc8+1e8zo6OjuzYaIqJ/TaDTIysrCtm3b0NzcDC8vL7z00kssKzTgGXyEZezYscjJyfmfB3jAocm8vDwsXboUYWFhsLa2xkcffYR58+ahsLAQ3t7eunHR0dH45ptvdNf51edENBDdv38fSqUS5eXlAIDp06cjMjIS5ubmEicjkp7BhcXCwgIeHh5dGvu3v/1N7/pf//pXpKSkIDc3F8uXL9dtl8vlXX5MIiJTdPHiRWRkZECtVsPa2hrx8fEIDAyUOhaR0TBoSQj4+a11Xl5e8Pf3x7Jly3SfB9AVjY2NaG1tbXd2e15eHtzc3BAYGIhXXnkF1dXVD3wctVoNlUqldyEi6o/a2tqwe/du/PDDD1Cr1Rg6dChefvlllhWiX5EJIURXB2dmZqK+vh6BgYG4ffs21q5di1u3buH8+fNwcHB46P3/9//+39izZw8KCwthbW0NANi2bRtsbW3h5+eH4uJivPPOO7C3t0d+fn6nh0HXrFmDtWvXttteW1sLR0fHrk6HiEhS9+7dQ3JyMioqKgAAYWFheOKJJ7gERAOGSqWCk5NTl16/DSosv1ZTUwNfX1/86U9/wooVKx44dv369diwYQPy8vIe+H0X165dw4gRI5CTk4OIiIgOx6jVaqjVat11lUoFHx8fFhYi6jfOnz+PHTt2oKWlBba2toiPj8fIkSOljkXUpwwpLI/0tmZnZ2eMGjUKRUVFDxz38ccfY/369cjJyXnol3P5+/tjyJAhKCoq6rSwyOVynphLRP1Sa2sr9uzZg1OnTgEAhg0bhsTERP5ji+ghHqmw1NfXo7i4GM8880ynYzZs2IB///d/x549ezB16tSHPmZZWRmqq6vh6en5KNGIiIzO3bt3oVQqUVlZCQCYNWsWZs+eDTMzg08nJBpwDCosb7zxBmJjY+Hr64vy8nKsXr0a5ubmWLp0KQBg+fLl8Pb2xrp16wAAH330Ed577z189913GD58uG6d1t7eHvb29qivr8fatWuRmJgIDw8PFBcXY9WqVQgICEBUVFQPT5WISDpnz57Fzp070draCjs7OyxevBgjRoyQOhZRv2FQYSkrK8PSpUtRXV0NV1dXzJw5E0ePHoWrqysAoLS0VO9fCl988QVaWlqgUCj0Hmf16tVYs2YNzM3NcfbsWWzduhU1NTXw8vLCvHnz8MEHH3DJh4hMQmtrK3bv3o2CggIAwPDhw5GQkNClNyoQ0f94pJNujYUhJ+0QEfWVqqoqKJVK3LlzBwAQHh6Oxx9/nEtARP/QZyfdEhFRe0IIFBQUYPfu3Whra4O9vT0SEhLg5+cndTSifouFhYioB7W0tGDXrl04e/YsgJ/f+ZiQkAA7OzuJkxH1bywsREQ9pLKyEsnJyaiuroZMJsOcOXMwc+ZMyGQyqaMR9XssLEREj0gIgdOnTyMrKwttbW1wcHBAYmIifH19pY5GZDJYWIiIHoFarcbOnTtx/vx5AEBAQAAWL14MW1tbiZMRmRYWFiKibrp9+zaUSiXu3bsHMzMzPPHEEwgLC+MSEFEvYGEhIjKQEAInTpzA3r17odFo4OTkhMTERPj4+EgdjchksbAQERmgubkZ27dvx8WLFwEAgYGBiIuLg42NjcTJiEwbCwsRURfdunULSqUSNTU1MDMzw9y5cxESEsIlIKI+wMJCRPQQQggcO3YM2dnZ0Gq1cHZ2hkKhgLe3t9TRiAYMFhYiogdoampCRkYGLl++DAAYPXo0Fi1aBGtra4mTEQ0sLCxERJ24efMmUlJSUFtbC3Nzc8ybNw+PPfYYl4CIJMDCQkT0K0IIHDlyBPv27YNWq4WLiwuSkpLg6ekpdTSiAYuFhYjonzQ2NiI9PR1Xr14FAIwdOxaxsbGQy+USJyMa2FhYiIj+4caNG0hJSUFdXR0sLCwQHR2NyZMncwmIyAiwsBDRgCeEwKFDh7B//34IITB48GAkJSXB3d1d6mhE9A8sLEQ0oDU0NCAtLQ3FxcUAgAkTJiAmJgZWVlYSJyOif8bCQkQDVklJCVJTU1FfXw8LCwssWLAAwcHBXAIiMkIsLEQ04Gi1Whw8eBAHDx6EEAKurq5QKBRwc3OTOhoRdYKFhYgGlLq6OqSlpaGkpAQAEBwcjAULFsDS0lLiZET0ICwsRDRgFBcXIy0tDQ0NDbC0tERMTAwmTpwodSwi6gIWFiIyeVqtFnl5efjxxx8BAG5ubkhKSsKQIUMkTkZEXcXCQkQmTaVSISUlBaWlpQCAKVOmICoqiktARP0MCwsRmayrV68iPT0djY2NsLKyQmxsLMaNGyd1LCLqBhYWIjI5Go0G+/btw5EjRwAAHh4eSEpKwqBBgyRORkTdxcJCRCaltrYWKSkpuHnzJgDgsccew7x582BhwT93RP0Zn8FEZDIuX76M9PR0NDc3Qy6XY9GiRRgzZozUsYioB7CwEFG/p9FokJOTg6NHjwIAvLy8oFAo4OLiInEyIuopLCxE1K/dv38fKSkpuHXrFgAgJCQEc+fOhbm5ucTJiKgnsbAQUb918eJFZGRkQK1Ww9raGvHx8QgMDJQ6FhH1AhYWIup32trasHfvXpw4cQIAMHToUCQmJsLZ2VnaYETUa8wMGbxmzRrIZDK9S1BQ0APvk5ycjKCgIFhbW2P8+PHYvXu33u1CCLz33nvw9PSEjY0NIiMjcfXqVcNnQkQDwr179/D111/rykpYWBiee+45lhUiE2dQYQGAsWPH4vbt27rLoUOHOh175MgRLF26FCtWrMCZM2cQHx+P+Ph4nD9/Xjdmw4YN+PTTT/Hll1/i2LFjsLOzQ1RUFJqbm7s3IyIyWYWFhdi4cSNu374NGxsb/K//9b94vgrRACETQoiuDl6zZg3S09NRUFDQpfFPPfUUGhoasHPnTt226dOnIzg4GF9++SWEEPDy8sLvfvc7vPHGGwB+/gwFd3d3bNmyBUuWLOnSz1GpVHByckJtbS0cHR27Oh0i6idaW1uxZ88enDp1CgAwbNgwJCYm8vlO1M8Z8vpt8BGWq1evwsvLC/7+/li2bJnu+zk6kp+fj8jISL1tUVFRyM/PBwCUlJSgoqJCb4yTkxNCQkJ0YzqiVquhUqn0LkRkmu7evYvNmzfrysqsWbPw7LPPsqwQDTAGnXQbEhKCLVu2IDAwELdv38batWsxa9YsnD9/Hg4ODu3GV1RUwN3dXW+bu7s7KioqdLf/sq2zMR1Zt24d1q5da0h0IuqHzp49i507d6K1tRW2trZISEjAiBEjpI5FRBIwqLDMnz9f998TJkxASEgIfH198cMPP2DFihU9Hq4zb7/9Nl5//XXddZVKBR8fnz77+UTUu1pbW7F7927d8vPw4cORkJDQ4T+MiGhgeKS3NTs7O2PUqFEoKirq8HYPDw9UVlbqbausrISHh4fu9l+2eXp66o0JDg7u9OfK5XLI5fJHiU5ERurOnTtITk7GnTt3AADh4eF4/PHHYWZm8Ao2EZmQR/oLUF9fj+LiYr2y8c9CQ0ORm5urty07OxuhoaEAAD8/P3h4eOiNUalUOHbsmG4MEQ0cBQUF+Oqrr3Dnzh3Y29tj+fLlmD17NssKERl2hOWNN95AbGwsfH19UV5ejtWrV8Pc3BxLly4FACxfvhze3t5Yt24dAOC1115DeHg4/vjHPyImJgbbtm3DyZMn8dVXXwEAZDIZVq5ciQ8//BAjR46En58f3n33XXh5eSE+Pr5nZ0pERqulpQW7d+/GTz/9BADw9/fH4sWLYW9vL3EyIjIWBhWWsrIyLF26FNXV1XB1dcXMmTNx9OhRuLq6AgBKS0v1/iUUFhaG7777Dr///e/xzjvvYOTIkUhPT8e4ceN0Y1atWoWGhga8+OKLqKmpwcyZM5GVlQVra+semiIRGbPKykoolUrcvXsXMpkMs2fPxqxZsyCTyaSORkRGxKDPYTFW/BwWov5HCIHTp08jKysLbW1tcHBwQGJiInx9faWORkR9xJDXb36XEBH1ObVajZ07d+o+9TogIADx8fGws7OTOBkRGSsWFiLqU7dv34ZSqcS9e/cgk8kQERGBsLAwLgER0QOxsBBRnxBC4OTJk9izZw80Gg0cHR2hUCj4GUpE1CUsLETU65qbm7Fjxw5cuHABABAYGIi4uDjY2NhInIyI+gsWFiLqVbdu3YJSqURNTQ3MzMwQGRmJ6dOncwmIiAzCwkJEvUIIgWPHjiE7OxtarRbOzs5QKBTw9vaWOhoR9UMsLETU45qampCRkYHLly8DAEaPHo1Fixbx85WIqNtYWIioR5WVlUGpVKK2thbm5uaYN28eHnvsMS4BEdEjYWEhoh4hhEB+fj5yc3Oh1Wrh4uKCpKSkTr9rjIjIECwsRPTIGhsbkZ6ejqtXrwIAxo4di9jYWH6rOhH1GBYWInokpaWlSElJgUqlgrm5OebPn4/JkydzCYiIehQLCxF1ixAChw4dwv79+yGEwODBg5GUlAR3d3epoxGRCWJhISKDNTQ0IC0tDcXFxQCACRMmICYmBlZWVhInIyJTxcJCRAa5fv06UlJSUF9fDwsLCyxYsADBwcFcAiKiXsXCQkRdotVq8eOPP+LAgQMQQsDV1RUKhQJubm5SRyOiAYCFhYgeqr6+HqmpqSgpKQEABAcHY/78+VwCIqI+w8JCRA907do1pKamoqGhAZaWloiJicHEiROljkVEAwwLCxF1SKvVIi8vDz/++CMAwM3NDUlJSRgyZIjEyYhoIGJhIaJ2VCoVUlNTcePGDQDA5MmTER0dDUtLS4mTEdFAxcJCRHqKioqQlpaGxsZGWFlZITY2FuPGjZM6FhENcCwsRAQA0Gg02L9/Pw4fPgwA8PDwgEKhwODBgyVORkTEwkJEAGpra5GSkoKbN28CAB577DHMmzcPFhb8E0FExoF/jYgGuMuXLyMjIwNNTU2Qy+VYtGgRxowZI3UsIiI9LCxEA5RGo0FOTg6OHj0KAPDy8oJCoYCLi4vEyYiI2mNhIRqA7t+/j5SUFNy6dQsAEBISgrlz58Lc3FziZEREHWNhIRpgLl68iIyMDKjValhbWyMuLg5BQUFSxyIieiAWFqIBoq2tDdnZ2Th+/DgAYOjQoUhMTISzs7O0wYiIuoCFhWgAuHfvHpRKJW7fvg0ACAsLwxNPPMElICLqN1hYiExcYWEhtm/fjpaWFtjY2CA+Ph6jRo2SOhYRkUFYWIhMVFtbG7KysnDq1CkAwLBhw5CYmAhHR0eJkxERGY6FhcgEVVdXIzk5GZWVlQCAmTNnYs6cOTAzM5M4GRFR9zzSX6/169dDJpNh5cqVnY6ZPXs2ZDJZu0tMTIxuzHPPPdfu9ujo6EeJRjRgnT17Fhs3bkRlZSVsbW3x9NNPIyIigmWFiPq1bh9hOXHiBDZu3IgJEyY8cFxqaipaWlp016urqzFx4kQkJSXpjYuOjsY333yjuy6Xy7sbjWhAam1tRWZmJs6cOQMAGD58OBISEuDg4CBxMiKiR9etwlJfX49ly5Zh06ZN+PDDDx84dtCgQXrXt23bBltb23aFRS6Xw8PDoztxiAa8O3fuQKlUoqqqCgAQHh6Oxx9/nEdViMhkdOuv2auvvoqYmBhERkYafN/NmzdjyZIlsLOz09uel5cHNzc3BAYG4pVXXkF1dXWnj6FWq6FSqfQuRANVQUEBNm3ahKqqKtjb22P58uWYPXs2ywoRmRSDj7Bs27YNp0+fxokTJwz+YcePH8f58+exefNmve3R0dFISEiAn58fiouL8c4772D+/PnIz8/v8HMi1q1bh7Vr1xr884lMSUtLC3bv3o2ffvoJAODv74/FixfD3t5e4mRERD1PJoQQXR188+ZNTJ06FdnZ2bpzV2bPno3g4GB88sknD73/Sy+9hPz8fJw9e/aB465du4YRI0YgJycHERER7W5Xq9VQq9W66yqVCj4+PqitreVbNmlAqKyshFKpxN27dyGTyTB79mzMnDmTR1WIqF9RqVRwcnLq0uu3QUdYTp06haqqKkyePFm3TaPR4ODBg/jss8+gVqs7/eTMhoYGbNu2De+///5Df46/vz+GDBmCoqKiDguLXC7nSbk0IAkhcObMGWRmZqKtrQ0ODg5ITEyEr6+v1NGIiHqVQYUlIiIC586d09v2/PPPIygoCG+++eYDP+Y7OTkZarUaTz/99EN/TllZGaqrq+Hp6WlIPCKTplarsXPnTpw/fx4AEBAQgPj4+HbngxERmSKDCouDgwPGjRunt83Ozg6DBw/WbV++fDm8vb2xbt06vXGbN29GfHw8Bg8erLe9vr4ea9euRWJiIjw8PFBcXIxVq1YhICAAUVFR3ZkTkcmpqKhAcnIy7t27B5lMhoiICISFhUEmk0kdjYioT/T4J92Wlpa2W0e/fPkyDh06hL1797Ybb25ujrNnz2Lr1q2oqamBl5cX5s2bhw8++IDLPjTgCSFw8uRJ7NmzBxqNBo6OjlAoFPDx8ZE6GhFRnzLopFtjZchJO0T9RXNzM3bs2IELFy4AAEaNGoW4uDjY2tpKnIyIqGf02km3RNQ3ysvLoVQqcf/+fZiZmSEyMhLTp0/nEhARDVgsLERGRAiB48ePY+/evdBqtXB2doZCoYC3t7fU0YiIJMXCQmQkmpqasH37dly6dAkAEBQUhLi4OFhbW0ucjIhIeiwsREagrKwMSqUStbW1MDc3x7x58/DYY49xCYiI6B9YWIgkJIRAfn4+cnNzodVq4eLiAoVCAS8vL6mjEREZFRYWIok0NjYiPT0dV69eBQCMHTsWCxcu5BIQEVEHWFiIJFBaWoqUlBSoVCqYm5sjOjoaU6ZM4RIQEVEnWFiI+pAQAocPH8a+ffsghMDgwYOhUCjg4eEhdTQiIqPGwkLURxoaGpCWlobi4mIAwPjx4xETE8NPdCYi6gIWFqI+cP36daSkpKC+vh4WFhZYsGABgoODuQRERNRFLCxEvUir1eLHH3/EgQMHIITAkCFDkJSUBDc3N6mjERH1KywsRL2kvr4eqampKCkpAQAEBwdj/vz5sLKykjgZEVH/w8JC1AuuXbuG1NRUNDQ0wNLSEjExMZg4caLUsYiI+i0WFqIepNVqceDAARw8eBAA4ObmhqSkJAwZMkTiZERE/RsLC1EPqaurQ0pKCm7cuAEAmDx5MqKjo2FpaSlxMiKi/o+FhagHFBUVIS0tDY2NjbCyssLChQsxfvx4qWMREZkMFhaiR6DVarFv3z4cPnwYAODh4QGFQoHBgwdLnIyIyLSwsBB1U21tLVJSUnDz5k0AwNSpUxEVFQULCz6tiIh6Gv+yEnXDlStXkJ6ejqamJsjlcixatAhjxoyROhYRkcliYSEygEajQW5uLvLz8wEAXl5eUCgUcHFxkTgZEZFpY2Eh6qKamhoolUrcunULABASEoLIyEguARER9QH+pSXqgkuXLiEjIwPNzc2wtrZGXFwcgoKCpI5FRDRgsLAQPUBbWxuys7Nx/PhxAIC3tzcUCgWcnZ2lDUZENMCwsBB14t69e1Aqlbh9+zYAIDQ0FBERETA3N5c4GRHRwMPCQtSBwsJC7NixA2q1GjY2NoiPj8eoUaOkjkVENGCxsBD9k7a2NuzZswcnT54EAPj4+CAxMRFOTk4SJyMiGthYWIj+obq6GsnJyaisrAQAzJw5E3PmzIGZmZnEyYiIiIWFCMC5c+ewc+dOtLS0wNbWFosXL0ZAQIDUsYiI6B9YWGhAa21tRWZmJs6cOQMAGD58OBISEuDg4CBxMiIi+mcsLDRg3blzB0qlElVVVQCAxx9/HOHh4VwCIiIyQiwsNCAVFBRg9+7daG1thZ2dHRISEuDv7y91LCIi6sQj/VNy/fr1kMlkWLlyZadjtmzZAplMpnextrbWGyOEwHvvvQdPT0/Y2NggMjISV69efZRoRB1qaWlBeno6MjIy0NraCj8/P7z88sssK0RERq7bR1hOnDiBjRs3YsKECQ8d6+joiMuXL+uuy2Qyvds3bNiATz/9FFu3boWfnx/effddREVF4cKFC+3KDVF3VVVVITk5GXfv3oVMJsPs2bMxc+ZMLgEREfUD3Sos9fX1WLZsGTZt2oQPP/zwoeNlMhk8PDw6vE0IgU8++QS///3vERcXBwD49ttv4e7ujvT0dCxZsqQ7EYl0hBA4c+YMMjMz0dbWBgcHByQkJGD48OFSRyMioi7q1j8tX331VcTExCAyMrJL4+vr6+Hr6wsfHx/ExcWhsLBQd1tJSQkqKir0HsvJyQkhISHIz8/v8PHUajVUKpXehagjarUaaWlp2LFjB9ra2hAQEICXXnqJZYWIqJ8x+AjLtm3bcPr0aZw4caJL4wMDA/H1119jwoQJqK2txccff4ywsDAUFhZi6NChqKioAAC4u7vr3c/d3V1326+tW7cOa9euNTQ6DTAVFRVQKpWorq6GTCbDE088gRkzZrRbkiQiIuNnUGG5efMmXnvtNWRnZ3f53JLQ0FCEhobqroeFhWH06NHYuHEjPvjgA8PS/sPbb7+N119/XXddpVLBx8enW49FpkcIgZMnT2LPnj3QaDRwdHREYmIihg0bJnU0IiLqJoMKy6lTp1BVVYXJkyfrtmk0Ghw8eBCfffYZ1Gr1Q7/J1tLSEpMmTUJRUREA6M5tqayshKenp25cZWUlgoODO3wMuVwOuVxuSHQaIJqbm7Fz507dsuOoUaMQFxcHW1tbiZMREdGjMKiwRERE4Ny5c3rbnn/+eQQFBeHNN998aFkBfi44586dw4IFCwAAfn5+8PDwQG5urq6gqFQqHDt2DK+88ooh8WiAKy8vh1KpxP3792FmZobIyEhMnz6dS0BERCbAoMLi4OCAcePG6W2zs7PD4MGDdduXL18Ob29vrFu3DgDw/vvvY/r06QgICEBNTQ3+8Ic/4MaNG3jhhRcAQPc5Lh9++CFGjhype1uzl5cX4uPje2CKZOqEEDh+/Diys7Oh0Wjg5OQEhUKBoUOHSh2NiIh6SI9/0m1paane51rcv38fv/3tb1FRUQEXFxdMmTIFR44cwZgxY3RjVq1ahYaGBrz44ouoqanBzJkzkZWVxc9goYdqamrC9u3bcenSJQBAUFAQFi1aBBsbG4mTERFRT5IJIYTUIR6VSqWCk5MTamtr4ejoKHUc6iNlZWVISUlBTU0NzM3NMXfuXEybNo1LQERE/YQhr9/8LiHqd4QQOHr0KHJycqDVauHi4gKFQgEvLy+poxERUS9hYaF+pbGxERkZGbhy5QoAYMyYMYiNjeXyIRGRiWNhoX6jtLQUKSkpUKlUMDc3R3R0NKZMmcIlICKiAYCFhYyeEAKHDx/Gvn37IITAoEGDkJSU1On3UxERkelhYSGj1tDQgPT0dN0HDY4fPx4xMTH84EAiogGGhYWM1o0bN5CSkoK6ujpYWFhg/vz5mDRpEpeAiIgGIBYWMjparRaHDh1CXl4ehBAYMmQIkpKS4ObmJnU0IiKSCAsLGZX6+nqkpqaipKQEADBx4kQsWLAAVlZWEicjIiIpsbCQ0bh27RpSU1PR0NAAS0tLLFiwoNMvwCQiooGFhYUkp9VqceDAARw8eBAA4ObmBoVCAVdXV4mTERGRsWBhIUnV1dUhNTUV169fBwBMmjQJ8+fPh6WlpbTBiIjIqLCwkGSKioqQlpaGxsZGWFlZYeHChRg/frzUsYiIyAixsFCf02q12LdvHw4fPgwAcHd3R1JSEgYPHixxMiIiMlYsLNSnamtrkZKSgps3bwIApk6diqioKFhY8FeRiIg6x1cJ6jNXrlxBeno6mpqaIJfLERsbi7Fjx0odi4iI+gEWFup1Go0Gubm5yM/PBwB4enpCoVBg0KBBEicjIqL+goWFelVNTQ2USiVu3boFAJg2bRrmzp3LJSAiIjIIXzWo11y6dAkZGRlobm6GtbU14uLiEBQUJHUsIiLqh1hYqMdpNBpkZ2fj2LFjAABvb28oFAo4OztLG4yIiPotFhbqUffv34dSqUR5eTkAIDQ0FBERETA3N5c4GRER9WcsLNRjLly4gO3bt0OtVsPGxgbx8fEYNWqU1LGIiMgEsLDQI2tra8OePXtw8uRJAICPjw8SExPh5OQkcTIiIjIVLCz0SKqrq6FUKlFRUQEAmDFjBubMmcMlICIi6lEsLNRt586dw86dO9HS0gJbW1ssXrwYAQEBUsciIiITxMJCBmttbUVWVhZOnz4NAPD19UViYiIcHBwkTkZERKaKhYUMcvfuXSQnJ6OqqgoA8PjjjyM8PBxmZmYSJyMiIlPGwkJd9tNPP2HXrl1obW2FnZ0dEhIS4O/vL3UsIiIaAFhY6KFaWlqQmZmJgoICAICfnx8SEhJgb28vbTAiIhowWFjogaqqqqBUKnHnzh3IZDKEh4dj1qxZXAIiIqI+xcJCHRJC4MyZM8jMzERbWxvs7e2RmJiI4cOHSx2NiIgGIBYWaketVmPXrl04d+4cAGDEiBFYvHgx7OzsJE5GREQD1SMd11+/fj1kMhlWrlzZ6ZhNmzZh1qxZcHFxgYuLCyIjI3H8+HG9Mc899xxkMpneJTo6+lGiUTdVVFRg06ZNOHfuHGQyGSIiIrBs2TKWFSIiklS3j7CcOHECGzduxIQJEx44Li8vD0uXLkVYWBisra3x0UcfYd68eSgsLIS3t7duXHR0NL755hvddblc3t1o1A1CCJw6dQpZWVnQaDRwdHREYmIihg0bJnU0IiKi7hWW+vp6LFu2DJs2bcKHH374wLF/+9vf9K7/9a9/RUpKCnJzc7F8+XLddrlcDg8Pj+7EoUekVquxY8cOFBYWAgBGjRqFuLg42NraSpyMiIjoZ91aEnr11VcRExODyMhIg+/b2NiI1tZWDBo0SG97Xl4e3NzcEBgYiFdeeQXV1dWdPoZarYZKpdK7UPeUl5dj48aNKCwshJmZGebOnYslS5awrBARkVEx+AjLtm3bcPr0aZw4caJbP/DNN9+El5eXXtmJjo5GQkIC/Pz8UFxcjHfeeQfz589Hfn5+h1+it27dOqxdu7ZbP59+JoTA8ePHkZ2dDY1GAycnJygUCgwdOlTqaERERO3IhBCiq4Nv3ryJqVOnIjs7W3fuyuzZsxEcHIxPPvnkofdfv349NmzYgLy8vAee+3Lt2jWMGDECOTk5iIiIaHe7Wq2GWq3WXVepVPDx8UFtbS0cHR27Op0Bq7m5Gdu3b8fFixcBAEFBQVi0aBFsbGwkTkZERAOJSqWCk5NTl16/DTrCcurUKVRVVWHy5Mm6bRqNBgcPHsRnn30GtVrd4RERAPj444+xfv165OTkPPREXX9/fwwZMgRFRUUdFha5XM6Tcrvp1q1bUCqVqKmpgZmZGebNm4dp06ZBJpNJHY2IiKhTBhWWiIgI3Wdz/OL5559HUFAQ3nzzzU7LyoYNG/Dv//7v2LNnD6ZOnfrQn1NWVobq6mp4enoaEo8eQAiBo0ePIicnB1qtFi4uLlAoFPDy8pI6GhER0UMZVFgcHBwwbtw4vW12dnYYPHiwbvvy5cvh7e2NdevWAQA++ugjvPfee/juu+8wfPhwVFRUAADs7e1hb2+P+vp6rF27FomJifDw8EBxcTFWrVqFgIAAREVF9cQcB7ympiakp6fjypUrAIAxY8YgNjYW1tbWEicjIiLqmh7/pNvS0lK975n54osv0NLSAoVCoTdu9erVWLNmDczNzXH27Fls3boVNTU18PLywrx58/DBBx9w2acH3Lx5E0qlEiqVCubm5oiKisLUqVO5BERERP2KQSfdGitDTtoZKIQQOHLkCHJzcyGEwKBBg5CUlMTPuiEiIqPRayfdUv/Q0NCA9PR0FBUVAQDGjRuHhQsX8ogVERH1WywsJubGjRtISUlBXV0dLCwsMH/+fEyaNIlLQERE1K+xsJgIrVaLQ4cOIS8vD0IIDBkyBAqFAu7u7lJHIyIiemQsLCagvr4eaWlpuHbtGgBg4sSJWLBgAaysrCRORkRE1DNYWPq5kpISpKamor6+HpaWlliwYAGCg4OljkVERNSjWFj6Ka1WiwMHDuDgwYMAAFdXVyQlJcHV1VXiZERERD2PhaUfqqurQ2pqKq5fvw4AmDRpEubPnw9LS0tpgxEREfUSFpZ+pri4GKmpqWhsbISVlRUWLlyI8ePHSx2LiIioV7Gw9BNarRb79+/HoUOHAADu7u5ISkrC4MGDJU5GRETU+1hY+gGVSoWUlBSUlpYCAKZMmYLo6GhYWHD3ERHRwMBXPCN39epVpKWloampCVZWVli0aBHGjh0rdSwiIqI+xcJipDQaDfbt24cjR44AADw9PaFQKDBo0CCJkxEREfU9FhYjVFNTg5SUFJSVlQEApk2bhrlz53IJiIiIBiy+AhqZS5cuISMjA83NzbC2tsaiRYswevRoqWMRERFJioXFSGg0GmRnZ+PYsWMAAG9vbygUCjg7O0sbjIiIyAiwsBiB+/fvQ6lUory8HAAQGhqKiIgImJubS5yMiIjIOLCwSOzChQvYvn071Go1bGxsEBcXh8DAQKljERERGRUWFom0tbVh7969OHHiBADAx8cHiYmJcHJykjgZERGR8WFhkUB1dTWUSiUqKioAADNmzMCcOXO4BERERNQJFpY+dv78eezYsQMtLS2wtbXF4sWLERAQIHUsIiIio8bC0kdaW1uRlZWF06dPAwB8fX2RkJAAR0dHiZMREREZPxaWPnD37l0kJyejqqoKADBr1izMnj0bZmZmEicjIiLqH1hYetlPP/2EXbt2obW1FXZ2dkhISIC/v7/UsYiIiPoVFpZe0tLSgszMTBQUFAAA/Pz8kJCQAHt7e2mDERER9UMsLL2gqqoKSqUSd+7cgUwmQ3h4OGbNmsUlICIiom5iYelBQggUFBRg9+7daGtrg729PRITEzF8+HCpoxEREfVrLCw9pKWlBbt27cLZs2cBACNGjMDixYthZ2cncTIiIqL+j4WlB1RWViI5ORnV1dWQyWSYM2cOZs6cCZlMJnU0IiIik8DC8giEEDh16hSysrKg0Wjg4OAAhUKBYcOGSR2NiIjIpLCwdJNarcaOHTtQWFgIABg5ciTi4+Nha2srcTIiIiLTw8LSDbdv34ZSqcS9e/dgZmaGiIgIhIaGcgmIiIiolzzS+2zXr18PmUyGlStXPnBccnIygoKCYG1tjfHjx2P37t16twsh8N5778HT0xM2NjaIjIzE1atXHyVarxBC4Pjx49i8eTPu3bsHJycnPP/88wgLC2NZISIi6kXdLiwnTpzAxo0bMWHChAeOO3LkCJYuXYoVK1bgzJkziI+PR3x8PM6fP68bs2HDBnz66af48ssvcezYMdjZ2SEqKgrNzc3djdfjmpubkZycjMzMTGg0GgQGBuKll17C0KFDpY5GRERk8mRCCGHonerr6zF58mT8v//3//Dhhx8iODgYn3zySYdjn3rqKTQ0NGDnzp26bdOnT0dwcDC+/PJLCCHg5eWF3/3ud3jjjTcAALW1tXB3d8eWLVuwZMmSh+ZRqVRwcnJCbW1tr3yZ4K1bt6BUKlFTUwMzMzPMnTsXISEhPKpCRET0CAx5/e7WEZZXX30VMTExiIyMfOjY/Pz8duOioqKQn58PACgpKUFFRYXeGCcnJ4SEhOjG/JparYZKpdK79AYhBPLz8/H111+jpqYGzs7O+M1vfoPp06ezrBAREfUhg0+63bZtG06fPo0TJ050aXxFRQXc3d31trm7u6OiokJ3+y/bOhvza+vWrcPatWsNjW6w27dvY+/evQCAMWPGIDY2FtbW1r3+c4mIiEifQYXl5s2beO2115CdnS3pC/fbb7+N119/XXddpVLBx8enx3+Ol5cXwsPDYWdnh6lTp/KoChERkUQMKiynTp1CVVUVJk+erNum0Whw8OBBfPbZZ1Cr1TA3N9e7j4eHByorK/W2VVZWwsPDQ3f7L9s8PT31xgQHB3eYQy6XQy6XGxK922bPnt0nP4eIiIg6Z9A5LBERETh37hwKCgp0l6lTp2LZsmUoKChoV1YAIDQ0FLm5uXrbsrOzERoaCgDw8/ODh4eH3hiVSoVjx47pxhAREdHAZtARFgcHB4wbN05vm52dHQYPHqzbvnz5cnh7e2PdunUAgNdeew3h4eH44x//iJiYGGzbtg0nT57EV199BQC6z3H58MMPMXLkSPj5+eHdd9+Fl5cX4uPje2CKRERE1N/1+CfdlpaWwszsfw7chIWF4bvvvsPvf/97vPPOOxg5ciTS09P1is+qVavQ0NCAF198ETU1NZg5cyaysrJ4gisREREB6ObnsBib3v4cFiIiIup5vf45LERERER9iYWFiIiIjB4LCxERERk9FhYiIiIyeiwsREREZPRYWIiIiMjosbAQERGR0WNhISIiIqPHwkJERERGr8c/ml8Kv3xYr0qlkjgJERERddUvr9td+dB9kygsdXV1AAAfHx+JkxAREZGh6urq4OTk9MAxJvFdQlqtFuXl5XBwcIBMJuvRx1apVPDx8cHNmzdN8nuKTH1+gOnPkfPr/0x9jqY+P8D059hb8xNCoK6uDl5eXnpfnNwRkzjCYmZmhqFDh/bqz3B0dDTJX8JfmPr8ANOfI+fX/5n6HE19foDpz7E35vewIyu/4Em3REREZPRYWIiIiMjosbA8hFwux+rVqyGXy6WO0itMfX6A6c+R8+v/TH2Opj4/wPTnaAzzM4mTbomIiMi08QgLERERGT0WFiIiIjJ6LCxERERk9FhYiIiIyOgNqMJy8OBBxMbGwsvLCzKZDOnp6Q+9T15eHiZPngy5XI6AgABs2bKl3ZjPP/8cw4cPh7W1NUJCQnD8+PGeD99Fhs4xNTUVc+fOhaurKxwdHREaGoo9e/bojVmzZg1kMpneJSgoqBdn0TlD55eXl9cuu0wmQ0VFhd44Y9mHhs7vueee63B+Y8eO1Y0xpv23bt06PPbYY3BwcICbmxvi4+Nx+fLlh94vOTkZQUFBsLa2xvjx47F7926924UQeO+99+Dp6QkbGxtERkbi6tWrvTWNB+rOHDdt2oRZs2bBxcUFLi4uiIyMbPc72NG+jo6O7s2pdKg789uyZUu77NbW1npjjGUfdmd+s2fP7vB5GBMToxtjLPsPAL744gtMmDBB9yFwoaGhyMzMfOB9jOE5OKAKS0NDAyZOnIjPP/+8S+NLSkoQExODOXPmoKCgACtXrsQLL7yg94L+/fff4/XXX8fq1atx+vRpTJw4EVFRUaiqquqtaTyQoXM8ePAg5s6di927d+PUqVOYM2cOYmNjcebMGb1xY8eOxe3bt3WXQ4cO9Ub8hzJ0fr+4fPmyXn43Nzfdbca0Dw2d31/+8he9ed28eRODBg1CUlKS3jhj2X8HDhzAq6++iqNHjyI7Oxutra2YN28eGhoaOr3PkSNHsHTpUqxYsQJnzpxBfHw84uPjcf78ed2YDRs24NNPP8WXX36JY8eOwc7ODlFRUWhubu6Laenpzhzz8vKwdOlS7N+/H/n5+fDx8cG8efNw69YtvXHR0dF6+/Hvf/97b0+nne7MD/j5E1L/OfuNGzf0bjeWfdid+aWmpurN7fz58zA3N2/3PDSG/QcAQ4cOxfr163Hq1CmcPHkSTzzxBOLi4lBYWNjheKN5DooBCoBIS0t74JhVq1aJsWPH6m176qmnRFRUlO76tGnTxKuvvqq7rtFohJeXl1i3bl2P5u2OrsyxI2PGjBFr167VXV+9erWYOHFizwXrIV2Z3/79+wUAcf/+/U7HGOs+7M7+S0tLEzKZTFy/fl23zVj3nxBCVFVVCQDiwIEDnY558sknRUxMjN62kJAQ8dJLLwkhhNBqtcLDw0P84Q9/0N1eU1Mj5HK5+Pvf/947wQ3QlTn+Wltbm3BwcBBbt27VbXv22WdFXFxcLyR8NF2Z3zfffCOcnJw6vd2Y92F39t+f//xn4eDgIOrr63XbjHX//cLFxUX89a9/7fA2Y3kODqgjLIbKz89HZGSk3raoqCjk5+cDAFpaWnDq1Cm9MWZmZoiMjNSN6W+0Wi3q6uowaNAgve1Xr16Fl5cX/P39sWzZMpSWlkqUsHuCg4Ph6emJuXPn4vDhw7rtprYPN2/ejMjISPj6+uptN9b9V1tbCwDtft/+2cOehyUlJaioqNAb4+TkhJCQEKPYh12Z4681NjaitbW13X3y8vLg5uaGwMBAvPLKK6iuru7RrN3R1fnV19fD19cXPj4+7f41b8z7sDv7b/PmzViyZAns7Oz0thvj/tNoNNi2bRsaGhoQGhra4RhjeQ6ysDxARUUF3N3d9ba5u7tDpVKhqakJd+/ehUaj6XDMr8+R6C8+/vhj1NfX48knn9RtCwkJwZYtW5CVlYUvvvgCJSUlmDVrFurq6iRM2jWenp748ssvkZKSgpSUFPj4+GD27Nk4ffo0AJjUPiwvL0dmZiZeeOEFve3Guv+0Wi1WrlyJGTNmYNy4cZ2O6+x5+Mv++eV/jXEfdnWOv/bmm2/Cy8tL7wUgOjoa3377LXJzc/HRRx/hwIEDmD9/PjQaTW9E75Kuzi8wMBBff/01MjIy8N///d/QarUICwtDWVkZAOPdh93Zf8ePH8f58+fbPQ+Nbf+dO3cO9vb2kMvlePnll5GWloYxY8Z0ONZYnoMm8W3N1DO+++47rF27FhkZGXrneMyfP1/33xMmTEBISAh8fX3xww8/YMWKFVJE7bLAwEAEBgbqroeFhaG4uBh//vOf8V//9V8SJut5W7duhbOzM+Lj4/W2G+v+e/XVV3H+/HnJzqfpC92Z4/r167Ft2zbk5eXpnZi6ZMkS3X+PHz8eEyZMwIgRI5CXl4eIiIgezd1VXZ1faGio3r/ew8LCMHr0aGzcuBEffPBBb8fstu7sv82bN2P8+PGYNm2a3nZj23+BgYEoKChAbW0tlEolnn32WRw4cKDT0mIMeITlATw8PFBZWam3rbKyEo6OjrCxscGQIUNgbm7e4RgPD4++jPrItm3bhhdeeAE//PBDu0N/v+bs7IxRo0ahqKioj9L1rGnTpumym8o+FELg66+/xjPPPAMrK6sHjjWG/fcv//Iv2LlzJ/bv34+hQ4c+cGxnz8Nf9s8v/2ts+9CQOf7i448/xvr167F3715MmDDhgWP9/f0xZMgQyfZjd+b3C0tLS0yaNEmX3Rj3YXfm19DQgG3btnXpHwJS7z8rKysEBARgypQpWLduHSZOnIi//OUvHY41lucgC8sDhIaGIjc3V29bdna27l8KVlZWmDJlit4YrVaL3NzcTtcCjdHf//53PP/88/j73/+u9za8ztTX16O4uBienp59kK7nFRQU6LKbyj48cOAAioqKuvSHUsr9J4TAv/zLvyAtLQ379u2Dn5/fQ+/zsOehn58fPDw89MaoVCocO3ZMkn3YnTkCP7/L4oMPPkBWVhamTp360PFlZWWorq7u8/3Y3fn9M41Gg3PnzumyG9M+fJT5JScnQ61W4+mnn37oWKn2X2e0Wi3UanWHtxnNc7DHTt/tB+rq6sSZM2fEmTNnBADxpz/9SZw5c0bcuHFDCCHEW2+9JZ555hnd+GvXrglbW1vxb//2b+LixYvi888/F+bm5iIrK0s3Ztu2bUIul4stW7aICxcuiBdffFE4OzuLioqKPp+fEIbP8W9/+5uwsLAQn3/+ubh9+7buUlNToxvzu9/9TuTl5YmSkhJx+PBhERkZKYYMGSKqqqqMfn5//vOfRXp6urh69ao4d+6ceO2114SZmZnIycnRjTGmfWjo/H7x9NNPi5CQkA4f05j23yuvvCKcnJxEXl6e3u9bY2Ojbswzzzwj3nrrLd31w4cPCwsLC/Hxxx+LixcvitWrVwtLS0tx7tw53Zj169cLZ2dnkZGRIc6ePSvi4uKEn5+faGpq6tP5CdG9Oa5fv15YWVkJpVKpd5+6ujohxM+/F2+88YbIz88XJSUlIicnR0yePFmMHDlSNDc3G/381q5dK/bs2SOKi4vFqVOnxJIlS4S1tbUoLCzUjTGWfdid+f1i5syZ4qmnnmq33Zj2nxA//x05cOCAKCkpEWfPnhVvvfWWkMlkYu/evUII430ODqjC8stbXH99efbZZ4UQP7/tLDw8vN19goODhZWVlfD39xfffPNNu8f9z//8TzFs2DBhZWUlpk2bJo4ePdr7k+mEoXMMDw9/4Hghfn4rt6enp7CyshLe3t7iqaeeEkVFRX07sX8wdH4fffSRGDFihLC2thaDBg0Ss2fPFvv27Wv3uMayD7vzO1pTUyNsbGzEV1991eFjGtP+62huAPSeV+Hh4Xq/f0II8cMPP4hRo0YJKysrMXbsWLFr1y6927VarXj33XeFu7u7kMvlIiIiQly+fLkPZtRed+bo6+vb4X1Wr14thBCisbFRzJs3T7i6ugpLS0vh6+srfvvb30pSqrszv5UrV+qeX+7u7mLBggXi9OnTeo9rLPuwu7+jly5dEgB0L/r/zJj2nxBC/OY3vxG+vr7CyspKuLq6ioiICL3cxvoclAkhRA8drCEiIiLqFTyHhYiIiIweCwsREREZPRYWIiIiMnosLERERGT0WFiIiIjI6LGwEBERkdFjYSEiIiKjx8JCRERERo+FhYiIiIweCwsREREZPRYWIiIiMnosLERERGT0/j+13p8VP5cuPQAAAABJRU5ErkJggg==\n", - "text/plain": [ - "
" - ] - }, - "metadata": {}, - "output_type": "display_data" - } - ], - "source": [ - "# 当只有一个位于[0,1]的值时,表示灰度色阶\n", - "plt.plot([1,2,3],[4,5,6],color='0.5')" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "### 4.单字符基本颜色" - ] - }, - { - "cell_type": "code", - "execution_count": 28, - "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "[]" - ] - }, - "execution_count": 28, - "metadata": {}, - "output_type": "execute_result" - }, - { - "data": { - "image/png": "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btw4goKCeOCBB7jwwgvJy8sjPj7eXTdp0iRefvll922LRSd0nkqGYbD3ub0UzynGcBhYhljIfDOTiPER3m5NRESkc4Glvr6eGTNmsHTpUu67777j1r7++uvtbr/wwgu8/fbbrFmzhpkzZ7rXWywWYmJiOtOOnKQ2exuF1xRyYOUBAAb+z0AylmUQMDDAy52JiIh8p1NTQtdffz2TJ08mOzvb48c2NjbS2trKgAHtr9+xdu1aBg8eTHp6OrNnz6a6uvqY23A4HNjt9naLdE7dpjo2jtrIgZUHMPmbSHkohdP/crrCioiI+BSPj7Dk5uayefNmvvnmm079wNtuu424uLh2YWfSpEn87Gc/IykpiZKSEu68804uuugi1q1bh9lsPmIbixYtYsGCBZ36+fIdwzDY8+QeSm4twWgxsCRasOZaCT8n3NutiYiIHMFkGIbR0eLdu3czevRoPv30U/e5KxdccAEjR47kscceO+HjFy9ezJIlS1i7du1xz33ZuXMnKSkprF69mgkTJhxxv8PhwOFwuG/b7XYSEhKora0lLCyso8Pps1prWimcVcjBdw4CMGjKINJfSicgUkdVRETk1LHb7YSHh3fo/dujIyybNm1i//79jBo1yr3O6XTy+eef8+STT+JwOI56RATgoYceYvHixaxevfqEJ+omJyczaNAgiouLjxpYLBaLTsrtJPvXdmzTbDSXNWMK+G4KKP6GeEwmXQhORER8l0eBZcKECWzbtq3duquuuoqMjAxuu+22Y4aVJUuW8Mc//pGPP/6Y0aNHn/DnVFRUUF1dTWxsrCftyXEYhkHFoxXsvG0nRptBUHIQ1hVWwkbriJSIiPg+jwJLaGgop59+ert1ISEhDBw40L1+5syZxMfHs2jRIgAeeOAB7rnnHt544w2GDh1KZeV330fTv39/+vfvT319PQsWLODnP/85MTExlJSUMHfuXIYNG8bEiRO7Yox9XuuhVgquLKD6/747kTnqF1Gkv5COf7iuGygiIj3DSV047mjKy8vZt2+f+/YzzzxDS0sLv/jFL4iNjXUvDz30EABms5lvv/2W//3f/yUtLY1Zs2Zx1lln8Y9//EPTPl2g9qtaNo7cSPX/VWOymEh9OhXrSqvCioiI9CgenXTrqzw5aaevMFwGux/azc47d4ITglODsa60Ejoy1NutiYiIAN140q30DC0HWii4ooBDHx0CYHDOYNKeS8M/VLtbRER6Jr2D9TI1n9dgy7HRsrcFvyA/hv1pGLGzYvUpIBER6dEUWHoJw2mwa9EuyuaVgQv6ZfTDutJK/zP6e7s1ERGRk6bA0gu0VLWQf1k+h1cfBiD6imjSnkrDHHL0j5mLiIj0NAosPdzhvx0mf0Y+LZUt+PXzI+3pNGKu0JdIiohI76LA0kMZToOye8vYtXAXGNAvqx9ZK7MIsYZ4uzUREZEup8DSAzn2OsifkU/N2hoAYq+OZdjjwzD30xSQiIj0TgosPcyhTw6Rf1k+rQdaMfc3k/ZcGtG/jPZ2WyIiIt1KgaWHcLW5KJtXRvmicjAgZEQIWSuz6JfWz9utiYiIdDsFlh6guaKZ/Jx8ar+oBSDu13GkPJqCOUhTQCIi0jcosPi46g+ryZ+ZT1t1G+ZQM+kvpDN46mBvtyUiInJKKbD4KFeri9I/lLL7wd0A9D+rP1krsghOCfZyZyIiIqeeAosPat7VjG26Dft6OwDxN8ST8mAKfpYu/3JtERGRHkGBxcccfP8gBVcV0Ha4Df8If9JfSifqp1HebktERMSrFFh8hKvFRcncEvY8vgeA0LNDsa6wEjxUU0AiIiIKLD6gaWcTtmk26jbWATDkliEk35+MX6CmgERERECBxesOvH2Agl8V4LQ78R/gT8ayDAZdPMjbbYmIiPgUBRYvcTY7Kbm1hL1P7QUgbFwY1jetBJ0W5OXOREREfI8Cixc0FjVim2ajfks9AAm3JZC0MAm/AE0BiYiIHI0CyylWlVvFjmt34KxzEjAogIxXMxg4aaC32xIREfFpCiyniLPJSfGcYvY9vw+A8P8Kx/qGFUu8xcudiYiI+D4FllOgoaAB21QbDdsawASJf0gkcV4ifv6aAhIREekIBZZuVvlqJTtm78DV4CIgOoDM1zIZkD3A222JiIj0KAos3cTZ4KTohiIqX64EIOK/I8h8PRNLjKaAREREPKXA0g0a8hrIm5pHo60R/GDovKEk/iERk9nk7dZERER6JAWWLmQYBpUvV1L02yJcTS4CYwPJfCOTyAsivd2aiIhIj6bA0kXa6tsoml1E1WtVAEReGEnmq5kEDg70cmciIiI9nwJLF6j/tp68S/No2tEEZkhamMRpt52GyU9TQCIiIl1BgeUkGIbBvuf3UXRjEYbDIDA+EGuulYjxEd5uTUREpFdRYOmkNnsbhdcWcmDFAQAGTB5AxrIMAgdpCkhERKSrKbB0Qt3mOmzTbDQVN2HyN5G0KImEmxM0BSQiItJNTupSq4sXL8ZkMjFnzpzj1r311ltkZGQQFBTEGWecwYcfftjufsMwuOeee4iNjSU4OJjs7GyKiopOprVuYRgGFU9WsHnsZpqKm7AkWhj5j5GcdqvOVxEREelOnQ4s33zzDc899xzDhw8/bt1XX31FTk4Os2bNYsuWLUyZMoUpU6awfft2d82SJUt44oknePbZZ9mwYQMhISFMnDiR5ubmzrbX5VprWsn7RR7FNxRjtBgMvGQgo7eMJvyccG+3JiIi0uuZDMMwPH1QfX09o0aN4umnn+a+++5j5MiRPPbYY0etnTZtGg0NDfz1r391rzvnnHMYOXIkzz77LIZhEBcXxy233MKtt94KQG1tLdHR0Sxbtozp06efsB+73U54eDi1tbWEhYV5OpwTb/9rO7ZpNprLmjEFmEh5MIX438VjMumoioiISGd58v7dqSMs119/PZMnTyY7O/uEtevWrTuibuLEiaxbtw6A0tJSKisr29WEh4czZswYd80PORwO7HZ7u6U7GIbB7kd3s2X8FprLmglKCuLML89kyI1DFFZEREROIY9Pus3NzWXz5s188803HaqvrKwkOjq63bro6GgqKyvd93+/7lg1P7Ro0SIWLFjgaeseq9tUR8nNJQBE/SKK9BfS8Q/XecoiIiKnmkdHWHbv3s2NN97I66+/TlBQUHf1dEJ33HEHtbW17mX37t3d8nPCRocxdP5QUp9KxbrSqrAiIiLiJR69A2/atIn9+/czatQo9zqn08nnn3/Ok08+icPhwGw2t3tMTEwMVVVV7dZVVVURExPjvv/7dbGxse1qRo4cedQ+LBYLFsup+dbjofOGnpKfIyIiIsfm0RGWCRMmsG3bNrZu3epeRo8ezYwZM9i6desRYQVg7NixrFmzpt26Tz/9lLFjxwKQlJRETExMuxq73c6GDRvcNSIiItK3eXSEJTQ0lNNPP73dupCQEAYOHOheP3PmTOLj41m0aBEAN954I+effz4PP/wwkydPJjc3l40bN/L8888DuK/jct9995GamkpSUhJ33303cXFxTJkypQuGKCIiIj1dl5+UUV5ejp/fvw/cjBs3jjfeeIO77rqLO++8k9TUVN577712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776L1Wo9aq2vPAd7xbc1S9d44403WLBgAe+//367czwuuugi97+HDx/OmDFjSExMZOXKlcyaNcsbrXZYeno66enp7tvjxo2jpKSERx99lFdffdWLnXW95cuXExERwZQpU9qt99X9d/3117N9+3avnU9zKnRmjIsXLyY3N5e1a9e2OzF1+vTp7n+fccYZDB8+nJSUFNauXcuECRO6tO+O6uj4xo4d2+6v93HjxpGZmclzzz3HwoULu7vNTuvM/nvxxRc544wzOPvss9ut97X9l56eztatW6mtreXPf/4zV1xxBZ999tkxQ4sv0BGW44iJiaGqqqrduqqqKsLCwggODmbQoEGYzeaj1sTExJzKVk9abm4uV199NStXrjzi0N8PRUREkJaWRnFx8SnqrmudffbZ7t57yz40DIOXXnqJyy+/nMDAwOPW+sL+++1vf8tf//pX/v73vzNkyJDj1h7refj9/vn+v762Dz0Z4/ceeughFi9ezCeffMLw4cOPW5ucnMygQYO8th87M77vBQQEcOaZZ7p798V92JnxNTQ0kJub26E/BLy9/wIDAxk2bBhnnXUWixYtYsSIETz++ONHrfWV56ACy3GMHTuWNWvWtFv36aefuv9SCAwM5KyzzmpX43K5WLNmzTHnAn3Rm2++yVVXXcWbb77Z7mN4x1JfX09JSQmxsbGnoLuut3XrVnfvvWUffvbZZxQXF3fohdKb+88wDH7729/y7rvv8re//Y2kpKQTPuZEz8OkpCRiYmLa1djtdjZs2OCVfdiZMcJ3n7JYuHAhq1atYvTo0Sesr6iooLq6+pTvx86O7z85nU62bdvm7t2X9uHJjO+tt97C4XBw2WWXnbDWW/vvWFwuFw6H46j3+cxzsMtO3+0B6urqjC1bthhbtmwxAOORRx4xtmzZYuzatcswDMO4/fbbjcsvv9xdv3PnTqNfv37G73//eyM/P9946qmnDLPZbKxatcpdk5uba1gsFmPZsmWGzWYzrr32WiMiIsKorKw85eMzDM/H+Prrrxv+/v7GU089Zezbt8+91NTUuGtuueUWY+3atUZpaanx5ZdfGtnZ2cagQYOM/fv3+/z4Hn30UeO9994zioqKjG3bthk33nij4efnZ6xevdpd40v70NPxfe+yyy4zxowZc9Rt+tL+mz17thEeHm6sXbu23e9bY2Oju+byyy83br/9dvftL7/80vD39zceeughIz8/35g3b54REBBgbNu2zV2zePFiIyIiwnj//feNb7/91rjkkkuMpKQko6mp6ZSOzzA6N8bFixcbgYGBxp///Od2j6mrqzMM47vfi1tvvdVYt26dUVpaaqxevdoYNWqUkZqaajQ3N/v8+BYsWGB8/PHHRklJibFp0yZj+vTpRlBQkJGXl+eu8ZV92JnxfW/8+PHGtGnTjljvS/vPML57Hfnss8+M0tJS49tvvzVuv/12w2QyGZ988olhGL77HOxTgeX7j7j+cLniiisMw/juY2fnn3/+EY8ZOXKkERgYaCQnJxsvv/zyEdv905/+ZJx22mlGYGCgcfbZZxvr16/v/sEcg6djPP/8849bbxjffZQ7NjbWCAwMNOLj441p06YZxcXFp3Zg/+Lp+B544AEjJSXFCAoKMgYMGGBccMEFxt/+9rcjtusr+7Azv6M1NTVGcHCw8fzzzx91m760/442NqDd8+r8889v9/tnGIaxcuVKIy0tzQgMDDSysrKMDz74oN39LpfLuPvuu43o6GjDYrEYEyZMMAoLC0/BiI7UmTEmJiYe9THz5s0zDMMwGhsbjQsvvNCIiooyAgICjMTEROOaa67xSqjuzPjmzJnjfn5FR0cb/+///T9j8+bN7bbrK/uws7+jBQUFBuB+0/9PvrT/DMMwfvWrXxmJiYlGYGCgERUVZUyYMKFd3776HDQZhmF00cEaERERkW6hc1hERETE5ymwiIiIiM9TYBERERGfp8AiIiIiPk+BRURERHyeAouIiIj4PAUWERER8XkKLCIiIuLzFFhERETE5ymwiIiIiM9TYBERERGfp8AiIiIiPu//A++tskAvwS+PAAAAAElFTkSuQmCC\n", - "text/plain": [ - "
" - ] - }, - "metadata": {}, - "output_type": "display_data" - } - ], - "source": [ - "# matplotlib有八个基本颜色,可以用单字符串来表示,分别是'b', 'g', 'r', 'c', 'm', 'y', 'k', 'w',对应的是blue, green, red, cyan, magenta, yellow, black, and white的英文缩写\n", - "plt.plot([1,2,3],[4,5,6],color='m')" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "### 5.颜色名称" - ] - }, - { - "cell_type": "code", - "execution_count": 29, - "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "[]" - ] - }, - "execution_count": 29, - "metadata": {}, - "output_type": "execute_result" - }, - { - "data": { - "image/png": "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5O233zaOHz9u7N271/jud79rWCwW48033zQMI3hfgyMqsHz8EddP3770pS8ZhnH2Y2fXX3/9Oc+ZOXOmERYWZowZM8Z46aWXztnu//t//8/IysoywsLCjGuuucbYvn37lZ/MBQQ6x+uvv/6i9YZx9qPcaWlpRlhYmJGRkWHcdtttRkVFxeBO7O8Cnd+TTz5pjB071ggPDzcSExONBQsWGH/961/P2W6w7MP+fI82NTUZERERxi9+8YvzbjOY9t/55gb0el1df/31vb7/DMMwXn31VWPChAlGWFiYMXXqVGPdunW9Hvf5fMbDDz9spKamGna73Vi4cKFx6NChQZjRufozx+zs7PM+59FHHzUMwzDa29uNRYsWGcnJyUZoaKiRnZ1tfPWrXzUlVPdnfvfee6//9ZWammrcfPPNRllZWa/tBss+7O/36IcffmgA/jf9Twqm/WcYhvE//+f/NLKzs42wsDAjOTnZWLhwYa++g/U1aDEMwxiggzUiIiIiV4TOYREREZGgp8AiIiIiQU+BRURERIKeAouIiIgEPQUWERERCXoKLCIiIhL0FFhEREQk6CmwiIiISNBTYBEREZGgp8AiIiIiQU+BRURERIKeAouIiIgEvf8fzkKe/Q1zyS0AAAAASUVORK5CYII=\n", - "text/plain": [ - "
" - ] - }, - "metadata": {}, - "output_type": "display_data" - } - ], - "source": [ - "# matplotlib提供了颜色对照表,可供查询颜色对应的名称\n", - "plt.plot([1,2,3],[4,5,6],color='tan')" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "![](https://matplotlib.org/3.1.0/_images/sphx_glr_named_colors_002.png)\n", - "![](https://matplotlib.org/3.1.0/_images/sphx_glr_named_colors_003.png)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "### 6.使用colormap设置一组颜色" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "有些图表支持使用colormap的方式配置一组颜色,从而在可视化中通过色彩的变化表达更多信息。\n", - "\n", - "在matplotlib中,colormap共有五种类型:\n", - "\n", - "- 顺序(Sequential)。通常使用单一色调,逐渐改变亮度和颜色渐渐增加,用于表示有顺序的信息\n", - "- 发散(Diverging)。改变两种不同颜色的亮度和饱和度,这些颜色在中间以不饱和的颜色相遇;当绘制的信息具有关键中间值(例如地形)或数据偏离零时,应使用此值。\n", - "- 循环(Cyclic)。改变两种不同颜色的亮度,在中间和开始/结束时以不饱和的颜色相遇。用于在端点处环绕的值,例如相角,风向或一天中的时间。\n", - "- 定性(Qualitative)。常是杂色,用来表示没有排序或关系的信息。\n", - "- 杂色(Miscellaneous)。一些在特定场景使用的杂色组合,如彩虹,海洋,地形等。" - ] - }, - { - "cell_type": "code", - "execution_count": 30, - "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "" - ] - }, - "execution_count": 30, - "metadata": {}, - "output_type": "execute_result" - }, - { - "data": { - "image/png": "iVBORw0KGgoAAAANSUhEUgAAAi8AAAGdCAYAAADaPpOnAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjMuMiwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8vihELAAAACXBIWXMAAA9hAAAPYQGoP6dpAABJNUlEQVR4nO3deXxU9b0//tfnnJlM9sm+QUISQPZNkM0FUBTRWrFotbVXsVZbr/qtwqN9QB9evfXWcnu7yLVqqfeqqK3VWqv+qr1aRMCNgoCRRRIJW0I2yDaTdZZzPr8/BgIhyWRCMufMmbyej8c8as75TOZNITOvfFYhpZQgIiIisgjF7AKIiIiIBoLhhYiIiCyF4YWIiIgsheGFiIiILIXhhYiIiCyF4YWIiIgsheGFiIiILIXhhYiIiCzFZnYBQ03XdVRXVyMpKQlCCLPLISIiohBIKdHS0oK8vDwoSvC+lagLL9XV1cjPzze7DCIiIjoPlZWVGDlyZNA2URdekpKSAAT+8MnJySZXQ0RERKFwu93Iz8/v+hwPJurCy+mhouTkZIYXIiIiiwllygcn7BIREZGlMLwQERGRpYQ1vHz44Ye47rrrkJeXByEE3nzzzaDtt2zZAiFEj0dtbW04yyQiIiILCWt4aWtrw7Rp0/DUU08N6HllZWWoqanpemRlZYWpQiIiIrKasE7YXbp0KZYuXTrg52VlZSElJWXoCyIiIiLLi8g5L9OnT0dubi6uvPJKfPLJJ0HbejweuN3ubg8iIiKKXhEVXnJzc7F+/Xq8/vrreP3115Gfn4+FCxdi9+7dfT5n7dq1cDqdXQ9uUEdERBTdhJRSGvJCQuCNN97AsmXLBvS8BQsWoKCgAC+99FKv9z0eDzweT9fXpze5cblc3OeFiIjIItxuN5xOZ0if3xG/Sd3s2bPx8ccf93nf4XDA4XAYWBFR36TPB1nfCGgaRFIShLP/nSKJiGhgIj68lJSUIDc31+wyiIKSug69rBzy6HFA18/ccCZBnTYJIinRvOKIiKJMWMNLa2srysvLu74+cuQISkpKkJaWhoKCAqxZswZVVVV48cUXAQDr1q1DUVERJk2ahM7OTvzv//4vPvjgA/zjH/8IZ5lEg6bvPQB5vKbnDXcrtE93Qr10DkR8nPGFkeVInwbp0yHibCFtk040HIU1vOzcuROLFi3q+nrlypUAgNtvvx0bNmxATU0NKioquu57vV6sWrUKVVVViI+Px9SpU/H+++93+x5EkUa6W3sPLgAgJaBp0A8dhTplgrGFkaV0lNSg+fnP0f5pBSABNTsBzm9ORsq3pkLEqGaXRxRRDJuwa5SBTPghGgragYOQRyoCQaUvigJ1yUIIJaIW+FGEaHmvHCceeh9QBKCd9e9IALEzcpH35NcYYCjqDeTzm++kRIPl8QQPLkBgHoymGVMPWYrW3ImT/74ZkOgeXABAAp2f16D55T2m1EYUqRheiAYr1gH0NzdBUQBbxM+PJxO0vF0G6Q8SbCXgenUfoqyTnGhQGF6IBkkZmRe850UIiPw8Tr6kXnnLGwLDRUFoJ9ugt3kNqogo8jG8EA2SSEyAGDWyj5sCsNugjC40tCayDuEIrUdO2Dnnheg0hheiIaBMGgflgmJAPecDJjUF6vyLIOJizSmMIl7CgsKec13OpgrEzR0JJcSQQzQc8KeBaAgIISDGFkMUj4JsaAJ0HSIpESIh3uzSKMLFzc1HzNg0eA839R5iNInUFTOML4wogrHnhWgICVWFkpUBJSeLwYVCIhSB3N9ei5ii1MAFVQTmwCgCsCnI+vdFiJs1wtwiiSIMe16IiExmy0jAyD/eiPZtlWjbehSy04+YMWlIum48bGncmZnoXAwvREQRQKgKEi4ZhYRLRpldClHE47ARERERWQrDCxEREVkKh42IiIgswOfx4/O/7kFlSRVsDhumfm0iimYPz2FGhhciMpz0+AC/DsTFQPSzuywRAaWbD+KZb76I1oY2qHYVUkq887ONGHtpMX7w+gokZSSaXaKhGF6IyDB6WTX8m/dDHq0PXEiMhTr/AqiXjucOskR9qNpXgyeu+R9ovsAZWKf/FwAOfXoUT1zzP1jzzx9CGUan1g+fPykRmUrbXg7f81shjzWcudjaCW3jHvie2xL8cEKiYey9X34AXdMh9Z6bGOqajmM7K7H/vTITKjMPwwsRhZ10tcP/5s5TX5zzBiwBefQEtE+/Mr4woggnpcTOP38B3a/32UaxKdj12hcGVmU+hhciCjvts8PBG0hA23bQmGKILETz6/B7/EHbSE1HZ0unQRVFBoYXIgo7ecIFIMjhgwDQ1MahI6Jz2Owq0gpSgrYRioLssZnGFBQhGF6IKPzsKiD6WVUkBDCMJhwShWrhPRcHXZWn6zou+d5cAysyH1cbEVHYKZNGQt91JEgDATFxBJdNnydvTQvqXyxB05sHoLV6ETMiCem3TEX6zZOhxNnNLo8GadH9l2LX63tQ8flxyLNOHhciMIXshp9dg8zidBMrNB5/zSGisFPG50FkOwMnJffBtmCigRVFj46yenz19T/i5Aufw9/YAenV4DnajOr//BDl3/kLtFav2SXSIDniY7Dqg3/FlQ8uRFxybNf1nAnZuPMPt2LpmsXmFWcSIeW5U/+tze12w+l0wuVyITk52exyiOgU6e6A7/ktkDXNZ0KMLgG7Ctst86FOGmlqfVYkpUTpkhfhPe4CtF7eyhWB9G9Pxch/W2h4bRQePo8fjRVNsMfakDoyBaK/4VgLGcjnN4eNiMgQIjkO9vuvhjxUC/1ANaRfg5KbCmVGIUQshzbOR+s/j8N7rLnvBrpE41/2I/fB+VATYwyri8LH7rANu8m5vWF4ISLDCEVAjM2FMjbX7FKiQvveWkAVvfe6nCI7/fAcbkT81BwDKyMKL4YXsgwpJeB2QT9ZB3S0A6oCkZoBkZEFYedv7jT8CJva7wp0ADx6gaIOJ+ySJUgpoVccgV5eCriaAK8H6OiArK6Evr8Esr3N7BKJDJd0SUFg3lAQtvR4xI4dXitRKPoxvJAlyPoTQP2J3m9qGvTyUkjZ9/bZRNEo7oIMJM4vCAwd9SHzezMhbHyrp+jCf9EU8aSUkHU1wRv5fJBNTcYURBRBRv3masRNODWB8/QqrlNhJv1bU5C5YoZJlRGFD+e8UOTT/IAnhHM7Wt1AGrvHaXixpcZh7Ks3w735MJreLoO/qROOUSlIv2kSJ+lS1GJ4ISKyOGFT4LxyDJxXjjG7FCJDcNiIIp9qAxyx/TYTSdyUkIhoOGB4oYgnhIDI7mdfELsdSEk1piAiIjIVwwtZgsjIAjKyer+p2qCMGQ8h+M+ZiGg44JwXsgQhBJSCIiA1LbBJXXs7oKoQqencpI6IaJgJ66+qH374Ia677jrk5eVBCIE333yz3+ds2bIFF154IRwOB8aMGYMNGzaEs0SyECEERHIK1NHjoE6ZAXXiVCi5IxhciIiGmbCGl7a2NkybNg1PPfVUSO2PHDmCa6+9FosWLUJJSQkeeOABfO9738N7770XzjKJiIjIQsI6bLR06VIsXbo05Pbr169HUVERfv3rXwMAJkyYgI8//hiPP/44lixZEq4yiYiIyEIiaobjtm3bsHjx4m7XlixZgm3btvX5HI/HA7fb3e1BRERE0SuiwkttbS2ys7O7XcvOzobb7UZHR0evz1m7di2cTmfXIz8/34hSiYiIyCQRFV7Ox5o1a+ByuboelZWVZpdEREREYRRRS6VzcnJQV1fX7VpdXR2Sk5MRFxfX63McDgccDocR5REREVEEiKiel3nz5mHTpk3drm3cuBHz5s0zqSIiIiKKNGENL62trSgpKUFJSQmAwFLokpISVFRUAAgM+dx2221d7X/wgx/g8OHD+PGPf4zS0lI8/fTT+POf/4wHH3wwnGUSERGRhYR12Gjnzp1YtGhR19crV64EANx+++3YsGEDampquoIMABQVFeGdd97Bgw8+iP/+7//GyJEj8b//+79cJk00CLLBDf3AMcjmViDGBqU4D6IoB0JVzS6NiOi8CCmlNLuIoeR2u+F0OuFyuZCczFOGafiSUkL/rAx6STkgBHD2j7ozAbavzYVI6H0uGRGR0Qby+R1Rc16IaOjIr44HggvQPbgAgLsd/nc/Q5T97kJEw0RErTYioqEhpYR2Orj03gBocEPWNkLkphtXGEUU78k2uD6thNR0JM3IRVxRqtklEYWE4YUoGrV1Aq624G2EgKw8CTC8DDtauxeHf/I+Trz+JaCd6X1LWVCIMY8vhSMn0cTqiPrH8EIUjfQQhoMEAF0Peyl0hv9EK/yVLog4O2LGZUCoxo/cS03HgdvfgGtbZY9/J80fH8PeZS9j+ru3wZYSa3htFNkqvqzB39d/hPLdlXDEx2Desmm4/F9mIz7J+H8rDC9E0SgxFoiNATq9fbfRJURmimElhUKvaoJ/ywHo+44Dmg5RkA7bZeOhTBkJIYTZ5Z03f5Ubjes+Qee2M6sr1cx4OL87C4nXTTC0lqYPjsD1SUXvNzUJz3E3al8qwcj75xpaF0W213/1Pp790RtQbAp0vw4hgM/fL8WfHv071n7wQxRMzDW0Hk7YJYpCQlGgTBwVpAGAuBiIwhzDauqP9kUFvL/6O/SdR4B2L+DxQx46Ad+zW+H7i3UnF/trW1D7/TfQuaP70SXayXY0/uJDuP9YYmg9J17bB6hBgqAuUffyXuMKooi3/e29ePZHbwAAdH+gt1ZKABJw1bfhoSVPwufxGVoTwwtRlFJmjIEYkdHzhhCAqkK96iJThi16I90d8L3wcWAY4+yhjFP/rX/8FfTPj5lU3eC4ntsJvcXTbW7J2Zqf2QGtsd2werw1rX3W0tXmZD/zpWhY+ct/bYTSR+DVNR31x5vxyV+/MLSmyHjnIqIhJ1QV6tWzoVwyBUhLAlQFcNihTBwF242XQcmOnJUl2j8PBZ9/IwT8W0uNK2iI6B0+tG0sDx4WdKDtvYOG1RQzIil4zwuAGE7YpVN8Hh/2f3QIepB/w4pNwe5/HDCwKs55IYpqQlWgThwFNdgQUgTQj9UDwToDpISsaICU0lJzX/TmTsDXz6RoVcBf12pMQQCyb56Chv+vrO8GAsj+9lTD6qHIpocy+V8Cml8LfzFnYc8LEZlPEYF5OMEIYangAgBKUkz/fy5dQnUat1ojZUEhUhYVBf4/P5cqEFuUipx/mWZYPRTZHHExyJ+QE/RnT9d1jJ9TaFxRYHghogigjM8N3vOiiEAbi1ESHYidV9B7UDhNl4i/coxhNQlFYMKzy5Bz2zQI+1kfAQJIu3I0prz5LdiSHIbVQ5Hvhgcv73PCvFAEYuNjcPm/zDG0Jg4bEZHp1FlF8L/zRWCVUW9vkrqE7fKJxhc2BFLunIXaz44H/lzn/tEEkPC18bCPdBpakxJrw+ifX4mCH10C944qQNOROC0HjhE8D456uurOedj3UTk+eGkHFEV0DSWpNgWKquChv96NBKex56TxYEYiigh6ZQO8T28KBJjTlMCBkrYbZ8N2yQXmFTdInSXVaPiPzdDqWgPDSBKAKpB4wySk3jcPwsZOcIpsuq7jo9c+x9+e3IojXxyHPdaOS5ZPx/U/XIT88UOz5cJAPr8ZXogoYsh2L7Qdh6HtPw74NSgFGVAvHgsly/o/y1KX6Nx5HP5jzRBxdsRdPApqKk/1JjqN4YXhhYiIyFIG8vnNvkoiIiKyFIYXIiIishSGFyIiIrIUhhciIiKyFIYXIiIishSGFyIiIrIUhhciIiKyFIYXIiIishSGFyIiIrIUhhciIiKyFIYXIiIishSGFyIiIrIUhhciIiKyFJvZBRDR8CV1HXppDeTRk4CiQLkgB6IoE0IIs0sjogjG8EJEptCrm+B7bivQ2AYogbCi/WMvxIhU2L+7ACI1weQKiShScdiIiAwn3R3wPf0+0NweuKDLwAOArGmG9+n3Ib1+EyskokjG8EJEhtM+LgM6fF2BpRtdAg2t0HcfNbwuIrIGhhciMpy2+yggewkupwlA+/yoUeUQkcUwvBCR8Tp9we9LBHpmiIh6wfBCRIYTmUlAsAVFioDISjasHiKyFkPCy1NPPYXCwkLExsZizpw52LFjR59tN2zYACFEt0dsbKwRZVKEkV4v9OMV0PZ8Du3zz6Dt+wJ6bTWkppld2rAkpYReWQ//pj3wv7sb2q5DkP31oPRBnX9BoHelL7qEOm/M+RVKRFEv7EulX331VaxcuRLr16/HnDlzsG7dOixZsgRlZWXIysrq9TnJyckoKyvr+pp7Pgw/sqMD+sEDwNlBxeeFrKmCbGqAMnYChI0r/Y0i2z3w/+VTyKrGrmXN0CW0D/bA9rWLoEwYOaDvp1xYCPH5Uciyml5DjDJ3DERx7+8PRERh73n5zW9+g7vuugt33HEHJk6ciPXr1yM+Ph7PPfdcn88RQiAnJ6frkZ2dHe4yKYJIKaEfLe8eXM7W2Qm9qsLYooYxKSX8f/4EsropcOGsZc3w6/C/tR16Zf2AvqdQFdi/uwDqlVOA+JgzN5zxUJfNhO3G2fylhYj6FNZfXb1eL3bt2oU1a9Z0XVMUBYsXL8a2bdv6fF5raytGjRoFXddx4YUX4uc//zkmTZrUa1uPxwOPx9P1tdvtHro/AJmjrRXo7AzepqkRckQBe18MICtOQtY0BWkhoG0rhZJ/yYC+r7CpsF09FeriSZANrYF5LumJEAqn4hFRcGF9l6ivr4emaT16TrKzs1FbW9vrc8aNG4fnnnsOb731Fv7whz9A13XMnz8fx48f77X92rVr4XQ6ux75+flD/ucgY8n2thAaSaCzI/zFEPTSqjNDRb2REvJQHaTv/OYiCZsKJdsJJTOZwYWIQhJx7xTz5s3DbbfdhunTp2PBggX461//iszMTPz+97/vtf2aNWvgcrm6HpWVlQZXTENOhPjPksMKxvBpwSfXnubnRGoiMkZY+9wzMjKgqirq6uq6Xa+rq0NOTk5I38Nut2PGjBkoLy/v9b7D4YDD4Rh0rRQ5RHJy/5+VqgrExRtRzrAnMpPRb3qJdwCxdkPqISIKa89LTEwMZs6ciU2bNnVd03UdmzZtwrx580L6HpqmYe/evcjNzQ1XmRRhhCMWcKYEb5OVwyGGc0hNh/T5IYPtXHselCmjgvdyCUC9sJgTbKkHqelml0BRKuyzHVeuXInbb78ds2bNwuzZs7Fu3Tq0tbXhjjvuAADcdtttGDFiBNauXQsAePTRRzF37lyMGTMGzc3N+OUvf4ljx47he9/7XrhLpQiijCqGfuirwOTdc6VnQGQzzJ6mn2yCvvcQ5PETgQ6SuBgo40ZBmVQMYVMH/f1FvAPq0guhvbMrsLHc2dlIACInFcqcCwb9OhQdOqtbcHjdNlRs+Bx+lwf29DgU3DEDxT+cB0cWTwqnoRH28HLzzTfj5MmTePjhh1FbW4vp06fj3Xff7ZrEW1FRAeWs36Cbmppw1113oba2FqmpqZg5cyY+/fRTTJw4MdylUgQRqgpl7HigxQ3Z2ADp90E4HBDpmRDxfAM8Ta+ohbZlNwBxJlR0eKF/cRD68ROwXTUHwj74H3N1aiFEYhy0baWQFaeWRcfFQJlRDHXeOIgYrvoioO1QIz5Z8Bx8jR2QWuAfpK+hA4cf34aqP+3DxVvvQFy+0+QqKRoIOdR9zCZzu91wOp1wuVxITub24hS9pM8P/5839T1RVgDK5NFQLxw3tK/b6Qu8ZnwMh+6om08WPIfmnVWQ/p4fK0JVkHFFEeb87VYTKiMrGMjnN995iCxKP1wdfIWPBPSyCkh9aOcdiFg7RGIsgwt1495/Ak3/PN5rcAEC819ObjyEtsPB9gwiCg3ffYisqsnd/3Jxrw/o9BpTDw1r7pLe9+7qRgLuvXW93vI2d6Dpi1q0Hm4c8knnFH04UE1kVWqIk3FV/o5C4ac4Qvv3qMR0b9dR7cYXq/+Bilf3QfoCvYTOKdmY8ujlGHH9hCGvk6ID39WILEoUZAd2Gg4mMwXCERO8DdEQyFhYBGEP/pGixtuRfklB19cdNS3YOOcZVLxyJrgAgGvfCXx8w59w+NldYauXrI3hhciiRFYqkJkSdOhInTrGuIJoWIvJiEfBnTP7PkpCAEX3zYYt6cymonsf3oTOulZI/znzsk6F8l33vwNvM48BoZ4YXogsSggB2+WzgPTk0xcC+7Cc+m9l7mQoI7NMq4+Gn0m/vAo5Xw+sbhM2pdv/jvj2FFzwyKKutv42L4794YueweUsusePYy/vDWPFZFWc80JkYSI2BrZr5kPWNEAeq4X0+yFSEqGMyYeI47EZZCwlRsXMV25C8/bjOP6HPeisa0VsXjLyb5uGlJl53dp21LRA9wQ/D0vYFLQeagxnyWRRDC9EFieEgMjLAPIyzC6FCEIIpM7NR+rc/KDt7M7Y/r+ZLhGTEkI7GnY4bERERIaLzUxA5oJCCLXvOVtSk8j/5mQDqyKrYHghIiJTTP73RYG5ub3lF0Wg4NtTkTyOPYrUE8MLERGZImtBES55/RbYTw0NCbsSWK0kgMLvTMPsZ5eZWyBFLM55ISIi04y4fgKurxqD428cQEtpPWzJDoz8xkQkFqWaXRpFMIYXIiIylRprx6hvTTW7DLIQDhsRERGRpbDnhYiIIo6/w4djr+7DiQ+PAkIge0EhRn1zEtRYu9mlUQQQMsqO73S73XA6nXC5XEhOTja7HCIiGqD6z6qw+ZqX4Glo79qhV/p1ODITcPk730H6rBEmV0jhMJDPbw4bERFRxGivacGmqzZ0nWkk/XrXEQLexna8f9UL6KhrNbNEigAML0RENGCdVW60HjgJv9szpN/34O8/g7/FC6n1HBSQmoTf7cHBZ3YO6WuS9XDOCxERhax+4yGUP7YV7t01AAARoyL3pkkY8/BCxOYmDfr7V/xlP6Te92wGqUtUvL4fU/9t4aBfi6yLPS9ERBSSmj/vw+4bX4G7pLbrmvRqqHllL7Yveh6dNS2Dfg1/u6//Nm39t6HoxvBCFCWkzw/9q0r4N++Gf9MuaHsOQXYMbZc+DV/+Vi++/OHfAQngnJ4RqUl469pQ/uiWQb9O2ozcrkm6vRE2BWkzcgf9OmRtDC9EUUA2uuH/yxZon+yFPFoLWVEHfVcZ/H/eDP1Ybf/fgKgftX/9ElqQXhGp6ah5bf+g58Bc8K+zuybo9vo6fh0X/OvsQb0GWR/DC5HFSa8P/nd3AB5vz5u6Dm3z55CNbuMLM4mUEv791eh4egvaHvkb2n+1Eb5thyH9mtmlWVr7ocagPSJAYAhpsENHOZcXY9z/mxv4QjnrxMZT/z3hwfnIXlA4qNcg6+OEXSKL08ureg8uZ9H2H4Ht0mkGVWQeqenoXP8h/NuPBj7sdAkIQNtTBeXtVMStXgIlKdbsMi3JluwIOpG2q11SzKBeRwiBWY8vRfqFefjyN5+geU8dACB1SjYmrLoYRbdOhRC9HUNNwwnDC5HFycoTwRvoOuSxOuBSY+oxk/etLwLBBTgzL+PU/+hVzej83YeI//FVptRmddnXT0D5T7f03UARcM7MQ2ze4DcHFUKg+LbpKL5tOnytHgghYEsYXCii6MJhIyKr0/qYHyAloElAB9Dpg+8vW6EdOAap9z2fwMqk1w/vP77su4Euoe2rhlbVbFhN0SRhTBpyb5ncfSjnNAFASoz+yWVD/rr2RAeDC/XA8EJkcSLDCZzbjS5PhZazNbdC/2QftPd3R2WA0Ssagf6W2QpA219jTEFRaNJvr0XuzZMDX6gCwh74CFHjYzDl2WXIuKLYxOpoOOGwEZHFKeMKoO8/cuZCb8HlLLKiDnppBdSJhWGvzUihzMcAAERhcDOK4rBhyu+/jtE/vgR1b5XC3+JB/Og0ZN8wgb0jZCiGFyKLE84EKPMmQd+2P9ADE8KHuL7vSNSFFzU/FbCrgC/IqiIJqGMyjSsqSsWPTkPRyvlml0HDGIeNiKKAOn4U1KvnQIzICO0J7vaoWzos4mJgv2xszyG00xQBpSANymiGFyKrY3ghihJKbjpsV14EMWZE3x/g3Z4QfctNHTfPhFJ8KsCd/ccTAiI5FnH3L+QyW6IowGEjoiijFGRDO1jVdwMBiBGZEEr0/e4iYu2IX7MEvo/L4fvgK+j1rRAJMbBfOhb2y8dBSeYeL0TRgOGFKMqIUdlAUjzQ2hGYvHsuCShTo3dViIixIeby8Yi5fLzZpRBRmETfr15Ew5xQFNiWzgESTvUynB4lEQCEgHrpFCh5Ic6NISKKQIaEl6eeegqFhYWIjY3FnDlzsGPHjqDtX3vtNYwfPx6xsbGYMmUK/v73vxtRJlHUEMnxsN20AOqi6RBFeRCjsqFMHwvbLYugjCswuzwiokEJe3h59dVXsXLlSjzyyCPYvXs3pk2bhiVLluDEid63NP/000/xrW99C3feeSc+//xzLFu2DMuWLcO+ffvCXSpRVBGqCmX0CNgunwHblbOgzrwAIiHO7LKIiAZNSNnboPjQmTNnDi666CI8+eSTAABd15Gfn4/7778fq1ev7tH+5ptvRltbG95+++2ua3PnzsX06dOxfv36fl/P7XbD6XTC5XIhOXnwZ2wQERFR+A3k8zusPS9erxe7du3C4sWLz7ygomDx4sXYtm1br8/Ztm1bt/YAsGTJkj7bezweuN3ubg8iIiKKXmENL/X19dA0DdnZ2d2uZ2dno7a2ttfn1NbWDqj92rVr4XQ6ux75+flDUzwRERFFJMuvNlqzZg1cLlfXo7Ky0uySiIiIKIzCus9LRkYGVFVFXV1dt+t1dXXIycnp9Tk5OTkDau9wOOBwOIamYCIiIop4Ye15iYmJwcyZM7Fp06aua7quY9OmTZg3b16vz5k3b1639gCwcePGPtsTERHR8BL2HXZXrlyJ22+/HbNmzcLs2bOxbt06tLW14Y477gAA3HbbbRgxYgTWrl0LAPjhD3+IBQsW4Ne//jWuvfZavPLKK9i5cyeeeeaZcJdKREREFhD28HLzzTfj5MmTePjhh1FbW4vp06fj3Xff7ZqUW1FRAeWsM1bmz5+Pl19+GQ899BB+8pOfYOzYsXjzzTcxefLkcJdKREREFhD2fV6Mxn1eiIiIrCdi9nkhIiIiGmoML0RERGQpYZ/zQkREQ09v98G1sRy+qhaoTgecS8bClhFvdllEhmB4ISKymKa3DqDmP7ZCb/cBNgXQdNT850fIuG06slddDKEIs0skCiuGFyIiC3G/fwhVa94/c8GvB/5Xk6h//nNAFchZebE5xREZhHNeiIgsQkqJ2sc/BYJ0rNRvKIG/qcO4oohMwJ4XIiKL8JQ3wnukOXgjvw73psNIu3GSITXR0Gpv7sCeN/ehtb4NaaNSMeW6ibDH2s0uK+IwvBARWYTm6uy/kSKguz3hL4aGlJQS7z22Ce/+/H34O/1QVAFdk4hLicM3n7wBF337QrNLjCgcNiIisoiYkc6gQ0YAAF3Cns8NOq3mH2s/wNsPvwt/px8AoGuB/WM7mjvwwndexhdv7jOzvIjD8EJEZBH2nEQkXlwAqH0kGAGoKbFIWlBkbGE0KB2uDrz7s419NxDAW6vfQZRtiD8oDC9ERBaSu/pSKHH2ngHm1Lv5iEcvhxKjGl8Ynbe9f/sSvlM9Lr2SwImvTqLqi2rjiopwDC9ERBbiKE7D6Fe/iaRLC7sNIcVNzELh/1yP5MWjTauNzk9bQ3tIe/O0NbQbUI01cMIuEZHFOIpSMerpr8Ff3w5fbQvUlNjAfBiypPTCVEi9/yGhtMJUA6qxBoYXIiKLsmXE80iAKDBx6XgkZCSgraEN6CXDCFWgeF4hMkdnGF9chOKwERERkYlsMTbc8rvlEBAQovvwkVAFbDE23Pjfy8wpLkIxvJBlSb8fsr0N0sM9LYjI2mYsn4ofvP1d5EzK7nZ9zKXFWPXJfcifMcKkyiITh43IcqTXA/14BdDUAJxeOhgfDyWvACKFY8JEZE2Tlk7AxKvHo/ZAHdrq25BakIr0wjSzy4pIDC9kKdLrgX5gL+Dzdb/R3g69vBSicAyUjExziiMiGiQhBHIn5phdRsTjsBFZil5V2TO4nEVWHIbUNAMrIiIiozG8kGVIzQ801gdvpOuQ/bUhIiJLY3gh6/B6z8xx6YsQgCeEw+uIiMiyGF7IOtQQpmhJGVo7IiKyLIYXsgwREwMkJPXfLpWz84mIohnDC1mKMiI/eIP0DIjYOGOKISIiUzC8kKWIZCeU4gsA5dSpuWfvRpmeCWUUD6UjIop2nBxAliPS0qE4UyCbG4HODkBVIVLTIRyxZpdGYSKlhDxaD/2rWkACypgsiNFZPbZSJ6LhgeGFLEmoKkQ6N6OzMunXII/WQ3r9ULKdEOmJvbdrbIP3f7ZAHmsAlFNhRZcQI1Jhv3shlMz+50ERUXRheDGQ1LXAMl6/N3BBtQGOOAiujqFhREoJbcsBaB98CXR4u66LsdmwL58NkXEmjMhOH7zr3oNsbAtc0M8slZc1zfD+5l04Hvo6RILDsPqJyHyc82IQ6fMCLc2AtxPQ9cDD5wVaXZCeDrPLIzKM9k4JtHdKugUXAJCHTsD7239ANrWdabvjMGR9a7fQ0kWXgLsD2icHw1wxEUUahhcDSF0H2lv6btDZDunve8t7omghG1qhbTnQ+01dAh1e+Dft77qk7TjczzcEtO39tCGiqMPwYgRvCDu+sveFhgFt5+HuK8TOpUvoO49A+k+dT9Xm6fd7yvb+2xBRdGF4MUIovSp+f/jrIDKZdHUA/S0Q8mtAR+BnRmQnn5mk2xshILKSh65AIrIEhhciMoxIDGFirSKAWDsAQL34gt7nu5wmJWyXXjBE1RGRVTC8GMFmD6ENVxxR9FNmFgUPI4qAMn0UhD2wCaEyaQSUGaN6760RgDIxL3CfLEFKifoPj6J83TYcenoH2o40mV0SWRQ/MY0QE9v/nBYHt7Sn6KdkO6FcVAz9s14m2QoB2FSoiyefuaQI2L97KbT3UuDffABoO7VCKc4O9bLxsF07FULl72BW4NpTi+23vIbW0vpA75qU+ALAiBsnYuazy2ALpVeO6JSw/tQ3Njbi1ltvRXJyMlJSUnDnnXeitbU16HMWLlwIIUS3xw9+8INwlhl2QlGA+CAbacXGQ4TSO0MUBWw3zoZy2XjgnNAhspJh/9fFUM6ZwyJUBbZrpsGx9ibErPkaYtZcC8d/fhP262dA2FQjS6fz1Ha0CR8ufB5tBxsCF3QJSAASqP7rAWxb9idIGaRHjugcYe15ufXWW1FTU4ONGzfC5/PhjjvuwN13342XX3456PPuuusuPProo11fx8fHh7NMQwh7DGRiSmDlkd8b+MG12YCYOAgOGdEwIlQF9q9fCLl4EvSyGsCrQeQ4IQrSg273L2wqRD5PDLeig7/+FP5WL6TWM6BITeLkB0dwcvMRZF1ebEJ1ZEVh+9Q8cOAA3n33XXz22WeYNWsWAOC3v/0trrnmGvzqV79CXl5en8+Nj49HTk5OuEozjVBVIC4BQILZpRABAPSaRmh7DkPWNQOqAqU4B+qUIojE8A9jingH1BmFYX8dMl/FS19A+vU+7wubgso/7mF4oZCFbdho27ZtSElJ6QouALB48WIoioLt27cHfe4f//hHZGRkYPLkyVizZg3a29v7bOvxeOB2u7s9iKh/2vZS+P/yEeTBasDVBjS2QN9VDt9Lm6BX1ZtdHkUJqevwu4PvxSP9OrwNfb/PE50rbOGltrYWWVlZ3a7ZbDakpaWhtra2z+d9+9vfxh/+8Ads3rwZa9aswUsvvYTvfOc7fbZfu3YtnE5n1yM/P3/I/gxE0Uo/UgttR1ngi7PnGkgJaBr8f9sO6eGuzzR4QlEQmxf88ExhUxA/KsWYgigqDDi8rF69useE2nMfpaWl513Q3XffjSVLlmDKlCm49dZb8eKLL+KNN97AoUOHem2/Zs0auFyurkdlZeV5vzbRcKF9Xt73ZnESgM8PvbTCyJIoihXdPQtQ+57PJP06Rn33QgMrIqsb8JyXVatWYcWKFUHbFBcXIycnBydOnOh23e/3o7GxcUDzWebMmQMAKC8vx+jRo3vcdzgccDi4xC4SSCmBzg6gox2AAOITIGJjzS6LziGlhKxuDISUIPSqBqjTev7MEQ3UmB/OReWf9qKtvKHXSbvF985GyrTom+dI4TPg8JKZmYnMzMx+282bNw/Nzc3YtWsXZs6cCQD44IMPoOt6VyAJRUlJCQAgNzd3oKWSgaTXC1ldCXR2P8dJxsVDjBjJpeBEw5jdGYsFH30Xe1a9h+N/2ts1eTcmIx4X/OhijF013+QKyWqEDOPi+qVLl6Kurg7r16/vWio9a9asrqXSVVVVuOKKK/Diiy9i9uzZOHToEF5++WVcc801SE9Px549e/Dggw9i5MiR2Lp1a0iv6Xa74XQ64XK5kJzMM0+MIDU/5JFDfZ/PFBMDUTg6sN8NRQTf6x9D1jQE7X1RL50MdTp7Xmhoeerb0PLlSSgOG1IuzIVi5149FDCQz++wbjDyxz/+Effddx+uuOIKKIqC5cuX44knnui67/P5UFZW1rWaKCYmBu+//z7WrVuHtrY25OfnY/ny5XjooYfCWSYNVnNT8IMlvV7A7QJSUo2riYJSZ4yGv7qh95sCgE2FMqHA0JpoeHBkJMBx2eC2i+ioa0XbcRcc6fFIKuT7ynAU1p4XM7DnxXj64YOBgBJMfDyUgiJjCqKQ+P9ZCv2zssC2/KffBgQAVYXturlQRmaYWh/RuVxlJ7HjR+/h+Dtfdf2bzbhoBGauvQp53CPG8iKm54WGCU3rv40/hDZkKNvc8dALMqHtOQJZ13Rqk7pcqFMKIZKsv6s1RZfmAyfw9vxn4G/1dVveX7+rGu9dtQFX/PVbKPj6BBMrJCMxvNCASU9nYFURBBAfD9hjAK2fgydjYgypjQZGyUuHkpdudhlE/dr+w7/3fsSALgEBfHLXWxi59ALOoRkmGF6ihNT8QHtbYO6JEEBsHOCIDXpWzIBfw+eFrK0GPN1XFCGm/6XqgvNdiOg8tVY0o/r93vf6AgBIoPNkGyr//hVGXc/el+GA4SUKyLaWwITYs3W0AzY7ZFpG4Eylwb6G5oc8XgFovUzM9XoAuw3w9TFpNzEJSEgcdA1mkroO2dAIeDyB1VMZ6Vw9RWSQ1iNN/bYRqkDLoUYDqqFIwPBicbKzo2dwOc3vA5rqIdOzBt8D42ruPbh0FSIDIaWt9cx4tKIAqWkQGUPw+ibSa2qhlx0EfGdtl2+zQblgDJQRfR8wSkRDIya1/4NCpS4Rk8JNMYcLhhera+3nIEqfL7ASaJC7EMu+AtLZVAVi7LhA7wQQGLayeO+EXlMLfd+XPW/4/dC/LAWEgJLHDRSJwil1SjaSx6bDXd733kSKTUEBh4yGDWt/sgxzUte69wb0xdPPZNpQhLSiyA+hqBBx8YGHxYOLlBL6wfKgbfSvyiF13aCKiIYnIQRmPrY46KaKk1ddgth0rpIbLqz96TLchbpDz1Bs5WMLoZPOHl1HAMimZsDTz/41Ph9kU//j8UQ0OIU3TsYlz94AW0LgfUbYFUAREDYFk390CS782RUmV0hG4rCRlSkKIBRA9vObv33wy5SFMwWy/kTwNskpg36diNLfxntd7ULo/SKiQRt7x4Uo/OZkHP3LfrQebYIjPR5FN01GXLa1FwTQwDG8nA8pAb83MCEWEoAAbPbAQxjXmSWEgExIAFpbgjUKLJserOSUwMRgr6f3+wlJQFx0ddmGeiK24KnmRIaxJ8Rg7O0zzC6DTMZho4GSOuBpC4SXrnGbU2Gmsx0wev5DYnLwnpWUtCGZeyIUBWJEAZB0zpbNQgCp6RA5eZZeUdQrZzIQ10/wi3UAqSmGlENERAHseRkoryfIHBIJeDuA2MEdOjYQQgjI9MzAEuW2VkA/NbE2Ng5ITIIYgiGjrtdSVYjsPMiM7MBGdUJExYqivgghoIy/APrnX/TZRhk/LvpCGxFRhGN4GQipA3qQvU662miAYtwW1UKIwB4riUk4fc5mOD9QhaoC8cYFNDMpGenAhdOhl30FtLWfuREfD2Xc2MB9IiIyFMPLQIQ6JGRweDkbewGGnpKeBjFvDtDSCunxBOa4JCXy/2siIpMwvIQFP9TMIjUtsCqq5dTmfclOiPTMQR+RIIQAkpMgkDQEVRIR0WAwvAxEqL0pJvW6DHeyxQW97MvuG+o1nISsPApl3CSIRAYPIqJoEJ0zLcNFCMDWzwRYxRbYf4UMJT0e6KX7e98J2O+HXroP0hfivi1ERBTR+Ck7ULaYQEDpjaICMTwYzAzyRE3wOUmaBnmi1riCiIgobBheBkqIQECJiQdUeyCwqDYgJi7w4CROU8jGhiFpQzQc6J0+dBxqhKfK3bVCkchKOOflfAgBqGrgQZEhlJVgPECRhjl/iwfHf/MpTvxpL/T2wLEWceMyMPL/zUX6deNMro4odAwvFB0SEvo+ugAAIIAEnn9Cw5fW6sWXN76K9q/qAe1Mb0vHV/U4eO/b8Na2IPeuWSZWSBQ6DhtRVFCy8/ppIaFk5xpSC1Ekqn5mJ9rLugcXAF2nnBx77EN4qt3GF0Z0HhheKDokO4EgAUbk5UOcey4T0TAhpUTdSyWAHnx+y8k/7zemIKJB4rARRQUhBJRRRZCJSZC1VYFzngAgIRFK7kiI9AxzCyQykd7ug7+hI3gjAXQeaTKmIKJBYnihqCGEgMjIBDIyIU9Nzo3WQyOlrkM2uAC/BuFMhIjnEn3qm+KwAaroOWR0NiGgJg7dQa5E4cTwQlEpakOLlNBLj0HfewjwnNl0T+RnQb1oIkRCnInVUaQSNgVpV49F47sH+w4wfh1pX+OKI7KG6HyHJ4pS+udfQd95oFtwAQB5/CT8/7cNsiPYiisazkbcOxtCEb0fvaYKJM0egeS5Iw2vi+h8MLwQWYRsaYO+/3AfNyXQ6YW+75CxRZFlJEzOxrjnb4DqDAwxCpsSGEoCkDwvH+OeXcaT0skyOGxEZBH6oarABol97YgqJfTy41BmTgj8hk10jpTLCjFzx/fR+O5BtB84CeGwIe3K0UiYkm12aUQDwvASCs0PaD5AP3Xon2IDbHaeHk2Gkm2d/Tfya4DPDzjs4S+ILEmJtSFj2QRg2QT4WzyQPg1Slwy8ZCkML8FICfi9geByNt0PeP2A3RE434jIAMJhR7+n0CgCsDNUU3CN75Wj6qntaN1dAwCIyU1EzncvRO73ZkLhvx+yAM55CUbXegaXs/k8gOR5OWQMpSiv7yEjABACojA3alda0dCo/p+dKLvzTbSWnDll3VvTioqff4iy774J3aeZWB1RaPguF4w/SHAZSBuiISDSnRCjcvq4CUBVoE4ebWhNZC2dR5tx7NEtgS/O3W1XAs1bjuDEK3sNr4tooBhegpEh/Aai87cUMo568VSIMfk9l7smxkO9ag6Ek4dPUt/qXt4TGFoMovb5zw2qhuj8hS28PPbYY5g/fz7i4+ORkpIS0nOklHj44YeRm5uLuLg4LF68GAcPHgxXiUOEk9zIOEJVYZs3GbZvLII6dzKUiyZCvXI2bNdfBiXdaXZ5FOHaS3s5mPFsEug41GhcQUTnKWzhxev14qabbsI999wT8nP+67/+C0888QTWr1+P7du3IyEhAUuWLEFnZwirLMIhlNVEKie3kfFEfCyUsflQx4+CkpPO/TkoJGq8rd+eF8XBdRwU+cIWXn7605/iwQcfxJQpU0JqL6XEunXr8NBDD+H666/H1KlT8eKLL6K6uhpvvvlmuMoMzhbCOR9cbUREFpF29djgJ0urAmnXXGBcQUTnKWLmvBw5cgS1tbVYvHhx1zWn04k5c+Zg27ZtfT7P4/HA7XZ3ewwZRQVsjr7vx8QFNg0jIrKAtKVjEVuY0rWzbjcCEIpA3vdnGV4X0UBFTHiprQ0s28vO7r7TY3Z2dte93qxduxZOp7PrkZ+fP7SF2exATHygh0UogYctBnAkcJM6IrIUxWHDxFe/ibjiVACnjgiwBT4GlHg7xj13AxImZJpZIlFIBhReVq9eDSFE0EdpaWm4au3VmjVr4HK5uh6VlZVD/yKKEtiQzhEfeNhi2ONCRJbkGJGMae+vwPgXvoGsW6ci65uTUfyfV2LW7nuQuqjI7PKIQjKgmVmrVq3CihUrgrYpLi4+r0JycgL7V9TV1SE3N7frel1dHaZPn97n8xwOBxyOIEM7RENAahrQ2RkIsrGxnCBLliZUBalXFCP1ivN7vyYy24DCS2ZmJjIzw9OlWFRUhJycHGzatKkrrLjdbmzfvn1AK5aIhpL0+aAfOgxZXQPop3ZTTkiAUlwEJTvL3OLI8rTGDmiN7VBSYmHLSDC7HCLLCNuauIqKCjQ2NqKiogKapqGkpAQAMGbMGCQmBjbSGj9+PNauXYsbbrgBQgg88MAD+NnPfoaxY8eiqKgI//Zv/4a8vDwsW7YsXGUS9Un6fNB27gLa2rvfaGuDvncf4BkLpWCI51jRsOAtb0DT73agY1sFTh9YFTsrD6k/mAPHJIZiov6ELbw8/PDDeOGFF7q+njFjBgBg8+bNWLhwIQCgrKwMLperq82Pf/xjtLW14e6770ZzczMuueQSvPvuu4iNjQ1XmUR90o8e6xlczr7/1UGI7CwIDlvSAHjK6lH7g7cgvRrOPmmzc3cNau55Czn/fS1iZ+SZVyCRBQgpg530Zj1utxtOpxMulwvJyclml0MWJaWEtvUjwO8P2k4ZXQylqNCYoigqVN/5BrylJ3vfb0UAthHJGPHnWzivioadgXx+R8xSaaKI4vP3G1wgBGR7hzH1UFTwHm6E98sTfW8UJwH/cTc8X/S9PQQRMbwQ9U4N8UfDxr1+KHS+Slf/jQbQjmi4YnihAZE+H2RnJ2R/vRIWJ1QVyMwI3khKKOdsqkgUjJIU2vwoJSmEo0mIhjGewEUhkR3tkA0nAc+ZQzJlfAJEeiZETHROWFULC6HVNwB9TQtLTQWcnFdFoYudmgMlNQ56U9/DjSLOhrg5XMVGFAx7Xqhfsq0VsrqyW3ABALS3QR4/BunxmFNYmAlnMpRpUwHbqYx/9gTKjHSo06ZwUiUNiLApSL0r+NlBztsvhBLHA1+JgmHPCwUlpYQ8GWTyoJSQ9XUQIwqMK8pASkY6xKUXQ548CdnaBqEoEFmZEKf2KiIaqKQbJkLv8KFp/Q7ArwfmV2k6oAg4b5sB523TzS6RKOIxvFBw7W2ApgVv09kB6fNC2KNznF6oKsSp4yuIhoLz29OQ+LXxaHv/ELSTrVDT4pFwxWioaXFmlzYgWocPvuZO2FNiobK3iAzE8ELB+X2htfP5gCgNL0ThoCY7kPyNiWaXcV7ayhtx+Bcfofb1LyH9OoRdQc7ySRi9+lLEnzqxmiicGF4oOCXEaVEKlwwTDQctX57AjitfgN7ug9QCk9mlT0fta/tw8u9fYfbG25E4ITxn4BGdxgm7FFx8YveJqr2x2QFukU80LOy/52/Qzgoup0lNwt/mxf773japMhpO2PNCQQlVhUxJA5oa+m6TlsFVN2QIqUto2w/D/8EByONNgE2BMjUf9isnQinsZ18eGrSWvXVwfx5kAr8m4fqsGi1fnkDSRB4wSeHDnhfql0hNB1LSerkhIDKzIZK41wmFn9QlvM99BN+GTyArGwNb7Hs16LuPwfOL/4O2+5jZJUa91tL6kNq1HQitHdH5Ys8L9UsIAZGeCZmSCrS2BFYf2exAYhJEqHNiiAZJ+7Qc+mdHA1+cPWJx6pwg77MfIXZsNkQST6EPFzUhtBVFajxXHlF48ZOHQiZUG4QzNTBMlOxkcCFD+TcdAIKNTmo6/J+UG1bPcJR2WWG/wURNsCNtQaExBdGwxU8fIop4UtMhq5u797j0Qj/W99wsGjxbYgxG/b+5QdsUPjCPPS8UdgwvRBT5hOh/1ZsQEDa+pYXb6NWXouCeiwK9YOqp/89VAQhg1L2zUfyjS8wukYYBznkhoognFAFlYi70AzVdc1x60CWUySOMLWwYEorA+F9chYLvX4SaV/fCU9cKR04Scm+ZgvjCFLPLo2GC4YWILMG2ZDK8+6t7v6kIwBkH9cJRxhY1jMUXp2L0msvMLoOGKfaxEpElqONyYP+XeYHhI+XUENLpkaTkODgeuBLCzp2eiYYD9rwQkWXYLhkLZUIutI8OQq9sAOw2qFNGQr2oECKGb2dEwwV/2onIUpT0RCjLZphdBhGZiMNGREREZCkML0RERGQpHDYioqCkxwd5whXYRyU7hZNiich0DC9E1Cvp9UPbuhf63mOApgcuxtigXDga6vwJECo7bonIHAwvRNSD9Gvw//kjyNpmQJ61KZzXD/2fZZANLbBdPweiv11viYjCgL86EVEP+r5jkDVN3YPLWeTBasijJwyuiogogOGFiHrQvzgSvIEQ0PYcNaQWIqJzMbwQUQ/S3d5PAwk0txpTDBHRORheiKin2Jjg9wWAhFhDSiEiOhfDCxH1oE4edebcoN5IQJlYYFg9RERnY3ghoh6U6UWBnpXeVhMJAZHphHJBnvGFERGB4YWIeiHiHLB/awFEdkrPe4VZsN18CYSNm9URkTm4zwsR9UqkJMD+L4ug1zZBVjUAQkAZlQWRnmR2aUQ0zDG8EFFQSk4qkJNqdhlERF3CNmz02GOPYf78+YiPj0dKSkpIz1mxYgWEEN0eV199dbhKJCIiIgsKW8+L1+vFTTfdhHnz5uHZZ58N+XlXX301nn/++a6vHQ5HOMojIiIiiwpbePnpT38KANiwYcOAnudwOJCTkxOGioiIiCgaRNxqoy1btiArKwvjxo3DPffcg4aGhqDtPR4P3G53twcRERFFr4gKL1dffTVefPFFbNq0Cb/4xS+wdetWLF26FJqm9fmctWvXwul0dj3y8/MNrJiIiIiMNqDwsnr16h4Tas99lJaWnncxt9xyC77+9a9jypQpWLZsGd5++2189tln2LJlS5/PWbNmDVwuV9ejsrLyvF+fiIiIIt+A5rysWrUKK1asCNqmuLh4MPX0+F4ZGRkoLy/HFVdc0Wsbh8PBSb1ERETDyIDCS2ZmJjIzM8NVSw/Hjx9HQ0MDcnNzDXtNIiIaGlLTUfd/B9H4aSWgCGQuKkLG5UUQvR07QTQAYVttVFFRgcbGRlRUVEDTNJSUlAAAxowZg8TERADA+PHjsXbtWtxwww1obW3FT3/6Uyxfvhw5OTk4dOgQfvzjH2PMmDFYsmRJuMokE0iPB/B6AFUF4uL5RkYUhdx767D9hj+h/WgzhF0BJHDwPz9C0sRMzHnr20go4saHdP7CFl4efvhhvPDCC11fz5gxAwCwefNmLFy4EABQVlYGl8sFAFBVFXv27MELL7yA5uZm5OXl4aqrrsJ//Md/cFgoSsjOTsia40B725mLNhuQlQuRmmZeYUQ0pDrrWvHxFRvgd3UCAKRP77rX+lU9PrliAxZ98a+wJ/G9nc6PkFJKs4sYSm63G06nEy6XC8nJyWaXQ6dITyfk4YOArvd6X+TkQaQbNyRJROFT+u+bUfbzDwG9j48XAUx94hoU3TPb2MIoog3k8zuilkpT9JJ1NX0Gl9P3ZZAl8URkHcdf2dt3cDnd5tV9BlVD0YjhhcJO+v1ASz+bB0oJuJqMKYiIwsrv9gRvIAFfc6cxxVBUYnih8PP7QmomfaG1I6LIljg+A1D7nogvbAqSJ3KYmM4fwwuFnxravHBhC9v8cSIyUNEPLgK0voeNpF/HqLtmGVgRRRuGFwo7YbcDCYn9N0xOCXstRBR+ecsnIuf68UAfnS+jvnchMhYWGloTRReGFzKEyMpBn+9kAJCeGQg5RGR5QlVw0as3YcKjlyMmK6Hrely+E1PWLcW0p7/G/Z1oULhUmgwjW1sgqyuBs+e2CAFkZEFkZvPNjCgK6X4NHcdcgCIQP8oJofB3ZurdQD6/OcmADCMSk4CxE4C21sAOu4oKJCVDqKrZpRFRmCg2FQmjuQklDS2GFzKUEAJITAKQZHYpRERkUey/IyIiIktheCEiIiJLYXghIiIiS2F4ISIiIktheCEiIiJLYXghIiIiS2F4ISIiIktheCEiIiJLYXghIiIiS2F4ISIiIktheCEiIiJLYXghIiIiS2F4ISIiIktheCEiIiJLYXghIiIiS2F4ISIiIktheCEiIiJLYXghIiIiS2F4ISIiIktheCEiIiJLYXghIiIiS2F4ISIiIktheCEiIiJLYXghIiIiS2F4ISIiIksJW3g5evQo7rzzThQVFSEuLg6jR4/GI488Aq/XG/R5nZ2duPfee5Geno7ExEQsX74cdXV14SqTiIiILCZs4aW0tBS6ruP3v/899u/fj8cffxzr16/HT37yk6DPe/DBB/G3v/0Nr732GrZu3Yrq6mp84xvfCFeZREREZDFCSimNerFf/vKX+N3vfofDhw/3et/lciEzMxMvv/wybrzxRgCBEDRhwgRs27YNc+fO7fc13G43nE4nXC4XkpOTh7R+IiIiCo+BfH4bOufF5XIhLS2tz/u7du2Cz+fD4sWLu66NHz8eBQUF2LZtW6/P8Xg8cLvd3R5EREQUvQwLL+Xl5fjtb3+L73//+322qa2tRUxMDFJSUrpdz87ORm1tba/PWbt2LZxOZ9cjPz9/KMsmIiKiCDPg8LJ69WoIIYI+SktLuz2nqqoKV199NW666SbcddddQ1Y8AKxZswYul6vrUVlZOaTfn4iIiCKLbaBPWLVqFVasWBG0TXFxcdd/V1dXY9GiRZg/fz6eeeaZoM/LycmB1+tFc3Nzt96Xuro65OTk9Poch8MBh8MRcv1ERERkbQMOL5mZmcjMzAypbVVVFRYtWoSZM2fi+eefh6IE7+iZOXMm7HY7Nm3ahOXLlwMAysrKUFFRgXnz5g20VCIiIopCYZvzUlVVhYULF6KgoAC/+tWvcPLkSdTW1nabu1JVVYXx48djx44dAACn04k777wTK1euxObNm7Fr1y7ccccdmDdvXkgrjYiIiCj6DbjnJVQbN25EeXk5ysvLMXLkyG73Tq/O9vl8KCsrQ3t7e9e9xx9/HIqiYPny5fB4PFiyZAmefvrpcJVJREREFmPoPi9G4D4vRERE1hOx+7wQERERDRbDCxEREVkKwwsRERFZCsMLERERWQrDCxEREVkKwwsRERFZCsMLERERWQrDCxEREVkKwwsRERFZCsMLERERWQrDCxEREVkKwwsRERFZCsMLERERWYrN7AKIiABA6hLy8AnIxjYgIQbKuFwIm2p2WUQUgRheiMh0WmkN/K9tDwSX0+LssF07HbaLLzCvMCKKSAwvRGQqrbwOvmc2A5Ddb3T44P/LZ4Cmw3bZeFNqI6LIxDkvRGQq/1u7AMge2aXr/jtfQHp8htZERJGN4YWITKOfcEMeb+ozuAAAvH7o+44bVhMRRT6GFyIyj7uj/zZCQLo7w18LEVkGwwsRmccZ138bKSFCaUdEwwbDCxGZRslMhihIB0SQRg47lMkjDauJiCIfwwsRmcq+bCagKH0GGNvXZ0DEcGEkEZ3B8EJEplKKMhFzzxUQ2c7uN5JjYf/2PNjmjzWnMCKKWPx1hohMp4zOQsyPr4U83nhqh10HlKJMCJW/XxFRTwwvRBQRhBAQ+elAfrrZpRBRhOOvNURERGQpDC9ERERkKQwvREREZCkML0RERGQpDC9ERERkKQwvREREZCkML0RERGQpDC9ERERkKQwvREREZClRt8OulBIA4Ha7Ta6EiIiIQnX6c/v053gwURdeWlpaAAD5+fkmV0JEREQD1dLSAqfTGbSNkKFEHAvRdR3V1dVISkqCEMLscigEbrcb+fn5qKysRHJystnlUAj4d2Y9/DuzpuH09yalREtLC/Ly8qAowWe1RF3Pi6IoGDlypNll0HlITk6O+h/OaMO/M+vh35k1DZe/t/56XE7jhF0iIiKyFIYXIiIishSGFzKdw+HAI488AofDYXYpFCL+nVkP/86siX9vvYu6CbtEREQU3djzQkRERJbC8EJERESWwvBCRERElsLwQkRERJbC8EIR5bHHHsP8+fMRHx+PlJQUs8uhPjz11FMoLCxEbGws5syZgx07dphdEgXx4Ycf4rrrrkNeXh6EEHjzzTfNLomCWLt2LS666CIkJSUhKysLy5YtQ1lZmdllRRSGF4ooXq8XN910E+655x6zS6E+vPrqq1i5ciUeeeQR7N69G9OmTcOSJUtw4sQJs0ujPrS1tWHatGl46qmnzC6FQrB161bce++9+Oc//4mNGzfC5/PhqquuQltbm9mlRQwulaaItGHDBjzwwANobm42uxQ6x5w5c3DRRRfhySefBBA4Tyw/Px/3338/Vq9ebXJ11B8hBN544w0sW7bM7FIoRCdPnkRWVha2bt2Kyy67zOxyIgJ7XogoZF6vF7t27cLixYu7rimKgsWLF2Pbtm0mVkYUvVwuFwAgLS3N5EoiB8MLEYWsvr4emqYhOzu72/Xs7GzU1taaVBVR9NJ1HQ888AAuvvhiTJ482exyIgbDC4Xd6tWrIYQI+igtLTW7TCKiiHPvvfdi3759eOWVV8wuJaLYzC6Aot+qVauwYsWKoG2Ki4uNKYYGJSMjA6qqoq6urtv1uro65OTkmFQVUXS677778Pbbb+PDDz/EyJEjzS4nojC8UNhlZmYiMzPT7DJoCMTExGDmzJnYtGlT14RPXdexadMm3HfffeYWRxQlpJS4//778cYbb2DLli0oKioyu6SIw/BCEaWiogKNjY2oqKiApmkoKSkBAIwZMwaJiYnmFkcAgJUrV+L222/HrFmzMHv2bKxbtw5tbW244447zC6N+tDa2ory8vKur48cOYKSkhKkpaWhoKDAxMqoN/feey9efvllvPXWW0hKSuqaT+Z0OhEXF2dydZGBS6UpoqxYsQIvvPBCj+ubN2/GwoULjS+IevXkk0/il7/8JWprazF9+nQ88cQTmDNnjtllUR+2bNmCRYsW9bh+++23Y8OGDcYXREEJIXq9/vzzz/c7BD9cMLwQERGRpXC1EREREVkKwwsRERFZCsMLERERWQrDCxEREVkKwwsRERFZCsMLERERWQrDCxEREVkKwwsRERFZCsMLERERWQrDCxEREVkKwwsRERFZCsMLERERWcr/DxnizKSuxFkfAAAAAElFTkSuQmCC\n", - "text/plain": [ - "
" - ] - }, - "metadata": {}, - "output_type": "display_data" - } - ], - "source": [ - "x = np.random.randn(50)\n", - "y = np.random.randn(50)\n", - "plt.scatter(x,y,c=x,cmap='RdPu')" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "在以下官网页面可以查询上述五种colormap的字符串表示和颜色图的对应关系 \n", - "[https://matplotlib.org/stable/tutorials/colors/colormaps.html](https://matplotlib.org/stable/tutorials/colors/colormaps.html)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## 思考题" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "- 学习如何自定义colormap,并将其应用到任意一个数据集中,绘制一幅图像,注意colormap的类型要和数据集的特性相匹配,并做简单解释" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [] - } - ], - "metadata": { - "kernelspec": { - "display_name": "Python 3", - "language": "python", - "name": "python3" - }, - "language_info": { - "codemirror_mode": { - "name": "ipython", - "version": 3 - }, - "file_extension": ".py", - "mimetype": "text/x-python", - "name": "python", - "nbconvert_exporter": "python", - "pygments_lexer": "ipython3", - "version": "3.9.4" - }, - "toc": { - "base_numbering": 1, - "nav_menu": {}, - "number_sections": false, - "sideBar": true, - "skip_h1_title": false, - "title_cell": "Table of Contents", - "title_sidebar": "Contents", - "toc_cell": false, - "toc_position": { - "height": "calc(100% - 180px)", - "left": "10px", - "top": "150px", - "width": "256px" - }, - "toc_section_display": true, - "toc_window_display": true - } - }, - "nbformat": 4, - "nbformat_minor": 4 -} diff --git a/notebook/第四回:文字图例尽眉目.ipynb b/notebook/第四回:文字图例尽眉目.ipynb deleted file mode 100644 index f40ba8d..0000000 --- a/notebook/第四回:文字图例尽眉目.ipynb +++ /dev/null @@ -1,998 +0,0 @@ -{ - "cells": [ - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# 第四回:文字图例尽眉目" - ] - }, - { - "cell_type": "code", - "execution_count": 125, - "metadata": {}, - "outputs": [], - "source": [ - "import matplotlib\n", - "import matplotlib.pyplot as plt\n", - "import numpy as np\n", - "import matplotlib.dates as mdates\n", - "import datetime" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## 一、Figure和Axes上的文本" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Matplotlib具有广泛的文本支持,包括对数学表达式的支持、对栅格和矢量输出的TrueType支持、具有任意旋转的换行分隔文本以及Unicode支持。" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "### 1.文本API示例" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "下面的命令是介绍了通过pyplot API和objected-oriented API分别创建文本的方式。\n", - "\n", - "| pyplot API | OO API | description |\n", - "| ---------- | ------- | ------------ |\n", - "| `text` | `text` | 在子图axes的任意位置添加文本|\n", - "| `annotate` | `annotate` | 在子图axes的任意位置添加注解,包含指向性的箭头|\n", - "| `xlabel` | `set_xlabel` | 为子图axes添加x轴标签 |\n", - "| `ylabel` | `set_ylabel` | 为子图axes添加y轴标签 |\n", - "| `title` | `set_title` | 为子图axes添加标题 |\n", - "| `figtext` | `text` | 在画布figure的任意位置添加文本 |\n", - "| `suptitle` | `suptitle` | 为画布figure添加标题 |" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "通过一个综合例子,以OO模式展示这些API是如何控制一个图像中各部分的文本,在之后的章节我们再详细分析这些api的使用技巧" - ] - }, - { - "cell_type": "code", - "execution_count": 28, - "metadata": {}, - "outputs": [ - { - "data": { - "image/png": "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\n", - "text/plain": [ - "
" - ] - }, - "metadata": { - "needs_background": "light" - }, - "output_type": "display_data" - } - ], - "source": [ - "\n", - "fig = plt.figure()\n", - "ax = fig.add_subplot()\n", - "\n", - "\n", - "# 分别为figure和ax设置标题,注意两者的位置是不同的\n", - "fig.suptitle('bold figure suptitle', fontsize=14, fontweight='bold')\n", - "ax.set_title('axes title')\n", - "\n", - "# 设置x和y轴标签\n", - "ax.set_xlabel('xlabel')\n", - "ax.set_ylabel('ylabel')\n", - "\n", - "# 设置x和y轴显示范围均为0到10\n", - "ax.axis([0, 10, 0, 10])\n", - "\n", - "# 在子图上添加文本\n", - "ax.text(3, 8, 'boxed italics text in data coords', style='italic',\n", - " bbox={'facecolor': 'red', 'alpha': 0.5, 'pad': 10})\n", - "\n", - "# 在画布上添加文本,一般在子图上添加文本是更常见的操作,这种方法很少用\n", - "fig.text(0.4,0.8,'This is text for figure')\n", - "\n", - "ax.plot([2], [1], 'o')\n", - "# 添加注解\n", - "ax.annotate('annotate', xy=(2, 1), xytext=(3, 4),arrowprops=dict(facecolor='black', shrink=0.05));" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "### 2.text - 子图上的文本" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "text的调用方式为`Axes.text(x, y, s, fontdict=None, **kwargs) ` \n", - "其中`x`,`y`为文本出现的位置,默认状态下即为当前坐标系下的坐标值, \n", - "`s`为文本的内容, \n", - "`fontdict`是可选参数,用于覆盖默认的文本属性, \n", - "`**kwargs`为关键字参数,也可以用于传入文本样式参数" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "重点解释下fontdict和\\*\\*kwargs参数,这两种方式都可以用于调整呈现的文本样式,最终效果是一样的,不仅text方法,其他文本方法如set_xlabel,set_title等同样适用这两种方式修改样式。通过一个例子演示这两种方法是如何使用的。" - ] - }, - { - "cell_type": "code", - "execution_count": 46, - "metadata": {}, - "outputs": [ - { - "data": { - "image/png": "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\n", - "text/plain": [ - "
" - ] - }, - "metadata": { - "needs_background": "light" - }, - "output_type": "display_data" - } - ], - "source": [ - "fig = plt.figure(figsize=(10,3))\n", - "axes = fig.subplots(1,2)\n", - "\n", - "# 使用关键字参数修改文本样式\n", - "axes[0].text(0.3, 0.8, 'modify by **kwargs', style='italic',\n", - " bbox={'facecolor': 'red', 'alpha': 0.5, 'pad': 10});\n", - "\n", - "# 使用fontdict参数修改文本样式\n", - "font = {'bbox':{'facecolor': 'red', 'alpha': 0.5, 'pad': 10}, 'style':'italic'}\n", - "axes[1].text(0.3, 0.8, 'modify by fontdict', fontdict=font);" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "matplotlib中所有支持的样式参数请参考[官网文档说明](https://matplotlib.org/stable/api/_as_gen/matplotlib.axes.Axes.text.html#matplotlib.axes.Axes.text),大多数时候需要用到的时候再查询即可。 \n", - "\n", - "下表列举了一些常用的参数供参考。\n", - "\n", - "| Property | Description |\n", - "| ------------------------ | :-------------------------- |\n", - "| `alpha` |float or None 透明度,越接近0越透明,越接近1越不透明 | \n", - "| `backgroundcolor` | color 文本的背景颜色 |\n", - "| `bbox` | dict with properties for patches.FancyBboxPatch 用来设置text周围的box外框 |\n", - "| `color` or c | color 字体的颜色 |\n", - "| `fontfamily` or family | {FONTNAME, 'serif', 'sans-serif', 'cursive', 'fantasy', 'monospace'} 字体的类型|\n", - "| `fontsize` or size | float or {'xx-small', 'x-small', 'small', 'medium', 'large', 'x-large', 'xx-large'} 字体大小|\n", - "| `fontstyle` or style | {'normal', 'italic', 'oblique'} 字体的样式是否倾斜等 |\n", - "| `fontweight` or weight | {a numeric value in range 0-1000, 'ultralight', 'light', 'normal', 'regular', 'book', 'medium', 'roman', 'semibold', 'demibold', 'demi', 'bold', 'heavy', 'extra bold', 'black'} 文本粗细| \n", - "| `horizontalalignment` or ha | {'center', 'right', 'left'} 选择文本左对齐右对齐还是居中对齐 |\n", - "| `linespacing` | float (multiple of font size) 文本间距 |\n", - "| `rotation` | float or {'vertical', 'horizontal'} 指text逆时针旋转的角度,“horizontal”等于0,“vertical”等于90 |\n", - "| `verticalalignment` or va | {'center', 'top', 'bottom', 'baseline', 'center_baseline'} 文本在垂直角度的对齐方式 |\n", - " \n", - "\n" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "### 3.xlabel和ylabel - 子图的x,y轴标签" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "xlabel的调用方式为`Axes.set_xlabel(xlabel, fontdict=None, labelpad=None, *, loc=None, **kwargs)` \n", - "ylabel方式类似,这里不重复写出。 \n", - "其中`xlabel`即为标签内容, \n", - "`fontdict`和`**kwargs`用来修改样式,上一小节已介绍, \n", - "`labelpad`为标签和坐标轴的距离,默认为4, \n", - "`loc`为标签位置,可选的值为'left', 'center', 'right'之一,默认为居中" - ] - }, - { - "cell_type": "code", - "execution_count": 74, - "metadata": {}, - "outputs": [ - { - "data": { - "image/png": "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\n", - "text/plain": [ - "
" - ] - }, - "metadata": { - "needs_background": "light" - }, - "output_type": "display_data" - } - ], - "source": [ - "# 观察labelpad和loc参数的使用效果\n", - "fig = plt.figure(figsize=(10,3))\n", - "axes = fig.subplots(1,2)\n", - "axes[0].set_xlabel('xlabel',labelpad=20,loc='left')\n", - "\n", - "# loc参数仅能提供粗略的位置调整,如果想要更精确的设置标签的位置,可以使用position参数+horizontalalignment参数来定位\n", - "# position由一个元组过程,第一个元素0.2表示x轴标签在x轴的位置,第二个元素对于xlabel其实是无意义的,随便填一个数都可以\n", - "# horizontalalignment='left'表示左对齐,这样设置后x轴标签就能精确定位在x=0.2的位置处\n", - "axes[1].set_xlabel('xlabel', position=(0.2, _), horizontalalignment='left');" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "### 4.title和suptitle - 子图和画布的标题" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "title的调用方式为`Axes.set_title(label, fontdict=None, loc=None, pad=None, *, y=None, **kwargs)` \n", - "其中label为子图标签的内容,`fontdict`,`loc`,`**kwargs`和之前小节相同不重复介绍 \n", - "`pad`是指标题偏离图表顶部的距离,默认为6 \n", - "`y`是title所在子图垂向的位置。默认值为1,即title位于子图的顶部。 \n", - "\n", - "suptitle的调用方式为`figure.suptitle(t, **kwargs)` \n", - "其中`t`为画布的标题内容" - ] - }, - { - "cell_type": "code", - "execution_count": 96, - "metadata": {}, - "outputs": [ - { - "data": { - "image/png": "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\n", - "text/plain": [ - "
" - ] - }, - "metadata": { - "needs_background": "light" - }, - "output_type": "display_data" - } - ], - "source": [ - "# 观察pad参数的使用效果\n", - "fig = plt.figure(figsize=(10,3))\n", - "fig.suptitle('This is figure title',y=1.2) # 通过参数y设置高度\n", - "axes = fig.subplots(1,2)\n", - "axes[0].set_title('This is title',pad=15)\n", - "axes[1].set_title('This is title',pad=6);" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "### 5.annotate - 子图的注解" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "annotate的调用方式为`Axes.annotate(text, xy, *args, **kwargs)` \n", - "其中`text`为注解的内容, \n", - "`xy`为注解箭头指向的坐标, \n", - "其他常用的参数包括: \n", - "`xytext`为注解文字的坐标, \n", - "`xycoords`用来定义xy参数的坐标系, \n", - "`textcoords`用来定义xytext参数的坐标系, \n", - "`arrowprops`用来定义指向箭头的样式 \n", - "annotate的参数非常复杂,这里仅仅展示一个简单的例子,更多参数可以查看[官方文档中的annotate介绍](https://matplotlib.org/stable/tutorials/text/annotations.html#plotting-guide-annotation)" - ] - }, - { - "cell_type": "code", - "execution_count": 110, - "metadata": {}, - "outputs": [ - { - "data": { - "image/png": "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\n", - "text/plain": [ - "
" - ] - }, - "metadata": { - "needs_background": "light" - }, - "output_type": "display_data" - } - ], - "source": [ - "fig = plt.figure()\n", - "ax = fig.add_subplot()\n", - "ax.annotate(\"\",\n", - " xy=(0.2, 0.2), xycoords='data',\n", - " xytext=(0.8, 0.8), textcoords='data',\n", - " arrowprops=dict(arrowstyle=\"->\", connectionstyle=\"arc3,rad=0.2\")\n", - " );" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - " ### 6.字体的属性设置\n", - " 字体设置一般有全局字体设置和自定义局部字体设置两种方法。" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - " [为方便在图中加入合适的字体,可以尝试了解中文字体的英文名称,该链接告诉了常用中文的英文名称](https://www.cnblogs.com/chendc/p/9298832.html)" - ] - }, - { - "cell_type": "code", - "execution_count": 113, - "metadata": {}, - "outputs": [], - "source": [ - "#该block讲述如何在matplotlib里面,修改字体默认属性,完成全局字体的更改。\n", - "plt.rcParams['font.sans-serif'] = ['SimSun'] # 指定默认字体为新宋体。\n", - "plt.rcParams['axes.unicode_minus'] = False # 解决保存图像时 负号'-' 显示为方块和报错的问题。" - ] - }, - { - "cell_type": "code", - "execution_count": 115, - "metadata": {}, - "outputs": [ - { - "data": { - "image/png": "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\n", - "text/plain": [ - "
" - ] - }, - "metadata": { - "needs_background": "light" - }, - "output_type": "display_data" - } - ], - "source": [ - "#局部字体的修改方法1\n", - "x = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]\n", - "plt.plot(x, label='小示例图标签')\n", - "\n", - "# 直接用字体的名字\n", - "plt.xlabel('x 轴名称参数', fontproperties='Microsoft YaHei', fontsize=16) # 设置x轴名称,采用微软雅黑字体\n", - "plt.ylabel('y 轴名称参数', fontproperties='Microsoft YaHei', fontsize=14) # 设置Y轴名称\n", - "plt.title('坐标系的标题', fontproperties='Microsoft YaHei', fontsize=20) # 设置坐标系标题的字体\n", - "plt.legend(loc='lower right', prop={\"family\": 'Microsoft YaHei'}, fontsize=10) ; # 小示例图的字体设置" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## 二、Tick上的文本" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "设置tick(刻度)和ticklabel(刻度标签)也是可视化中经常需要操作的步骤,matplotlib既提供了自动生成刻度和刻度标签的模式(默认状态),同时也提供了许多让使用者灵活设置的方式。" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "### 1.简单模式\n", - "可以使用axis的`set_ticks`方法手动设置标签位置,使用axis的`set_ticklabels`方法手动设置标签格式" - ] - }, - { - "cell_type": "code", - "execution_count": 117, - "metadata": {}, - "outputs": [], - "source": [ - "x1 = np.linspace(0.0, 5.0, 100)\n", - "y1 = np.cos(2 * np.pi * x1) * np.exp(-x1)" - ] - }, - { - "cell_type": "code", - "execution_count": 118, - "metadata": {}, - "outputs": [ - { - "data": { - "image/png": "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\n", - "text/plain": [ - "
" - ] - }, - "metadata": { - "needs_background": "light" - }, - "output_type": "display_data" - } - ], - "source": [ - "# 使用axis的set_ticks方法手动设置标签位置的例子,该案例中由于tick设置过大,所以会影响绘图美观,不建议用此方式进行设置tick\n", - "fig, axs = plt.subplots(2, 1, figsize=(5, 3), tight_layout=True)\n", - "axs[0].plot(x1, y1)\n", - "axs[1].plot(x1, y1)\n", - "axs[1].xaxis.set_ticks(np.arange(0., 10.1, 2.));" - ] - }, - { - "cell_type": "code", - "execution_count": 119, - "metadata": {}, - "outputs": [ - { - "data": { - "image/png": "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\n", - "text/plain": [ - "
" - ] - }, - "metadata": { - "needs_background": "light" - }, - "output_type": "display_data" - } - ], - "source": [ - "# 使用axis的set_ticklabels方法手动设置标签格式的例子\n", - "fig, axs = plt.subplots(2, 1, figsize=(5, 3), tight_layout=True)\n", - "axs[0].plot(x1, y1)\n", - "axs[1].plot(x1, y1)\n", - "ticks = np.arange(0., 8.1, 2.)\n", - "tickla = [f'{tick:1.2f}' for tick in ticks]\n", - "axs[1].xaxis.set_ticks(ticks)\n", - "axs[1].xaxis.set_ticklabels(tickla);" - ] - }, - { - "cell_type": "code", - "execution_count": 120, - "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "\n" - ] - }, - { - "data": { - "image/png": "iVBORw0KGgoAAAANSUhEUgAAAagAAAEYCAYAAAAJeGK1AAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjQuMiwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8rg+JYAAAACXBIWXMAAAsTAAALEwEAmpwYAAA+W0lEQVR4nO3dd3hc5ZX48e+ZolHvkq1my5bl3i0XjDsQiGkhZEkIJBCKSVhKNrsk+9tkk80mm93N7iYBkoWYJEDoGwhplGCqjcE2snEvsi3bsmVZ1eptyvv7Y66MEbItj2Y0o9H5PM88ujN6595zpZl77lvue8UYg1JKKRVpbOEOQCmllOqLJiillFIRSROUUkqpiKQJSimlVETSBKWUUioiOcIdQI/MzExTWFgY7jCUUkoNss2bN9cZY7J6vx4xCaqwsJDS0tJwh6GUUmqQiciRvl7XJj6llFIRKaAEJSILReT5c5S5V0RuEpF7AgtNKaXUcBZQgjLGvAe0nun3IlIM5BhjHgfSRGRigPH1W0unm4ffOciJps5Qb0oppdQgCFUT33Jgk7W8DVjaVyERWSUipSJSWltbO6ANNra7+fGre3l0/aEBrUcppVRkCFWCygSareVWIL2vQsaY1caYEmNMSVbWJwZwnJeC9HhWTsvh6Y0VtHS6B7QupZRS4ReqBFUPJFnLSdbzkLtjSREtXR6e2VQxGJtTSikVQgNOUCLiFJHRvV5+C5hrLc8A3h7odvpjWn4KC4sy+M27h+n2+AZjk0oppUIk0FF8S4DFInI1MBt48PTfG2PKgGoRuQlosJ4PilVLxnKiuZM/bTs+WJtUSikVAgFdqGuMWQsUnfbSVX2UuT/QoAZi6fgsJo5M4pG15Vw7Ow8RCUcYSimlBijqLtQVEVYtGcu+6hbeLhvYyECllFLhE3UJCuDKGbnkpMTyyNrycIeilFIqQFGZoJx2G38zJ58N5fU065BzpZQakqIyQQEsKMrAZ6D0cEO4Q1FKKRWAqE1Qs0elEWO3saFcE5RSSg1FUZugYp12Zo5KZWP5oFwjrJRSKsiiNkEBLBiTzo7KJp36SCmlhqDoTlBje/qhToY7FKWUUucpqhPUrJ5+qEPazKeUUkNNVCeouBg7MwpSdKCEUkoNQVGdoMDfzLezsonWLk+4Q1FKKXUehkWC8vqMXg+llFJDTNQnqNmj0nDaRZv5lFJqiIn6BBUXY2dGfiob9HoopZQaUqI+QQHMH+u/HqpN+6GUUmrIGBYJqqcf6gPth1JKqSFjWCSo2aPSsAl8WNEY7lCUUkr107BIUAkuB0VZiew63hTuUJRSSvXTsEhQAFPzUthZ2RzuMJRSSvXTsElQU3KTOdHcSW1LV7hDUUop1Q/DJkFNzUsBYKc28yml1JAwbBLU5NxkAHZVaoJSSqmhYNgkqORYJ2MyE7QfSimlhghHoG8UkXuBRiDFGPPAGcqsBw5ZT79rjCkPdHvBMCU3ma1HG8MZglJKqX4KqAYlIsVAjjHmcSBNRCaeoehDxpgbrUdYkxP4+6GOnezgZFt3uENRSil1DoE28S0HNlnL24ClZyi3QETuFpEHReQT2xKRVSJSKiKltbW1AYbSf1Nz/QMldh3XZj6llIp0gSaoTKDnKN8KpJ+h3C+MMQ8CW4AlvX9pjFltjCkxxpRkZWUFGEr/TbEGSuhIPqWUinyBJqh6IMlaTrKef4yIxAInrafHgJEBbito0hJiyE+LY6eO5FNKqYgXaIJ6C5hrLc8A3hGR0b3KXAZcZy0XAGUBbiuopuamaBOfUkoNAQElKGNMGVAtIjcBDUAq8GCvYq8BHSJyFZBsjNkykECDZWpeMofq2mjudIc7FKWUUmcR8DBzY8z9vV66qtfv24FHAl1/qEyxZpTYfbyZBWMzwhyNUkqpMxk2F+r26BnJNxT7oRrauqlv1bkElVLDQ8A1qKEqK8nFyOTYIdUP1d7t4eG3D/LLteV4fIZl47P4m5J8VkwcQYxj2J1jKKWGiWGXoMDfD7VjCNSgjDH8adtx/uOVvVQ1dXLVjFzy0uL4/ZZjvPFkDZmJMfzm5rlMz08Nd6hKKRV0w/L0e3JuCuW1rXR0e8Mdylk9ueEI9z67lYzEGH731Qt44PpZfOuyiaz/1goe/cpcXA47tz5eyvHGjnCHqpRSQTc8E1ROMj4D+6pbwh3KGR1v7OA/XtnL4uJM/vi3i5hb+NG10A67jeUTsnn0K3Pp7PZyy2Mf0NrlCWO0SikVfMMyQfXMKLE7QvuhjDH88x924jPwo2umYbdJn+XGj0jiFzfMZn9NK3c/vQWP1zfIkSqlVOgMywSVnxZHksvB7qrI7Id6aUcVb+yt4RuXjKcgPf6sZZeMz+Jfr57CW/tq+fFf9w1ShEopFXrDMkGJCJNykyOyBtXU7uZf/rSbaXkpfOXCwn6954b5o/ni/FH8al15RO6TUkoFYlgmKPD3Q+090YLXZ8Idysf8x6t7ONnezX9cOw2Hvf//nm9dOpGUOCff//MujImsfVJKqUAM3wSVm0x7t5cj9W3hDuWUmuZOfld6jBvnj2KKdUFxf6XEO/n7T01g46EGXt5xIkQRKqXU4Bm+CSrHGihRFTlNYs99cBSPz3DTwsKA3n/9vFFMyknm317aHfFD6JVS6lyGbYIqHpGIwyYR02fj9Rme2VTBheMyGJuVGNA67Dbh+1dN4XhTJw+/czDIESql1OAatgnK5bAzLjsxYmpQb+2t4XhTJzfO733XkvMzb0w6V0zP4eF3DlKpF/AqpYawYZugwN/MtydCEtSTG4+QneTi4skjBryu/7dyEsbAg2/sD0JkSikVHsM7QeUmU93cRV2YZwg/2tDOO2W1fGHeKJznMXLvTPJS4/ji/FH8bvOxiBoEopRS52NYThbbo2egxJ6qZhYXZ4Utjqc2VmAT4fp5BUFb553LinhmUwUPvHGA/7luRtDWGyqN7d38fksl7x2sp9PtpcvjpdvjoygrkRWTsllcnEVKnDPcYSqlBtGwTlCTcj6a8ihcCarL4+X/So9y0cRsclLigrbe7ORYvrRgNL9Zf4g7lxdRFODAi1DbfOQkT7x/mJd3nqDb42NsVgKpcU5cDjuxcXbe3FfD7z+sxGETLijK4N6Liik5bV5CpVT0GtYJKi0hhtyU2LAOlFizu5qGtm5uXDCwwRF9+eqyIp7eVMH9r+/ngetnBX39A+H2+vjvv+7jl2vLSYp1cP3cAr5gDZM/ncfrY+vRRt7YW8MLm4/xuYff51OTR/DNyyYyLjsyk65SKjiGdYICfz9UOIeav7S9iqwkFxeOywz6ujMTXdy0sJCH3znIXSvGMX5EUtC3EYjKxg7ufnoLWyoa+eL8UXzn8knEx/T9UXTYbZQUplNSmM7dK8bxm3cP8fA75Vz6s7XcvLCQ+y6dQKzTPsh7oJQaDMN6kAT4+6EO1rbS6R78C1vbuz28ta+Gy6aMPOOM5QO1avFYEmIc/HRNWUjWf77eO1DHyvvXUVbdyoPXz+JH10w7Y3LqLT7GwV0rinnnvmV8fm4Bv373EFc8+C47jkXmpL9KqYHRGlSudW+oEy3MKEgd1G2/va+WTrePT08bGbJtpCXEcMuiMTzwxn52HGtiWv75TaEUTO8drOMrj33A6Ix4Vn+phMLMhIDWk5Ho4kfXTOOyKSO57/ltXPO/67nnomLuXFZ0XvMXDiZjDEcbOthR2URtSycN7W5OtnXT5fGS4HKQ6HKQFOugIC2eouxECjMSiHFE5r4oNVg0QeX4D9i7jjcPeoJ6eUcVGQkxzB+TEdLt3LZ4DL99/zD/9do+fnvLvJBu60w2HWrg1sdKGZUez9O3LyAz0TXgdS4Zn8VrX1/KP/9xJz9ZU8baslp+9oWZ5Ked/RYlg+VoQzuv7KzivYP1bDvayMl296nfiUBqnJMYh422Li9t3R5On+PXbhPGZiYwZ3Qac0anMbcwndEZ8YiEpqatVCQKOEGJyL1AI5BijHkg0DLhVpAeR1Ksgx2Vg9tM1On28ubeGj4zKy9kzXs9kmOd3LmsiB+9vJcN5fUsGBvahNjb5iMn+cqjm8hJjeWp2+cHJTn1SIl38sD1s1g+MYvvvLiTlfev4z+unc7KaTlB28b5qG3p4vdbjvHSjiq2W02P40ck8qnJI5lRkMr0/BRyU+NIiXN+7P/u8xlauz1U1LdzsLaVAzWt7Kxs4uUdVTz7wVEAclJiuXBcJovGZbJwXAbZSbFh2cfTebw+qpo6qW7upLq5i5qWTk62u2nt9NDa5aa924vPGIwBY8BuF+KdduJi/I+UOCdp8TGkxTtJT3CRleR/JLqG/bmzIsAEJSLFQI4x5n4R+Z6ITDTG7D3fMpFARJien8L2Y42Dut2399XS3u1l5dTBOZB++YJCfv3uIf7rr/t4/qsXDNqZ+P7qFm5+dBNZSS6euX1ByA6q18zKZ/aoNO55dit3PrWFz83J558vn0xKfOivnTLGsOlQA09urODVnVW4vYbp+Sn846cnsnJqDqMyzl2js9mE5FgnU/NSmJr3UTOsz2c4UNvKpkMNvH+wntf3VPP85mMAjMtOZGFRBguLMpgzOp2spOAl/t77V9vSxYGaVg5YyfNQXRsVDe1UnuzA08ctaxKtZsv4GDs2myD4a40en6Gz20u720t7l5fuM9wFOj7GTlaSi+wkF9lJsWQluchMjCEj0UVmoovUeCcpcU5S45wkxTpxOWzY+nmi5/b66HB76ej20tLpobXLQ2unh5ZON82dblo6PTR3ek4l2dYuD61dXjq6PbR3e+lwe+ly++j2+uhye/H6DF5j8PnAYBARbAI2Eew2wWm34bB+upw2XA47LoeNWKeNWKedWIc/Wcf2/O60Mi6HjRiHDYfNhsMuxNht2G2CzdpG7++xMf5YvD6Dzxg8XoPHZz28PtxeH26vwe314bF+nnru8y97rfI+n8Hj8+Ez/vX6DPh63con0eXg51+c3b8PUgACPU1ZDmyylrcBS4HeyeecZURkFbAKYNSoUQGGMnDT81N5ZG05nW7voI0Ie2VnFWnxTuaPHZxremKddu65qJhvv7iTt/bVsGLiwKdUOpf61i5uefwDXA47T942nxHJoT3jH52RwPNfvYD7X9/PQ+8c5J2yWn74malcOiU0fXydbi9/2nqc36w/xN4TLSTFOrhxwWhumD86aEPgbTZh/Igkxo9I4sYFo/H5DLurmll/oI73Dtbz/OZj/Pb9I4D/TtEzrVra2MxExmQlUJAW36++LGMMJ9vdHG1op8J6lNe2cbC2lYO1rbR0ek6VTXQ5GJOZwLS8FK6YnsOo9HhGpsSRneRiRHIsqXHOfiULYwydbh8n27s52d5NQ1s3tS1d1LZ0UXPqZyd7TjSzdn/Xx2LoS6zTRpzTjt1mw24DuwgGTh2cPV5Dp8eL29u/+6X1JNkEl91Ktg5GJjuJjTktedhtOE5LGiL+mqLBf4D3+rCSgI9uj48ur48ut48ujz/JNbR10+n20un2WT+9dHr8ZUPNbhMcNrH2QXDYbThtgt0uOGz+fbJb+3T6/p3+n/X0828ZqEATVCZQbi23ApMCKWOMWQ2sBigpKQnbXfZm5Kfisb74s0elhXx7nW4vb+yp4fJpOUGZ2qi/rispYPXacv7rr2UsG5/d7zPOQHS6vax6YjM1zV08d8cFg9Yv5LTb+IdLJ3DZ1JHc9/x27nhiM5dPy+Gbl01gdEZggzJ6O9HUydObKnhqwxHq27qZODKJ/7x2GlfNyCMuJrQnODabnKpl3bG0iG6Pj+3HGvmwopGtR/0//7K96lR5u01Is2obKXFOElwOfD1n2D5o7nRT39bNybbuT9SERiS7KMpK5DMz8yjKSmBcdhLjshMZkewKSg1cRKymvjhyU899kXqn20tDWzd1rV00trtp6vA/Wjo9dFgH945u76mz/56zfYdVg3HYhTin3f+IsRPrtJMU6x+ckhDjICnWSXKc/2eiyxHypvez8fkM3V5/La3bc3ptx4fvtNqM12eQ01LG6cmkJwE5rITjsAlOx0e1uXDuX38FmqDqgZ6LapKs54GUiQgzCvxNKtuPNg5Kgnp3fx2tXZ6Qjt7ri9Nu4xuXjOfeZ7fy/JZjXFcSvKmVTmeM4VsvbGfzkZP87w2zmTnIg08Apual8Ke7LuSX7xzkwTcP8OquE3x2Vh53rRgXUKLy+gxr99fy9MYK3txbg9dnuGhiNrcuGsMFRRlhG7wQ4/joOrEeje3dHKprO/Woa+2m+bSDec+Zsc0G+WnxzCxIJT0hhsxEFwXp8YxKjyc/LY6ECOsHinXayU3tXzIb6mw2IdZmH/bX+AX6CXwLuBl4EZgBPCMio40xR85S5unAwwytkcn+Nu7tg3Q9zcs7q0iOdbCwKPgX557LldNzeeL9I/zo5T1cNDGbjCAOWOhx/xv7+ePW49x36YSwDVYAf0K+a0Ux15UU8NA7B3l6YwW//7CSiyZmc/GkESybmHXWPrG2Lg/vHqjjzT01vLmvhtqWLjITY7h98Viun1cQtBpZsKXGxzBrVAyzBuFkS6lQCihBGWPKRKRaRG4CGoBU4NvAVWcqY4yJjCtF+yAizMhPYdsgDJRwe328vruaSyaPDMt1Ljab8KPPTuPyB9bxby/t4SefnxnU9f/hw0p+9vp+rp2dz53LioK67kBlJ8fyvSun8LWlRaxeW85ftlfx2u5qwH+hdk5KLKnWSLJOj5cj9e0cbWjnmDUAICnWwdLxWXx6ag6XTB6h1ycpNUgCrsMbY+7v9dJV/SgTsabnp/LG3hpaOt0kxYZu5NcHhxpo7vTwqSmhH6RwJuNHJHHHkiJ+/tYBrp2TH7RpljYdauCbz29nwdh0/v2z0yLump3s5Fi+c8Vkvn35JPZUtfDm3mo2HmrgeFMne6qaOdnuJsZhY3RGPFPyUrh8eg6LxmVRUpg2qH2FSim/yGpkDqPp+SkYAzsqm0La9Pba7mpcDhuLiwe/ee90d60Yx1+2H+fbL+7g1a8vGXBb96G6Nu54opT8tDgevnFORNcyRITJuclMzk3mrnAHo5Q6o8g9igyy6fmpAGw7Grp+KGMMa3ZXs2hcZr/nnwuVWKedf7tmGofr27l/gHferWnu5JbHPkBEePQrc0mNjwlSlEqp4UwTlCU9IYaC9LiQXrC7p6qFysYOLgnCbd2D4cJxmVxXks9Dbx/kBeviz/NV1dTB51dvoLq5k0e+PCdiBw4opYYebeI7zfT8VLZWNIZs/a/vqUYELpoUGQkK4AefmUplYwfffGE7aQnO87qA99jJdr74yEZOtnXzxK3zmDNabySolAoerUGdZkZ+CpWNHdS1doVk/Wt2VzOzIDVkU9IEwuWw88svlTA5J5k7n9pC6eGGfr2vvLaVz/9yA43t3Txx23xNTkqpoNMEdZqefqhQNPNVNflvtRApzXunS3Q5eOwrc8lNieOWxz7gpe1V+PqYXw38V/Pf//p+Pn3/Otq7PTx9+4KwXIirlIp+mqBOMy0vBZuEZqDE69Z1N5+KwAQF/nss/fbWeYxIjuVvn97CygfW8coOf6Jq6XRzqK6NV3ZUcenP1vLT18u4ZPIIXrl3yccmNlVKqWDSPqjTJLgcjMtODEkNas2eGsZkJlCUFZxJREMhPy2eV7++hD9vO84Db+zna09twWmXj02uOTYrgSdvnc+iMA+TV0pFP01QvUzPT+WtvTUYY4J2oWlLp5v3D9Zx88LCiLt4tTe7TfjMrDyunJHLX7YfZ9fxZjISYqxbH8Qyd0waLsfwnh9MKTU4NEH1Mrcwjec3H6OsupUJI5PO/YZ+eKesFrfXcMnkwZ0cdiDsNuHqmXlcPTMv3KEopYYp7YPqZVFxFgDr9tcGbZ0v76giM9HFnNE6eadSSvWXJqhe8lLjGJuVwLsH6oKyvrYuD2/urWHltJFD4v4rSikVKTRB9WHxuEw2lNfT5fEOeF1v7q2h0+3j8jDedkIppYYiTVB9WFScRafbx+YjJwe8rpe2V5Gd5PrYDeWUUkqdmyaoPiwYm47DJry7f2DNfK1dHt7aV8PKaTnavKeUUudJE1QfkmKdzBqVyroBJqg39lTT5fFx+XRt3lNKqfOlCeoMFo3LYufxJk62dQe8jpe2VzEi2cUcvfW2UkqdN01QZ7CoOBNjYP3BwGpRLZ1u3i6rZeW0HGzavKeUUudNE9QZzMhPISnWwbqywBLUG3tq6Pb4uEKb95RSKiCaoM7AYbexsCiDdw/UYUzfM3ufzV+2V5GbEsusAm3eU0qpQGiCOotFxVlUNnZwqK7tvN5X1dTB2/tquGJGrjbvKaVUgDRBncUSa8but/ed37RHj60/jAG+tGB0CKJSSqnhIaAEJSL3ishNInLPOcqtF5EnrcfYwEIMn9EZCUzNS+bJjUfOeAO/3lo63Ty9sYKV03IoSI8PcYRKKRW9zjtBiUgxkGOMeRxIE5GJZyn+kDHmRutRHnCUYbRqSRHltW28vqe6X+Wf3XSUli4Pty8eE+LIlFIqugVSg1oObLKWtwFLz1J2gYjcLSIPisiQbE5cOXUk+WlxrF577vzq9vr4zfpDLBibfur28UoppQJzzqQhIheLyG09DyALaLZ+3QqcbZK5XxhjHgS2AEv6WPcqESkVkdLa2uDd3iKYHHYbty4aQ+mRk+ecm++l7VVUNXWyasmQa81USqmIc84EZYx53Rjzq54HUAf03MkvCajv630iEgv0HNGPAZ+4W58xZrUxpsQYU5KVlRXQDgyG60oKSIlzsnrtwTOWMcbwy7XlFGcnsmx89iBGp5RS0SmQZre3gLnW8gzgbRFxikjvIWuXAddZywVAWWAhhl+Cy8GXFozmtd3VlNe29llmze5q9lQ1c/visTq0XCmlguC8E5QxpgyoFpGbgAbr+WzgwV5FXwM6ROQqINkYs2XA0YbRTQsLcdptPLLu0Cd+t/5AHfc8+yETRiRx9azcMESnlFLRxxHIm4wx9/d6vhG4qtdr7cAjgYcWWbKSXFw7O5/nPqhABL5+UTHZybGsLavl9t+WMiYzgSdvm4/LYQ93qEopFRUCSlDD1T+tnIjLYePJDUd4cUsl18zO4/nNxyjKSuSp2+aTnhAT7hCVUipqDMmh3+GSFOvkX66awuvfWMqKSdk8vbGC8SMSeeZ2TU5KKRVsEshEqKFQUlJiSktLwx3GeSmvbWVkSizxMVoRVUqpQInIZmNMSe/X9cg6AGOzEsMdglJKRS1t4lNKKRWRNEEppZSKSBHTByUitcCRIKwqE/9sF9FO9zO66H5GF93P8zPaGPOJ6YQiJkEFi4iU9tXZFm10P6OL7md00f0MDm3iU0opFZE0QSmllIpI0ZigVoc7gEGi+xlddD+ji+5nEERdH5RSSqnoEI01KKWUUlFAE5RSSqmIpAlKKaVURIqqBCUi94rITSJyT7hjCRURWSgiz4c7jlATkVgRuUVErhSRH4pIVH1We4hIjIjcKiKfFZGvhzueUBORMSLyi3DHEUoisl5EnrQeY8MdT6iIyHIRuVREHhWR9FBsI2q+9CJSDOQYYx4H0kRkYrhjCgVjzHtA3/edjy6XAV5jzJ+BKmBmeMMJmUlAujHm90BBqL7oEWQ+kBDuIELsIWPMjdajPNzBhIKIZAHjjTF/Bb5mjGkIxXaiaTbz5cAma3kbsBTYG75w1AC9DWRYyznA4bBFEkLGmG0issN66gRawhlPKInIpcAr+E8+otkCEUkDxgP3GmN84Q4oBC4DCkXkbmCCiHzLGNMW7I1ETQ0K/5xQzdZyKxDtZ6JRzRjTaIw5KCLjgAOhOkOLFCJyH7DXGOMOdyyhICIjgTZjTFO4YxkEvzDGPAhsAZaEO5gQyQUqrP18Abg2FBuJpgRVDyRZy0nWczWEWQe1WcaYx8IdSygZY3zGmP8CvCLy6XDHEyIzAIeILANGisjU8IYTGiISC5y0nh4DRoYxnFDqACqt5WP4WzmCLpoS1FvAXGt5Bv4mIjVEWV/0lcaY34mIU0RmhDumUBCRBSJyo/X0BFAUznhCxRjzV2PM28aYt4ETxpid4Y4pRC4DrrOWC4CyMMYSSh8Ac6zlkcC+UGwkahKUMaYMqBaRm4AG63nUEZElwGIRuVpEJNzxhNBtwKUi8iTwJuANczyhcgjIFZGrgNnAY+ENJ3TE73PAFGtQUzR6Deiw/p/Jxpgt4Q4oFIwx7wNY/89JwJ9DsR2d6kgppVREipoalFJKqeiiCUoppVRE0gSllFIqImmCUkopFZE0QSmllIpImqCUUkpFJE1QSimlIpImKKWUUhFJE5RSSqmIpAlKKaVURIqY+0FlZmaawsLCcIehlFJqkG3evLnOGJPV+/WISVCFhYWUlpaGOwyllFKDTESO9PW6NvEppZSKSAElKBFZKCLPn6PMvSJyk4jcE1hoSimlhrOAEpQx5j38t1Xvk3WvlxxjzONAmohMDDC+fqtq6uDeZz+krLol1JtSSik1CELVxLcc2GQtbwOW9lVIRFaJSKmIlNbW1g5og7EOO6/tqmb12vIBrUcppVRkCFWCygSareVWIL2vQsaY1caYEmNMSVbWJwZwnJe0hBiuK8nnj1srOdHUOaB1KaWUCr9QJah6IMlaTrKeh9xti8fi9RkeXX9oMDanlFIqhAacoETEKSKje738FjDXWp4BvD3Q7fRHQXo8K6fl8PTGClo63YOxSaWUUiES6Ci+JcBiEbkamA08ePrvjTFlQLWI3AQ0WM8HxR1Limjp8vDMporB2qRSSqkQCOhCXWPMWqDotJeu6qPM/YEGNRDT8lNYWJTBb949zM0LxxDj0Eu9lFJqKIrKo/eqJWM50dzJn7YdD3coSimlAhSVCWrp+CwmjkziN+/qYAmllBqqojJBiQjXzMpjd1UzNS065FwppYaiqExQAAvGZgCwsbwhzJEopZQKRNQmqCm5ySS6HGw8NCiXYCmllAqyqE1QDruNksI0NmgNSimlhqSoTVDgb+Y7UNNKbUtXuENRSil1nqI6Qc0f458CcNMhrUUppdRQE9UJampeCgkxdjaUaz+UUkoNNVGdoJx2GyWF6ZqglFJqCIrqBAUwf2w6+2taqWvVfiillBpKoj5B9VwPpf1QSik1tER9gpqWl0K89kMppdSQE/UJymm3MWd0ms4ooZRSQ0zUJyjwN/Ptq26hXvuhlFJqyBg2CQq0H0oppYaSYZGgpuWlEGO3sfVYY7hDUUop1U/DIkHFOGxMGJnErsrmcIeilFKqn4ZFggKYmpfMzuNNGGPCHYpSSql+GDYJakpuCo3tbo6d7Ah3KEoppfph2CSoqXkpAOw63hTmSJRSSvXHsElQE0cmYbcJO7UfSimlhgRHoG8UkXuBRiDFGPPAGcqsBw5ZT79rjCkPdHsDFeu0U5ydyE6tQSml1JAQUA1KRIqBHGPM40CaiEw8Q9GHjDE3Wo+wJaceU/NS2FmpAyWUUmooCLSJbzmwyVreBiw9Q7kFInK3iDwoImFvTpyam0xdazfVzTqjhFJKRbpAk0Ym0NOZ0wqkn6HcL4wxDwJbgCW9fykiq0SkVERKa2trAwyl/3oGSuys1GY+pZSKdIEmqHogyVpOsp5/jIjEAietp8eAkb3LGGNWG2NKjDElWVlZAYbSf5NzkxFB+6GUUmoICDRBvQXMtZZnAO+IyOheZS4DrrOWC4CyALcVNPExDoqyEnUkn1JKDQEBJShjTBlQLSI3AQ1AKvBgr2KvAR0ichWQbIzZMpBAg2VqbrJeC6WUUkNAwMPMjTH393rpql6/bwceCXT9oTI1L4U/bD1OXWsXmYmucIejlFLqDMI+sm6wTcnVgRJKKTUUDL8ElZcMwK7jQ68favORk2wor8fn0+u4lFLRL+AmvqEqOdZJYUb8kKpBHalv44cv7WHN7moA8tPiuHZ2Pp+bk09BenyYo1NKqdAYdgkKYEpeCtuONoY7jHPq8nj56Zr9/ObdQzjswjcvm0BeahzPbz7GA2/u5+dvHeDn18/i09Nywh2qUkoF3fBMULnJvLS9iqYONylxznCHc0Y/WVPGL98p59rZ+XzzsgmMSI4F4OqZeRxv7OCup7fw9ee2kpMax8yC1PAGq5RSQTbs+qAAJuf4+6H2VEVuP9TOyiZ+te4Qny8p4H+um3EqOfXITY1j9ZdLyEpycdvjpVQ26n2ulFLRZXgmqFx/gtodoQMlPF4f//j77aTFx/BPKyedsVxmootHb55Ll8fLrY99QEunexCjVEqp0BqWCSo7KZbMRBe7I7QG9ej6w+ysbOb7V00hJf7sTZDFI5J46IY57K9p5ZvPbx+kCJVSKvSGZYICfy0qEmtQFfXt/M+afVw8KZuV0z4xfWGfFhVn8o1LxvPKzhOsLQv9pLtKKTUYhm+CyknmQE0r3R5fuEP5mO//eRcOm40ffGYqItLv9922eAyFGfF8/8+7cHsja5+UUioQwzdB5SbT7fVxsLY13KGcUl7byht7a1i1ZCw5KXHn9V6Xw853Lp/Mwdo2Hn/vcGgCVEqpQTR8E1RO5A2UeGpjBQ6b8IV5BQG9/6JJ2Swdn8X9r++nrlVvyqiUGtqGbYIak5lArNMWMQMlOt1ent98jEunjiQ7Kfbcb+iDiPDPV0ymw+3lv/+6L8gRKqXU4Bq2CcpuEyaMjJyBEn/edpymDjc3zu99W63zMy47kZsXFvJc6dEhNZ2TUkr1NmwTFPib+XZXNWNM+CdffXJjBeOyE1kwNn3A67rn4mKSY538dE3Y7xGplFIBG94JKjeZpg43x5s6wxrHzsomth1t5Ib5o85r5N6ZJMc6WbVkLG/srWHrEJhzUCml+jIs5+LrcfpAibzU8xs1F0xPbjhCnNPOZ2fnB22dNy0s5FfryvnJmjJ+e8u8oK03FIwxbKlo5NlNFbxfXk+n20uX20eX10dRViIXTcxm+cRsZhakYrcNPIErpYaGYZ2gJo5MQsSfoC6ZPCIsMTR3uvnj1uNcNSM3qBPXJrocfHVpEf/+yl5KDzdQUjjwpsNg8/kMz35wlMffO8y+6hbiY+wsn5BNSrwTl8OG025j69FGHnrnID9/6wDZSS7uvqiYL8wtwGkf1pV/pYaFYZ2gElwOxmQksLsqfIMJ/rztOB1uLzcsGBX0dX/5gkIeWXeI/3mtjGdWLQj6+geivrWLv//dNt7eV8u0vBR+dM00rpqZS6Lrkx/JxvZu3imr5ckNR/jnP+zk0XcP8c3LJnDplJFBaRJVSkWmYX8aOik3OaxDzV/ZcYIxmQlMy0sJ+rrjYux8bVkR75fX897BuqCvP1Aby+tZ+cA63jtYzw8+M5U/3XUhX5w/qs/kBJAaH8PVM/P4vzsu4JEvl2CzCV99cgs3/nojx3UWd6Wi1rBPUJNzkjna0EFzGGYCb2jr5v3yej49NXQ1gRvmj2JEsoufvFYWGaMVNxzh+kc2EB/j4MU7F/KlBaP7ve8iwiWTR/DqvYv5wdVT+LCikUt/tpYXPzwWEfumlAquYd3EBx8NlNhb1cK8MYPbT7Nm9wm8PsPKEN4RN9Zp5+4VxXznDzt5e18tyydmh2xb5/LMpgq+84edrJiYzQPXzzpjjelcHHYbX7qgkCXjs/j7/9vG3z23jTW7q/nRNdNIjY8JctTBcaKpk61HG9l1vIma5i4a2rs52dZNt9dHfIydRJeDpFgnBWlxFGUnUpSVyLjsRGKd9nCHrlTYaIKy7g2163jToCeol3ecYFR6PFOsGELlupICVq8t58d/3cfS8VnYwjAS7nelR/mnF3ewbEIWD904G5dj4Afe0RkJPHfHBaxeW85P1uzjw4pGfvr5mSwYmxGEiAem0+1l3f46XtlRxXsH6znR7L+UwW4TMhJiSE+IIS0+hsRYB21dHiobO2nuaOGPWzvwWZVBh02YkpdCyeg05hamMW9MBukJkZmAlQqFgBOUiNwLNAIpxpgHAi0TbtlJLrKSXOw4NrgDJRrbu1l/oI5bF48JeUd/jMPGNy4Zz9ef28pLO6q4ckZuSLfX2x8+rOSbL2xn0bhMHr5xTlCSUw+7TfjasiIWjcvknmc/5IuPbOCu5eO456JiHIM80s8Yw8ZDDTz3wVHW7K6mtctDSpyTpeOzmDUqlRkFqUzOST5rrajL4+VwXTsHalrZebyJzYdP8sSGI/z63UOI+Gv8i8ZlsnBcJnML04iPCd85Znu3hyP17RxtaKe6uZPq5i5qWjo52e6mrctDa5eH9m4vPp/B4P/72G1CfIyDOKeduBg7KXFO0uKdpMbHkJEYQ1ai//vY8wjn/vXFGEO310eXx0e3x//T6zX4jMFrDMaACNhEsIn/8xljt+Gw23DaBZfDjtMuOrinnwL674tIMZBjjLlfRL4nIhONMXvPt0wkEBFm5Kew7VjjoG53ze5qPD7Dyqmha9473ZUzcnno7YP8ZE0Zl00dOWjDtNftr+Xvf7eN+WPSWf2lkpA1WU3LT+Evdy/ie3/axQNvHuCdslp+/LkZTBiZFJLtna6l083vt1Ty5IYj7K9pJTnWweXTclg5PYeFRRnn9bd2OexMGJnEhJFJXD7d/9no8njZWdnEewfqefdAHb9Zf4hfri3HaRdmFqRyQVEmJaPTmFGQGtRLFcB/KcDxpg4O1rZxoKaVAzWtHKxp5VB9G7UtH5+Q2CaQleTy1wxdDtITYshPs2MT/wFZAK/P0OH20tHtpbG9m8P1bZxs66a509Pn9hNdDrKTXGQmuchKdJGZGENGoou0eCfJcU5S4pwkxTpPJbw4px27TfwPKwm4fT48XoPbSiwd3V463F7au/1JtLXT/7O500Nzh5uWTg8tnW7/7077fUe3l7Zuz6kabqBEwOWw4XL444112oh12nE57cQ6rGWHDZfTTozdRozDn9wcNhtOh+Cwyam/ae/GEJ/x/8+8xuDzGTw+g8frs376/wbd3o/+Hm6fwe3x4fH5cHsNHutv5bXW4fX5k6/P50/OPgP+0w2/lDgnr/3d0oH9Qc4i0NOT5cAma3kbsBTonXzOWUZEVgGrAEaNCv4w6/6anp/KG3traO50kxwb3C/4mbyy8wR5qXFMzw/+6L2+2G3CP1w6gdt/W8oLm4/xhXmh/3vvr27hzie3UJydyK9umktcTGj7UxJcDv77b2awbEIW3/3jLq54cB13LS/ma8uKiHEEPyFX1Lfz6HuH+F3pMVq7PEzPT+HHn5vOldNzg7qvLoedOaPTmTM6nbsvKqa928MHh0/y/sF63j9Yx8/f3H/qoFmUlcD0/FTGZiYwJiuBwowERiTHkhLn7PNv4PUZGtu7aWjrprali6Mn26loaKeioYPy2lbKa9vocHtPlU+NdzIuK5Fl47MozExgVHo8o9LjyUmJJSPRFfCF1B6vj5Ptbmpbuqht7aK2xV8bq2n2L9e2dLGnqpm61q4zJrOBEvEnxORYJ0mxDpJiHWQkxDAqPZ5El4P4GAfxMf5E6HL4E0dP7chu89eaehjDqYO820oI3R5/cuhye+n0+Oh0e62HtWy91tje/bEaWldPAvH4E4qvJ2mcIVH21NxsIjjtNuw2wWkX62dPzP5lp/2j5Bfr/Ki8oyfJW+vpqRH21A57hLqGG+jaM4Fya7kVmBRIGWPMamA1QElJSdiGYU3PT8EY2HmsiYXjMkO+veZON+v213LTBYWDWtW/eFI2s0alcv8b+/nMrLyQdsDXt3Zxy+Mf4HLa+fXNcwMeEBGIK6bncsHYDP71L7v56etlvLyjim9eNoEVE7MH/Pf2+QzrD9bxxPtHWLOnGrsIV87I5eaFhcwoSA3ODpxDfIyDpeOzWDo+C/B/nrYfbWLr0ZNsPdrIhvJ6Xvywso/32UlwOU6dYXt9hrauT9YIHDYhNzWOMZkJzB+TwbjsRIqyEhiXnUh6QkxIPrMOu+1Us965dHm8NHW4ae5w+392euhye62amQ+vz2ed+YOBUwdgh02ItWpZ8TF2Yp12kmMdJMY6SHA5SIxxhKV/diB8PkPvf0c0NR8GetSoB3raTpKs54GUiQjT81MB2DZICeqNPdW4vYaV0wenea+HiHDfpRP44iMbWb22nHsuKg7JdjrdXlY9sZma5i6eu+OCsEwjlZHo4v4vzOLK6bn86192c+vjpUzLS+HrFxcHlKhqmjt5YUslz2yqoKKhnbR4J3cuK+LLFxQyIjmw26MES3Ksk0XFmSwq/uiz297t4XBdO4fq2qhv66Kp3X8wb+v2YJOPzox7agnpVvNZQZq/NjTY/Xfnw+Wwk51kD/i2NNFkqCXU8xVognoLuBl4EZgBPCMio40xR85S5unAwwyt9IQYCtLj2D5I/VAv7zhBTkosM63EOJgWFmVy+fQcfv7WAa6YnsPYrMSgrt8Yw7de2M7mIyf53xtmM3OQahVncvHkESydkMWLH1by8zcPcOvjpYzOiGfFxGwumjiCeWPS+2z66uj2Ulbdwlv7anhzbw3brUE088ak8/efGs+lU0ZG9BDw+BgHk3OTT41SVWooCihBGWPKRKRaRG4CGoBU4NvAVWcqY4yJ6Hs/TM9PZWtFY8i3097tYW1ZLdfPGxW2s5/vXTmZtWW1fPvFnTx9+/ygNgn89PX9/HHrce67dEJIr+86H067jetKCrhmVh5/3Hqcl7Yf56mNFTy6/jAuh43MRBep8U7S4mPocHupaGg/NQBABGYVpHLfpf6plcZlBzehK6XOLOCOAWPM/b1euqofZSLWzPxUXtpeRV1rF5mJ524HD9Tasjq6PD4+FabJaQGyk2L5x09P5Nsv7uT5zcf4m5LAbjHf2wubj/HAG/u5riSfO5cVBWWdweS02/jcnHw+Nyef9m4P7x2oZ9PhBupau2hsd3OyvRuXw8aKCdmMyohndEY8F4zNICOEnwel1JlF1kUGYdQzmm77sUZWTAxd8nh9TzXJsQ7mDvJFwb1dP3cUL26p5N9e3sOKidkDPghvKK/nH3+/nYVFGfzwM9MivqM2PsbBxZNHcHEYTxSUUmcXuT2hg2xqXgo2gW1HQ3fBrtdneHNvDcsnZof9dhE2m/Cjz06jrcvD9/60a0Bz2e2sbOKOJzYzKj2eh26YE5Ih3Uqp4UePJJYEl4Nx2YkhHSix+chJGtq6w3bvqd7Gj0ji6xeP5y/bq/ivv+4LaB1bjzbyxUc2kOhy8NhX5pESPzjXkSmlop828Z1men4qb+2twRgTkiaqNbtP4LTLqetXIsGdy4qobOzgf98+SHpCDLctHtvv924+0sBNv/mA9IQYnr59Pvlp8SGMVCk13GgN6jQz8lOob+umMgT3GDLGsGZ3NRcUZZI0SLNV9IeI8IOrp/LpqSP54Ut7ePHDY/1635t7q/nSrzeRneTiuTsWaHJSSgWdJqjTnLpgNwT9UAdrWzlc384lk8J3u4szsduEn31hJguLMviH323nf17bR1N73/fHOt7Ywdee3Mwtj5VSkBbPs6sWkJMy+BfiKqWinzbxnWZiThJOu7D9WOOpiTqD5bXd1QARO2rM5bCz+sslfOuF7Tz45gEeW3+Yrywaw5XTc2jscFPX0sWeEy08srYcg+G+Sydw2+IxQZ2ZXCmlTqcJ6jQuh51JOckhmdl8ze5qpuWlRHRtI9Hl4BdfnM1dy5u5//X9PPCG/3G6T00ewXevnKxNekqpkNME1cuM/FR+v+UYHq8vaPOR1bT476b6dxePD8r6Qm1STjIPf2kOe080s/t4M5mJLjITXWQnu0J6EbNSSp1OE1Qv88ak88SGI2yvbGL2qLSgrPONPTUYAxdPiszmvTOZODKZiSN1LjelVHjoIIleLhyXiQisK6sL2jpf2l5FYUY8k3JCf/M8pZSKFpqgeklPiGFqbgrvHqgNyvrqW7t472Adl0/Pifjpf5RSKpJogurDouJMPqxopKWz76HW5+PVXSfwGbh8Wm4QIlNKqeFDE1QfFhdn4vEZNpQ3DHhdL22vYmxmgjbvKaXUedIE1Yc5o9OIc9p5d//AmvlqW7rYUF6vzXtKKRUATVB9cDnszBuTzroDAxso0dO8d8V0bd5TSqnzpQnqDBYXZ1Je2zagefle2n6ccdmJjB+hd2FVSqnzpQnqDBYX+2ccD7SZr6alk42HGrh8mjbvKaVUIDRBncH4EYlkJ7lYtz+wZr5Xd57AGII+p59SSg0XmqDOQERYVJzJ+gN1+Hznf7fZv2yvYvyIRMaP0NF7SikVCE1QZ7G4OJOT7W52HW8+r/ftO9HCpkMNXD0zL0SRKaVU9NMEdRYXjssE4I291ef1vkfWlRPntHPD/FGhCEsppYaFgBKUiNwrIjeJyD3nKLdeRJ60Hv2/l3iEyE6KZcn4LJ7cUEGn29uv95xo6uSPWyv5/NwCUuNjQhyhUkpFr/NOUCJSDOQYYx4H0kRk4lmKP2SMudF6lAccZRjdsWQsda1d/OHDyn6Vf+y9w3h9hlsuHBPiyJRSKroFUoNaDmyylrcBS89SdoGI3C0iD4rIJ7YlIqtEpFRESmtrgzM5a7AtLMpgSm4yq9eVn3OwRGuXh6c2HuHTU3MYlaE39FNKqYE4Z4ISkYtF5LaeB5AF9IwaaAXSz/L2XxhjHgS2AEt6/9IYs9oYU2KMKcnKygog/NATEVYtGUt5bRuv7zl7X9Szmypo6fRw+5Ih15qplFIR55wJyhjzujHmVz0PoA7oGTudBNT39T4RiQVOWk+PASODEG9YXD4th7zUOFavPXMrpdvr49H1h5k3Jp2ZBamDF5xSSkWpQJr43gLmWsszgLdFxCkio3uVuwy4zlouAMoCCzH8HHYbty0eQ+mRk2w+crLPMo+/d5jKxg5WLdbak1JKBcN5JyhjTBlQLSI3AQ3W89nAg72KvgZ0iMhVQLIxZsuAow2j60oKSIlz8tDbBzHm431RT7x/mB++tIcVE7NZMTE7TBEqpVR0kd4H23ApKSkxpaWl4Q7jrH72ehk/e30/s0el8v9WTmJuYTqPrj/E9/+8m4snZfOLG2bjctjDHaZSSg0pIrLZGFPS+3VHOIIZqu5eUczI5Fh+sqaMv3n4fWaNSuXDikY+NXkEP//ibGIcet2zUkoFix5Rz4PdJnxh3ijevm8Z//Cp8eyvbuXy6Tn84gZNTkopFWxagwpAfIyDu1YUc8fSIhw20dtpKKVUCGiCGgCnXWtNSikVKnqEVUopFZE0QSmllIpIETPMXERqgSNBWFUm/tkuop3uZ3TR/Ywuup/nZ7Qx5hPz3UVMggoWESntazx9tNH9jC66n9FF9zM4tIlPKaVURNIEpZRSKiJFY4JaHe4ABonuZ3TR/Ywuup9BEHV9UEoppaJDNNaglFJKRQFNUEoppSKSJiillFIRSROUUkqpiKQJaogTkXkiMjLccajQEZGo+p5Kr+n/RSQmXLGoyBZVH/zeRCRbROaFO45QEJF4EVkIjAWWhTmckBOREhHJDnccg0lEbCJSAiwUkYxwxxMsxho6LCJ5InIFUBzmkEJOREaKyEUiMiLcsQTT6ScbIrJSRIL6v4zKBCV+C4BRwCgRuSRavuAikikiFwDdwHJgC/CqiMSFN7LQEJEsEVkOuIBlIjIzzCENpqlADv59zw1zLEFjJd4vATcCh4wxu8IdUyiJSBYwCf+8dWNEJCnMIQ2IiCSIyD+JiMMYY0RkuojcDEwgOPOpnhJ194MSkU8DZcBIoN4Y87yIXAt4wxvZwIiIA7gFOIH/wNUBbAMWAh8AMcCHYQswCERETju7Hg2MAKqBmcaYn4rIDCC9d9loYjXXTgYO4f/fvmyMqRCRFBGxGWN84Y1wYETkamAvsBMQouwkuddneBHQBMQDxcaY1SLiBIbs59b6DLaJyE/xnzh5gAr8J8zfBRaJSIUx5kAwthc1Hw4RmSMifwe0A4eBTcA8ESnEf/B2hi+6gbEOzDOA6fi/3L8GrgZex/8ljzPGDPXk5LTOxpJEZDbwbfz7WwGUWwc2ARLho2aioaxX84jLquVPArKBWPz7ukhErgGmMIS/ryIyxWqSrgc+a31ey/A3X04Mb3QDY/3vvn1ajWKe9XmtxH8Q3wFMEZG5wGexTrKGImOMT0QS8NfsfyYiY40xjcaYvfhnlXAA94lIbDC2N2Q/8D1EJFVEpgGtwGj8TQZeY8xxYB1QALxkjKkNZ5yBspq0UoAG/E2Wl+LfVxdQAjxmjCkNW4DBc6fVX3gd/v08BqTir028YpVpMsb8OTzhBU9PYrIOZiIi84ElwFxgnDHmWWPMHuAXwLvAcWPMe8YYT/ii7h8RyRCR+6waMNYJx2T8Z9rXGmPeBZpFZAn+zzT4k9aQY+3rt4Ak4Mf4T4TBf/uJqfgTUZwxph34X/wH73eNMTXhiDcYrJOJG/G34DwNXGa97sTfF/6mMeYOY0xnULY3VE9ErS/5LPztuoXAU8Ac/GeafzDGVIUvuuARkS8DfzbGnBSRLwDj8Z+RvWyM6QpvdMFj9UkUAv8J+IB/wn/g2oq/6bJjqNeaRGSaMWbHac8LgeuBWmPMr6yzzv8EngSK8H/Zh8zBzOoHLQEqjTHlInIx0Ib/e/oKMAbIx/9/nQP8uzHGHa54B6KPfS0GvoV/nw6KSAr+fbzIGPPtcMYaLNY+fgH4P6DBGFMrIj8BNhtjnhKR2GAlph5DsgZlffCX4T9D8QC/x9/8sxWYhr/WFC3eBa61mgeOAz8zxrwYTcnJ8hT+s7Iiq6awCX9T7WZjTPtQTU49tSURSQY+Z43kirM+w7X4m7maRSTB+nL/HH9z9LqhlJwsXcCFQKa1v4n4m6T/hL/29Cb+E6wTxph/HarJydKzrxnWIIhD+GsUlwIYY5qs/f0jfHJo/RBVjv8YlA3caLV4vAJsBgh2coIhVoMSkURgMf4P/gRgF/5OyCPWa/sBXyj+UOEkIpn4a4plQ72T/GyspqAVQAvwF2PMkGz66c3qm/CISA7w7/gP2NPwH7x2AddaRV8Y4gdtRORG/N/Nf8ff/HMM//fzQuBVoHsoNFX2h7WvE4Hv9nwvReRBYD3wf9H4XbX6n5bhH6x1NNQnUUOqBmWMacV/xvk+/lrTAWAB/j/YMetMO6qSE4Axps4YszcaP/CnM8bsBp4FnoiW5GT5W6vP5QSwAX8T5s+Az+Cv+Tvwjzgd0snJ8jT+vqVM/PsK/tGIb1jfz6hITpan8fc3nX7tz6vA1ij+rqbj//x+OBg1/CFVg+phNXddCbwFVBhjDoY5JKXOSERuACYbY75tNfX8C/6mvDvxD+R5O5oOaNbAnnuAh4wxH4Q5nJCyRtjeCzwMfDBUm6Ij1VBNUDPxN+m9F01fbBWdxD9V0TfwjybdIyLfAJrxj8CMphrFKSJyGbDGGDOkrz/sj+G0r4NtqCaoqLxIU0Uvq39tOf5LBNZYl0Eopc5iSCYopYYia7RXvdb6leofTVBKKaUi0pAaxaeUUmr40ASllFIqImmCUkopFZE0QSmllIpImqCUUkpFJE1QSimlItL/B0ocuJ9o+qN0AAAAAElFTkSuQmCC\n", - "text/plain": [ - "
" - ] - }, - "metadata": { - "needs_background": "light" - }, - "output_type": "display_data" - } - ], - "source": [ - "#一般绘图时会自动创建刻度,而如果通过上面的例子使用set_ticks创建刻度可能会导致tick的范围与所绘制图形的范围不一致的问题。\n", - "#所以在下面的案例中,axs[1]中set_xtick的设置要与数据范围所对应,然后再通过set_xticklabels设置刻度所对应的标签\n", - "import numpy as np\n", - "import matplotlib.pyplot as plt\n", - "fig, axs = plt.subplots(2, 1, figsize=(6, 4), tight_layout=True)\n", - "x1 = np.linspace(0.0, 6.0, 100)\n", - "y1 = np.cos(2 * np.pi * x1) * np.exp(-x1)\n", - "axs[0].plot(x1, y1)\n", - "axs[0].set_xticks([0,1,2,3,4,5,6])\n", - "\n", - "axs[1].plot(x1, y1)\n", - "axs[1].set_xticks([0,1,2,3,4,5,6])#要将x轴的刻度放在数据范围中的哪些位置\n", - "axs[1].set_xticklabels(['zero','one', 'two', 'three', 'four', 'five','six'],#设置刻度对应的标签\n", - " rotation=30, fontsize='small')#rotation选项设定x刻度标签倾斜30度。\n", - "axs[1].xaxis.set_ticks_position('bottom')#set_ticks_position()方法是用来设置刻度所在的位置,常用的参数有bottom、top、both、none\n", - "print(axs[1].xaxis.get_ticklines());" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "### 2.Tick Locators and Formatters" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "除了上述的简单模式,还可以使用`Tick Locators and Formatters`完成对于刻度位置和刻度标签的设置。\n", - "其中[Axis.set_major_locator](https://matplotlib.org/api/_as_gen/matplotlib.axis.Axis.set_major_locator.html#matplotlib.axis.Axis.set_major_locator)和[Axis.set_minor_locator](https://matplotlib.org/api/_as_gen/matplotlib.axis.Axis.set_minor_locator.html#matplotlib.axis.Axis.set_minor_locator)方法用来设置标签的位置,[Axis.set_major_formatter](https://matplotlib.org/api/_as_gen/matplotlib.axis.Axis.set_major_formatter.html#matplotlib.axis.Axis.set_major_formatter)和[Axis.set_minor_formatter](https://matplotlib.org/api/_as_gen/matplotlib.axis.Axis.set_minor_formatter.html#matplotlib.axis.Axis.set_minor_formatter)方法用来设置标签的格式。这种方式的好处是不用显式地列举出刻度值列表。" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "set_major_formatter和set_minor_formatter这两个formatter格式命令可以接收字符串格式(matplotlib.ticker.StrMethodFormatter)或函数参数(matplotlib.ticker.FuncFormatter)来设置刻度值的格式 。" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "#### a) Tick Formatters" - ] - }, - { - "cell_type": "code", - "execution_count": 121, - "metadata": {}, - "outputs": [ - { - "data": { - "image/png": "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\n", - "text/plain": [ - "
" - ] - }, - "metadata": { - "needs_background": "light" - }, - "output_type": "display_data" - } - ], - "source": [ - "# 接收字符串格式的例子\n", - "fig, axs = plt.subplots(2, 2, figsize=(8, 5), tight_layout=True)\n", - "for n, ax in enumerate(axs.flat):\n", - " ax.plot(x1*10., y1)\n", - "\n", - "formatter = matplotlib.ticker.FormatStrFormatter('%1.1f')\n", - "axs[0, 1].xaxis.set_major_formatter(formatter)\n", - "\n", - "formatter = matplotlib.ticker.FormatStrFormatter('-%1.1f')\n", - "axs[1, 0].xaxis.set_major_formatter(formatter)\n", - "\n", - "formatter = matplotlib.ticker.FormatStrFormatter('%1.5f')\n", - "axs[1, 1].xaxis.set_major_formatter(formatter);" - ] - }, - { - "cell_type": "code", - "execution_count": 122, - "metadata": {}, - "outputs": [ - { - "data": { - "image/png": "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\n", - "text/plain": [ - "
" - ] - }, - "metadata": { - "needs_background": "light" - }, - "output_type": "display_data" - } - ], - "source": [ - "# 接收函数的例子\n", - "def formatoddticks(x, pos):\n", - " \"\"\"Format odd tick positions.\"\"\"\n", - " if x % 2:\n", - " return f'{x:1.2f}'\n", - " else:\n", - " return ''\n", - "\n", - "fig, ax = plt.subplots(figsize=(5, 3), tight_layout=True)\n", - "ax.plot(x1, y1)\n", - "ax.xaxis.set_major_formatter(formatoddticks);" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "#### b) Tick Locators " - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "\n", - "在普通的绘图中,我们可以直接通过上图的set_ticks进行设置刻度的位置,缺点是需要自己指定或者接受matplotlib默认给定的刻度。当需要更改刻度的位置时,matplotlib给了常用的几种locator的类型。如果要绘制更复杂的图,可以先设置locator的类型,然后通过axs.xaxis.set_major_locator(locator)绘制即可 \n", - "locator=plt.MaxNLocator(nbins=7) \n", - "locator=plt.FixedLocator(locs=[0,0.5,1.5,2.5,3.5,4.5,5.5,6])#直接指定刻度所在的位置 \n", - "locator=plt.AutoLocator()#自动分配刻度值的位置 \n", - "locator=plt.IndexLocator(offset=0.5, base=1)#面元间距是1,从0.5开始 \n", - "locator=plt.MultipleLocator(1.5)#将刻度的标签设置为1.5的倍数 \n", - "locator=plt.LinearLocator(numticks=5)#线性划分5等分,4个刻度 " - ] - }, - { - "cell_type": "code", - "execution_count": 123, - "metadata": {}, - "outputs": [ - { - "data": { - "image/png": "iVBORw0KGgoAAAANSUhEUgAAAjgAAAFgCAYAAAC2QAPxAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjQuMiwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8rg+JYAAAACXBIWXMAAAsTAAALEwEAmpwYAABlg0lEQVR4nO3deXzcdZ348ddn7iQzuSdt0iRNet8XPaBASwGRS1REBBcERQGvxdVdXX8qu+u66657KCCywKqgrKB4ISCHnAUKPSgtPSnN0SZNmvucHHN9fn/MJG3TJJ3MzHcmM3k/Hw8ezCTf+X7fTWbeeX8/p9JaI4QQQgiRTkzJDkAIIYQQIt6kwBFCCCFE2pECRwghhBBpRwocIYQQQqQdKXCEEEIIkXYsyQ5gSGFhoa6oqEh2GEKIOHn77bdbtdbuZMcxkuQaIdLLWLlm0hQ4FRUV7NixI9lhCCHiRCl1JNkxjEZyjRDpZaxcI11UQgghhEg7UuAIIYQQIu1IgSOEEEKItBNVgaOUWq+U+u0ZjrlDKXWTUuqvowtNCDHVSa4RQkQrqgJHa70F6B3r+0qpuUCx1vphIE8ptSDK+E6z+VALX/i/twkEZQ8tIdJdMnPND549yM/fqInX6YQQCWZUF9UmYFv48W5g42gHKaVuVUrtUErtaGlpiejEbZ5B/rznOO8398QnUiFEKjMs12yvbedPuxviE6UQIuGMKnAKge7w414gf7SDtNYPaK1Xa61Xu92RLZexvDQXgN11nTEHKYRIeYbmmn0N3Xj9wfhEKoRIKKMKnDbAFX7sCj+Pi8rCLHIyrOySAkcIYWCuWVGei9cf5ODx7jMfLISYdGIucJRSVqXUzBFffhlYE368HHgl1uucdD2Wl+XyztHOeJ1SCJECEp1rVpTlAsjNlBApKtpZVBuA85VSHwZWAfec/H2t9SGgSSl1E9Aefh43K8pyOdTUg2fQH8/TCiEmmWTmmhm5GRQ67eySmykhUlJUWzVorTcDs0/60lWjHHNXtEGdyYqyHIIa9h7rYt2sAqMuI4RIsmTmGqUUK8py2FXfacTphRAGS8mF/oYGGkvTsRDCSCvKcqlu8dDV50t2KEKICUrJAqfAaac8P1MKHCGEoVaU5QGwW1pxhEg5KVngQOjOSgocIYSRlpXlANJaLEQqStkCZ3lZLo1dAzR1DyQ7FCFEmsp2WJntzpJ1t4RIQSlb4AxN4dxT35XcQIQQaW1FWR7vHpM8I0SqSdkCp6IgE4C6jr4kRyKESGcVBZm09Awy4AskOxQhxASkbIGTn2XDbjHR0Nmf7FCEEGmsJDcDQHKNECkmZQscpRQzcjNo6JIxOEII4wwVOI2Sa4RIKSlb4EAo8chdlRDCSDPCBc4xyTVCpJSULnCKcxxS4AghDDUtxw5IF5UQqSalC5yS3AyaewbxBYLJDkUIkabsFjNul53GTumiEiKVpHSBMyM3A63huPSNCyEMVJKbQUOXtOAIkUpSusApznUA0nQshDBWSY5DxuAIkWJSusAZnr4pd1ZCCAOV5GbQ2DmA1jrZoQghIpTaBU7O0PoU0kUlhDBOSW4G/b4AnbKruBApI6ULnAybmbxMq3RRCSEMVZIT7g6X1mIhUkZKFzgga+EIIYx3YjVjaS0WIlWkRYEjK4wKIYwk2zUIkXpSv8CR2Q1CCIMVZNmwmU3SRSVECkn9Aic3g54BP90DMvhPCGEMk0lRnOuQLiohUkhaFDiArDIqhDBUSY6M9xMilaRBgSOzG4QQxivOddAoBY4QKSMNChwZ/CeEMN6M3AyOdw/gl73vhEgJKV/gFLkcmE1KChwhhKFKcjMIamjqGUx2KEKICKR8gWM2KYpcdpq6JekIIYwzPTvUHd7ULeP9hEgFKV/gABQ67bT2SoEjhDBOodMOQKu04AiREtKiwHG77LRI0hFCGMjtChU4LXIzJURKSIsCp9BpkxYcIYShCpw2AFp7vEmORAgRibQocNwuO629XoJBnexQhBBpymo2kZdppaVXxuAIkQrSosApdNoJBDWd/bKasRDCOIVOu7TgCJEi0qbAAaSbSghhKLfLLmNwhEgRaVHgDA/+k4HGQggDyYxNIVJHWhQ40oIjhEgEmbEpROpIiwJHWnCEEIlQ6LTT5w3Q5/UnOxQhxBlYon2hUuoOoBPI0VrfPcYxbwA14ad3aq2ro73eeLIdFmxmk/SNC5FmJlOegRM3U609XsoLok6fQogEiKoFRyk1FyjWWj8M5CmlFoxx6H1a6xvC/xmWdJRSoaniMrtBiLQx2fIMhNbcAmSquBApINouqk3AtvDj3cDGMY47Wyn1ZaXUPUqp066llLpVKbVDKbWjpaUlylBCCp02acERIr3EJc9A/HLN0Hi/FrmZEmLSi7bAKQS6w497gfwxjrtXa30PsBPYMPKbWusHtNartdar3W53lKGEA3LaZY8YIdJLXPIMxC/XFMl2DUKkjGgLnDbAFX7sCj8/hVLKAXSEn9YD06O8VkRkfQoh0s6kyzP5WTaUkg03hUgF0RY4LwNrwo+XA68qpWaOOOZS4Nrw4zLgUJTXikih0067x0tAtmsQIl1MujxjMZvIz5TucCFSQVQFjtb6ENCklLoJaAdygXtGHPY80K+UugrI1lrvjCXQM3G7Qts1dPRJ37gQ6WAy5hmQ7nAhUkXU8xy11neN+NJVI77fBzwY7fkn6uTF/oYeCyFS22TLMyDd4UKkirRY6A9OXZ9CCCGMUui0yarpQqSAtClwZH0KIUQiDG3XoLWM9xNiMkufAkdacIQQCVDotDPgC+LxBpIdihBiHGlT4LjsFuyWxG/X4Bn08/aR9oReUwiRPCe6wxObaw419dDY1Z/QawqRytKmwFFKJXx2gz8Q5HO/2MHH7nuTb/9xD15/MGHXFkIkx/Bqxgm8mdp7rIurfvw6H/zhZjYfim3VdyGmirQpcCDxsxv+5c8H2FLVxoULinjkraPc8L9b6RnwJez6QojES3QLTmvvILf98m3yMm2U5GZw88+38Ys3axNybSFSWVoVOIXO0OC/RPjDO/X8/I1aPn1uBT+7eQ0/+sQKttW286utRxNyfSFEciSyBScY1Hzx/3bS2jvIAzeu5nefX8+GeW7++an9tMlMLiHGlVYFjttlo82TmEHGP3m5iqUzcvh/ly8E4CMrZ7CmIo/HttfJ7Aoh0tjwdg29xueat492sLWmnW9fsZClpTlk2S186/KF+AKa3+2sN/z6QqSytCpwCrJC2zUEDd6u4WhbH+839/KRlTOwmk/8CK9fW05Nq4e3qmXQsRDpymxS5GfaEtKC8uKBZiwmxYdXzhj+2txpLlbPzOPRbXIzJcR40qvAcdoIBDWd/caOg3nxYBMAFy8sOuXrly8tJtth4dFt0k0lRDorSNBify8dbGJtZT7ZDuspX5ebKSHOLK0KnKG+caPvrF462MxsdxYzC7JO+brDaubqVaU8u/c47QnqKhNCJF6h006bwV1Ude19HGrq5cIFRad974plcjMlxJmkVYFTMLyasXEFTu+gn7eq27ho4bRRv3/92nK8gSC/l/5xIdJWgdNu+Hi/Fw+EWopHyzUn30x1ygbDQowqrQqcEy04xn3gXzvUgi+gR72rApg/3cWC6S5eOthsWAxCiOQqyLIZPk38xYPNzCrMorIwa9Tvf2h5Cd5AkNcPtxoahxCpKk0LHOMSz4sHm8l2WFg9M2/MY86fW8iO2g76ZSl3IdKS22WnZ9DPgM+Yz3jvoJ+t1e1ctHD0GymA5aU5uBwWXn9fChwhRpNWBU5uhhWTgdM3tda88l4LG+cXYTGP/aM7b64bbyDI1po2Q+IQQiRXQVaoO9yosXZbDrfiDQTZNEZLMYDFbGL97AJee79VZlMJMYq0KnBMJkV+lp02jzEtOI1dA7T2DrK2YuzWG4C1FfnYLCa5sxIiTRWEW4uNmkn1bn0XZpNiVfn4ueb8uW6OdfZT0+oxJA4hUllaFTgAhU6bYS04+xq6AVhUkjPucRk2M2sr8nlNChwh0lJheEKDUeP99jV0McftxGE1j3vchrluAMk1QowiDQscu2F3VfsaulAKFha7znjseXMLea+ph6buAUNiEUIkT6HBLTj7GrpZXJJ9xuPKCzIpz8/ktfdlA04hRkq7AqfAaTPwrqqbWYVZZNosZzz2/LmFANJNJUQaGlqSwojW4paeQZp7BlkUQYEDoVzzZlUbvkAw7rEIkcrSrsAxsgVnf0M3i8/QPTVk4fRsCp02ubMSIg1l2ixk2syGzNjc19AFEHGuOX+uG483wDtHO+MeixCpLO0KnAKnjT5vgD6vP67n7fB4OdbZH1GzMYQGPK+fXcib1W0yw0GINFTgNGZz3xNj/SLLNefMLkApeLNKZm0KcbK0K3AKs4xZ7G9/YyjpRHpXBbCmMp+m7kHq2vvjGosQIvkKsoxpLd7f0E1ZfgY5GdYzHwzkZFhZMD2b7bWyL5UQJ0u/Asc11Dce38Rzotk4srsqCE0XB9gmiUeItBPqDjeiBaeLxcWR30gBrK3IY+fRDvwyDkeIYWceLZtiCgxqwdnX0E1JjoO88AJfkZhb5CQnw8r2mnauOas0rvGM5VhnP3/a1UBnnxdfQHPD2eXMcjsTcm0hppJCp4136zvjes6eAR+1bX18bNXE8sWaynwefvMI+xq6WV6WG9eYxvLywWZ21XXS1e+jNC+DG8+Zid0y/rR2IRIp/Qocp1EtON1nXP9mJJNJsaYiL2FNx28faefWX7xNm8eLzRJqnHtk6xG+vGkOt22cPfw1IUTshsbgBIMak0nF5ZwHGnsAWDwj8pZiONFavL223fACJxjU/PtzB7n/1WoAXHYLPYN+Ht12lO9fvYy1lfmGXl+ISKXdX7zh/ajiOPiv3xuguqU34kF/J1tTkU91q4cWgzfme3ZvI9c/uBWXw8ILX93Aoe9dxuvf2MQli6bxX385xJd+tZNgUAY7CxEvhU47gaCmq98Xt3MOdYUvmmAXVVG2g5kFmWyrMfZmyhcI8sVf7eT+V6v5q3XlHPreZez5pw/y0KfXMOgPct0Db/LC/iZDYxAiUmlX4DisZpx2S1xbcN5r6iGoYVFxFAVO+G5mh4GtOI1d/XztN7tZXJLNH75wLnOKQgsRFrkc/PiTq/j2FQt5fn8T//bsQcNiEGKqKRi+mYpfrjnQ2E1+lo1p2fYJv3ZNRT47jnQYOmvzZ6/X8Mze4/y/yxfwvY8sGW4VvmB+Ec9+ZQOLS3L468feYe+xLsNiECJSaVfgQKjpOJ6D/6qaewGYO23iY1mWlOTgsJoMHWj8D0/sI6A1d1+3ctQxQrecV8mnzpnJA5ureXTbUcPiEGIqKQx/1lp64phrWjzMKXKi1MS7vNZW5NPu8VLV0hu3eE5W197HD184xAcWTePWDbNPi9Fpt/DTm1aTm2Hlloe3yyruIunSssApdNrjugBXdWsvFpOiPD9zwq+1WUysLDNuHM5z+47z/P4mvnLxPMrGiE8pxZ1XLmLDPDf/+Kd9HG42JgEKMZUUuuLfglPd0stsd1ZUrx1qLd5W0xG3eIZorbnzib2YlOKfrlo85nFF2Q5+9uk1dPf7+bvfvitrgImkSssCpyArvts1VLd4KM/PxGqO7se1pjKf/Q3d9AzEr68eYNAf4J/+tI8F013ccl7luMdazCb+8+PLyLCZ+drju2U6qRAxKsiK74abHR4vHX0+ZhVGN+uxoiCTQqedbTXxX/DvhQPNvPxeC1+7ZD4luRnjHrtgejbfvHwBmw+18Oi2urjHIkSk0m4WFYT6xt8+Er+7mOoWT0xTrddV5nO3hh1HOtg0vyhucT2xq4GGrgH+7WPLIiq+ilwO/vnDS/jyo+9w/+ZqvrhpTtxiGYsvEGRfQzeHmnqo7+inIMvG9BwHayryyZ/AlHshJpvcTBsmFb8Zm9WtoZbV2UXRteAopVhXmc+2mna01lF1c41Ga829Lx9mZkEmN50zM6LX3LBuJs/uPc6/PL2f8+cWjtm6HE9tvYPsbejm/aYe+rwBpuc4qCjIYlV5LpYob05FakvLAsfttNHe5yUQ1JhjnL4ZCGpq2jxcMN8d9TlWledhNSu2VrfHrcAJBjUPbq5mYXH28MaekfjQ8hKe3XucH71wiEsWTWPutDPvjB6N3kE/j207ys9er6Gh6/S+eLNJsX52AdeuLuPypcUx/56ESDSzSZGfFb/F/qqaPQBRt+AArJuVz9N7Gqnv6I9bUbHjSAe76jr55w8vjrhQMJkUP7hmGZf+6DW+8bt3+b/ProtbwTXSe8d7eGBzNX/afQxf4PQusYIsG5cvLeam9RXMKZI1waaStCxwCl12tA71jRe5HDGd61hHP15/kFlR9osDZNjMLCvNZWscm45fPdTC+829/PATyyecOL774cVsqWrlG797l8dvXx/34uKNw6187Te7Od49wLrKfP7+8oUsnZFDWV4Gnf0+jrb38cL+Jp58t4EvP/oOd734Pn990VyuXFoct/VEhEiEQqctbktAVLX2YjUrSvPG7wIaz7rKAgDeqm6LW4Fz/6vV5GVaueassgm9rjQvk7+/bAHf/uNeHt9Rz7VrJvb6Mxn0B/jv5w/xwGvVOCxm/mrdTC5dMp1501xk2c00dw+y91gXT+1p5PG363hk6xE+tKyEr1w8VxY/nSKiLnCUUncAnUCO1vruaI8xgjs8fbOlJ/YCp2qo2TjGD8Taynwe3FxNn9dPpi32uvL+zVWU5Di4clnJhF9b4LRz54cW8Te/3s0v36zl5nPHH78TKX8gyH889x73b65mtjuL333+HM6aeeqiX4VOO4VOO6vK8/jbS+bzzN7j3P3i+/z1o+/w09druPPKhae9Jh4GfAH2HOti19FO3mvqoaGzn5aeQQJBTVBrsjOsFGTZKMnNYE6Rk3nTXCwpySEnM7L9gIQxJnOeAXC77LTEq4uqxUNFQVZM3Slzi5zkZVrZWtPOx1fHXlAcbu7lhQNN/PVFc8mwTXyV4k+uLedPuxv43tP7uWC+m6Ls2PLxkNpWD1/4v53sb+zm+rXlfOPS+eRmntrlXZafSVl+JpctLaatd5AHX6vhF2/W8uc9jXzqnAruuGiuIZ/vpu4B3jnawa66Lo62e2joHKB7wIfWYFKh1fYLXTYqCrKY7XaysDibudOcUY/xFGOL6i+tUmouUKy1vksp9Q9KqQVa64MTPcYoReE1JJp7Bhl7vH9kqlvCzcYxFjjrKvO575Uqdh7p5LwJdCmNZu+xLt6qbufbVyyM+kPxkRUzeGJXAz947j0uWjgt5ru9Pq+fv370HV440MwNZ5fzrcsXnTEhmkyKK5YVc9mS6fz+nWP84NmDfOy+N7liWTHf+OACygtii6nd4+W5fcd58UATrx9uZcAXGlhd5LIzIy+D2W4n1vA6Ht39Ppp7BtlxpIOegRM70ZfnZ7KsNIcVZbksLslhUXF2VElRa01rr5f6jj6OdfZzrKOfpu5BWnoHafcM0t3vp3fQj9cfxB8MolCYTQq71USWzUKW3Uxuho2cDCt5WTbyMq3kZdrIzbSSm2kjO8OC024h02Yhw2rGag69fqh1zx8I4gtovP4g/b4AfV4/fd5A+L8Tj/t9AQa8AbyBIIP+IIFgEH9QQ7jlf2lpTlRFdTQme56B0Li2qubWuJyruqU35i4Uk0mxtjI/bq3FP3ujBrvFxKciHHszWjz/dvVSLr3rNb79x73cf+NZMXdV7TzawWcf3oHWmgc/tZoPLJp2xtcUOO38/WULuOW8Sv77L4d4aEsNv9tZz5cvnBPzFhNaa/Y1dPPM3kZePNDMweOh1aitZkVZXiYluRnMyMvArBT+YJC2Xi8HG3t4fl9T6LNFaLbtouJsVpTlsnRGDotnZIfyUxT53esP0tDZT31HPw2d/Rzr7Keld5CWnkG6+nx0D/jo8wbwB0KfbYtJYTYrMq0WMu1mXA4ruRlWcsM5Ji8zlHNyM0P5J9thIctuIcNmxm4xYTWZhlvetdb4AhpfIMiAL5RP+r0BPEN5ZjCAx+sPfc8bYMAfxOsP4gvHcvJitDeeM5PSvNj+BkTblLAJ2BZ+vBvYCIxMKmc8Ril1K3ArQHl5eZShnG6o1aalO/Y7q6qWXnIzrTEPiF1dkY/ZpNha0xZzgfOrbUdxWE0x3aEppfiXjy7l0h9u5iu/3sWvbz076jvHdo+XTz+0nT31oX76G8+pmNDrTSbFNWeVctmS6dy/uZoHN1fz/L7jXHNWGZ87v3JCxWVXn4/n9h/nqXcbeeNwK4Ggpiw/g0+sLuPcOYWsLM/D7Rp7EbWhQuTg8W72HOtiT30X7xzt5Kl3G4ePmZ7toKIwk7K8TAqcdvIyrdgtJixmE15/kAF/gK5+H229Xpq6B2jo7Kehc4B+X+CUa2XZzLhddvKzbBQ6bcwsyMRuMWMxKTQaf1Az6A/SNxgqfqpbe+ns89HZ58OboFlwFpPCZFIM9Rx+dOWMhBU4xCnPgIG5JjvUghProF5fIMiRtj4uWTw95pjWVhbw3L4mGjr7zzjjaTy9g36eeOcYH1peMrxCfDRmuZ187QPz+P4zB2PuqnphfxNfenQn07IdPPTptVQWTmzogNtl5/tXL+VT58zkX/98gO89fYCHttRy24ZZXHNWWcStVFpr3mvq4andjTz1bgO1bX2YTYrVM/P4+8sWsLYyn0XF2TisY58v9Dv3sK+hmz31Xbx7rIvf7KjjoS21ANjMJsoLMqkoyKI4x0GB04bLYcVqDt24DPoCeAYDdPR5aekd5HhXKNc0dQ9w8qL1SkF+pg23y05uppXy/EwybGZsZhNmkyIQDBUkoRufAF19Xo62eejsD+WaSCgFsawIYFJgMZlQKnQugEuXTE9agVMIVIcf9wILozlGa/0A8ADA6tWr47ZgwtAfsHg0HVe39DJrgh+i0TjtFpaUZLO1Orb1cDzhpHPlshJyMmJrXp2Rm8H3PrqEOx7bxT0vHeZvPjBvwuc43jXAjT/dytH2Pv7nhrNiStBZdgtf/cA8/mpdOXe/+D6Pv13PY9uPcv5cN5cuns4F890U5zhO+UMy4AtwuLmXt6rbePVQC29Vt+ELhIqaWzfM4splxSwqzo74j49SCrfLjtvl5vy5JwaWt/QMsr+xm30NXRxu7qW21cPm91to93hHHdhos5gozAollXnTXFwwv4jSvAxK8zIpzQvd0WU7ovv9aa3xeAN0eLx09vno6g/dlfUO+EN3Sb4A/oA+sRSAUlhMCqvZhM1iIsNqJsNmItNmIdNmJsse+n+mNXxXZjXhsJiHE2kSxSXPgIG5xmnHF9B09Pliugmqa+/DH9RxyTXrhtfDaecjK2dEfZ4ndzfg8Qa4fm3sBeHnzp/FK++18I9P7mNNZf6ECxOAP75zjK89vpslJdn89OY1MRVdC4uz+eUt63j1UAs//MshvvPEPn74wvtctmQ6H1w8nbNm5pFlP/XPY0vPIHsbunjtUCuvHGqmusWDScE5swu4feNsPrh4+oQ2Y7aaTcwpcjGnyMWHV4R+T4Ggpqqll/0N3Rxo7Ka61cORNg87jrSPWWxkOywUOO1Mz3awfnYhM3IdlOaH8kxpbibTcxxR70PoDwTp6vfR0eejs89Lz4Cfrn4fHq+ffm+AwXDrSyCoUYTyp81iwmJSZNjMOCxmHDYzTruZDGuolTnDZibTZsZhNeOwmrCZTYbNcou2wGkDhqbfuMLPoznGEA6rGZfDQnMcVtKsbvGwcV70M6hOtrYyn4e3HGHAFxi3sh/PU+8OJZ34DNj78IoZvPJeC/e89D7rZxewblZBxK890ubhhp9upcPj4+HPrOXsCbx2PNOyHfzLR5fylYvn8Ys3a3liVwP/7w97AMi0mZmRm4EmVNw0dPYP363MKXLy6XMruWJpMctKc+L6x9ntsrPR5T7tvaC1pnfQjy9cUNgsJhzWUNOtUcWBUgqnPZQsytJ7X8NJnWfgRHd4S89gTAXOUFf47DjM8llYnI3LYWFrTVtMBc5j244yb5qTVeW5McdkMin++xPLufRHr3HHY+/wm9vOmVAO/OVbR7jzib2cXVnAgzetxmmPz/yYjfPcbJhbyPbaDh7aUsPvdx7j/7aGVnsvCreuev1BOvt9tIf3N7RZTKyrzOfT6yu4dEnxuC3CE2U2KeZNczFvmuu0350vEKRvMIAvGCSoNRnWUJFg5Ngdi9lEgdM+vC1Jqon2XfIycDPwB2A58KhSaqbW+sg4x/wq+jAnrshlpznG2Q09A6FxGfEacb+usoAHX6th59EO1s+Orpvq0W11zC1ysqo8Ly4xQWhW1a66Tj73ix38+rZzWBjBnltvH+ngc7/YQVBr/u+z6wzZwdjtsvO1S+bz1Q/M4+DxHrbXtlPT6qGhsz80PsVipiwvg/nTs1lelhNzc2Y0lFK4omyJEWeUAnkm1B3e3DPA/OnRL7kwvAZODFPEh5hNirUV+bxZFX2tt6+hi931Xdx55aK4FerFORn84Jpl3P7I23zpVzu574azzvjHORjU/OC59/ifV6u4aEER9/7VqqhvDseiVGjc0trKfAZ8Ad443MrB4z3UtHro7vdhs5hwOSzMKXKxcLqLleV5UQ24jpXVbCInUwYiT0RUBY7W+pBSqkkpdRPQDuQC3wKuGusYrfWheAQcqSKXI+YC58QA49ibjSG0RoXVrHj1vZaoCpwDjd3squuMa9IBcDms/PKWtVxz35vc+NNt/Pb2c6gYowlZa80Tuxr4xu/eZXqOg5/fvMbwKZdKKRYWZ0dUeIn0kRp5JjyhIcbxflXNHgqybHGb1XP+3EJePNhMbatnzM/yeB7bVofNYuLqVdG3AI3mg4un892rFvOdJ/bx9d++y399fPmYS0N0D/j45u/38PS7jXxyXTnfvSrydXii5bCauWjhNC5aeOaBy2Lyi7qdT2t914gvXRXBMQnjdtnZVdcZ0zmG76riVOC4HFbWVubz0sFmvnn5qEMFxvXYtqOGJB0IrVnxyGfXcu39b3HVj1/nW1cs5NrVZacUUo1d/Xznj/t44UATq2fmcf+NZ6Vs06VIDamQZ4DYb6Zae+N2IwVw4YJp/OOT+3npYDOfOcM2LiP1ewP8cdcxLl8y/bSp1/Fw4zkVdPX7+M/nD1Hf0cf3r17KnKJTW7+e33ec7zyxl+aeQb552QJu3TAr2ePBRApKy4X+YKiLaiCm2Q014UFk5fnxSzyb5hfxvacPUNfeN6Gp2f3eAL9/x7ikAzCnyMVvbz+Hv//dHr7xuz384s0jrCjLDe9v086OI+2YTYpvXb6QT59bIcufiykvy24hy2amuSe28X41rR4uWhC/VoPygkxmu7N4+b2JFzhPvdtAz4A/LoOLx/LFTXOYlu3ge08f4LK7XuOC+UXMKXLS7w3wynvN1Lb1sWC6i/tvXM0KA7q/xdSQvgVOtp0BX5CeQX/Us1Vq2voozcuMegT6aC5cECpwXn6vmU9NYDr1UNL55Lro1qOI1Cy3k8duPZvf7KjjNzvqeHJ3A90DfhZMd/GZ8yr5q7UzY16fRoh0UpTtiGk1454BH6293qi6ksZz4YIiHt5yBM+g/7QZQeP51bajzHZnsbbSuBHsSik+vrqMTQuK+K/nD7G9tp2XDzZjMSvOmVXArRtm8/HVpbL4nYhJ+hY4Q4P/ugejLnBqWz3MjPMf81luJxUFmbx0cGIFzqPhpLOmIn6Di8diMimuW1vOdWvL0Voz4AsmZVCdEKnAHeOEhiNtfQBUFsY312xaUMSDr9Xw+uFWPhjh8g0HGrt552gn375iYUK6hAqdoXVpIDRLSGviekMppra0fScND/6LsulYa01tmyeq9RrO5MIF09hS1Uaf13/mg4GDx7vZebST69eWJ7wfWiklxY0Q4yhy2WNqwalpDU1mmFkQ31yzpiIfl93CywebI37NY9uOYjOb+Niq0rjGEomhdZqEiJe0fTcNL/YXZeJp94QWNaqIc9KBUNOx1x9ky+HIpnE+ujU0uDgZSUcIMT63yx7Tmlu14QIn3rnGajaxYZ6blw42oyNYZrbP6+f37xzjsqUTW7BOiMkqbQuc4e0aoixwattCSceIFpy1laE7q6febTjjse0eL7/ZUc+Vy4ol6QgxCRW5HHi8ATyDkbXIjlTT5mF6tsOQltKLFhbR3DPItpozr6D+2LY6egb8Ue87JcRkk7YFTnaGBZvFFHXfeE1rqF883mNwINTH/LGzSnl6T+MZu9B+/kYNA/4AX7hgdtzjEELErijGqeJH2vqoiPP4myGXLSkmJ8PKw2/WjnvcoD/AA5urWVuZz1kz03t5bDF1pG2Bo5QKTRWPsum4ttWD2aRi3mV7LDetr8AX0Dy6tW7MY3oGfDy0pZZLF08/bZ0IIcTkcPJ2DdGobTVmrB9Ahs3MdWvKhjffHMsfdh7jePcAX9o0x5A4hEiGtC1wINQ3Hu2Gm7VtHkrzMgybplhZmMUF8908svUIXv/oO0P/8q0j9Az4+cIFknSEmKzcMUxo6B7w0ebxxn2A8cluOHsmWmseeevIqN/3B4Lc92oVS2fkcP7c6LaQEWIySusCJ9SCE32BY8QA45PdtL6Clp5BntnbeNr3mnsG+N/Xatg4z83S0hxD4xBCRO/kJSkm6ki4K9zIXFOWn8nFC6fx2PY6BnyB077/6LajHGnr44ub5shqwSKtpHmBE91+VFpralv7qDB4QbuNc91UFmZx1wvv0xHeqRZCd1Rf+tU79HsDfOuKiW/pIIRInLxMK1aziirX1Bg4meFkN6+voN3j5Z6X3j/l6+/Wd/LPTx3g/LmFXLJI9l8S6SXNCxw7Xf2+Ue9axtPa66V30B/3lUVHMpkU//rRpdR39nPzQ9vxDPrROrR77raadr5/9VLmTZOxN0JMZkop3E57VF1UtcNr4Bh7M3XO7AKuXV3KvS9X8bPXawDo8Hj5/CM7KXTauOu6lWNueilEqkrblYzhRN94a+8gpXmRJ5Aj4bsqowscCCWeH1+/ks//304uvWszvQN+Ovp83Hj2TD6yMv6bagoh4s8d5WJ/ta0einMcOKzGLqapVOhmqqvfx3ef2s9vdtRR1RLaTPjx29eTL0tQiDSU1gXO0OyG5p6JFTg1Bi28NZZLFk/nR59YwS/fPMKs2VmsKMvlalnUT4iU4XY5qO/om/DrEjHWb4jFbOKu61byD0/so6Grn00Lirh44TTZzFKkrfQucIYH/02s6bi2LTRFvDQvw4iwRvWh5SV8aHlJwq4nhIifadl23j5y5sX0Rqpt64t4n6h4cFjN/Ps1yxJ2PSGSKa3H4AwVKPUdY6//MJra1j7KDJwiLoRILzPyMujo801oNeOufh/tHm/cN9kUQoSk9V/wnAwrTrtlwgVOVUsvs9xOg6ISQqSboS7wieSa6vAYmFmFkmuEMEJaFzhKhbqZJtI3Hghqalo9zHYnpl9cCJH6TrQWR55rqlpCY/1mF0mBI4QR0rrAgdCd1UTuqho6+xn0B5ktLThCiAiVRdGCU9XSi9WsKEvgWD8hppIpUOBkUNfeh9Y6ouMPh5uN58hdlRAiQoVOG3aLibr2yFtwDjf3UlGQhUXG+glhiLT/ZJXmZeDxBujs80V0fFVzqMCRFhwhRKROdIdPrAVH8owQxkn7AmdoN/BIE09VSy/5WTbyZOErIcQElOVnUt8ZWQuOLxDkaFuftBQLYaC0L3CGBv/VRTj4r6pZBhgLISYu1B0e2Y3UkbY+/EHN7CLJNUIYZQoUOEMtOBEWONJsLISIQmleJl39ProHztwdPrRNguQaIYyT9gVOToaVbEdka+F0eLy0ebySdIQQEzY0k+pYBLnmcHisn6y3JYRx0r7AgdCdVSSzG6pbZQaVECI6w93hEeSaqpZepmc7cNrTerccIZJqihQ4kc1uqGoOL7wld1VCiAmayNYwVS0eGX8jhMGmRIFTlh9a7O9Ma+FUtfRis5iYIQtvCSEmKD/LRqbNfMYCR2tNdbOM9RPCaFOiwCnNy6DfF6DN4x33uKqWXmYVZmE2qQRFJoRIF0Nr4ZxpxmZLzyA9g34pcIQw2BQpcCJbC6eqxSNJRwgRtUi2hjksM6iESIgpUeCU5Z95I7zeQT+1bR7mTXMlKiwhRJopi2Bz3/0N3QDMmy4FjhBGmhIFzozcodkNY99Z7anvQmtYXpaTqLCEEGmmNC+TngE/XeNsDbO7vouSHAdFLkcCIxNi6pkSBY7LYaXQaaM63DQ8mt31nQAsL81NTFBCiLQzsyDUHV7VOk6uqetkeVlugiISYuqaEgUOwNIZOcNFzGh2He1kZkGm7EElhIjasvAN0u66zlG/39Y7yNH2PlZIgSOE4aJaZUopdQfQCeRore8e57g3gJrw0zu11tXRXC8elpfl8sqhFnoGfLgc1tO+v7u+k7WV+UmITAgxmlTMM9NzHEzLtrNrjALn3fouAGnBESIBJtyCo5SaCxRrrR8G8pRSC8Y5/D6t9Q3h/5KWdABWlOWidWiszUhN3QM0dg1I95QQk0Sq5hkI5ZqxWnB21XViUqEWZSGEsaLpotoEbAs/3g1sHOfYs5VSX1ZK3aOUOu1aSqlblVI7lFI7WlpaogglckNNwu+MkniGkpHcVQkxacQtz0Cic00etW19dIyy7tbu+k7mFrnIki0ahDDcGT9lSqmLgYqTvuQGhu6SeoGF47z8Xq31AaXUp4ENwCsnf1Nr/QDwAMDq1avHX2Y4RrmZNioLs0a9s9pV14nFpFhckm1kCEKIMRiZZyCxuWboZmpXfSeb5hedHAO76zq5ZNF0Iy8vhAg7Y4GjtX7h5OdKqduAocViXEDbaK9TSjmAjvDTeiDpn+rlpTlsqWpDa41SJ1Yr3l3fyYJiFw6rOYnRCTF1pVOeWVqag1KhluGTC5yj7X109PmkpViIBImmi+plYE348XLgFaWUVSk1c8RxlwLXhh+XAYeiCzF+VpTl0twzSGPXwPDXgkHNu3VdMqtBiMklZfOM025hXpHrtIHGu4a7wmX8jRCJMOECR2t9CGhSSt0EtIefrwLuGXHo80C/UuoqIFtrvTPmaGO0ojwP4JTEs7+xm55B//D0TiFE8qVynoETA41P3uB3a007DquJ+bJauhAJEdVIN631XSOebwWuGvG1PuDB6EOLv4XFLmxmE7vrOrl8aTEAP3u9hgyrmYsXTktydEKIk6VqnoHQhIVf76jjaHsfMwuyaOsd5A87j3H50mIs5imz/JgQSTWlPml2i5mFJdlsfr8VXyBIXXsfT+xu4JPrysmXBf6EEHEy1OX90sFmAB7aUku/L8DnN85OYlRCTC1Tbq7izetn8je/3s2dT+zFYjJhUvDZ8yuTHZYQIo0smO5iXWU+3//zQSoLs3h4Sy0fXDyNudI9JUTCTLkC56MrSznc3Mu9L1ehFHxidRnFORnJDksIkUZMJsX/3HAWV9+3hU8/tB2t4QsXzEl2WEJMKVOqi2rI1z4wnyuXFWM1mbhNmoyFEAbIy7Lx85vXkJthZcM8t0wPFyLBplwLDoTuru6+biWtvYMUZTuSHY4QIk1VFGbxyt9uwmaZkveSQiTVlCxwIFTkSHEjhDBaTubpm/sKIYwntxVCCCGESDtS4AghhBAi7UiBI4QQQoi0IwWOEEIIIdKOOnmvlGRSSrUARyI8vBBoNTCcaEzGmGByxiUxRSbVY5qptXYbGUw0UiTXJOO6U+nfmqzrTqV/ayKvO2qumTQFzkQopXZorVcnO46TTcaYYHLGJTFFRmJKvmT9e5Nx3an0b03WdafSvzWZ1x0iXVRCCCGESDtS4AghhBAi7aRqgfNAsgMYxWSMCSZnXBJTZCSm5EvWvzcZ151K/9ZkXXcq/VuTeV0gRcfgCCGEEEKMJ1VbcIQQQgghxiQFjhBCCCHSjhQ4QgghhEg7KbebuFLqDqATyNFa353kWNYDX9VaXzMZYlNKOYBPAi3AOuBO4MtJjskG3Ah0AOVa6x8ppW4i9N5zAz/QWgcTHVc4tkrgb7XWX0z27y4czxtATfjpncCHJkFMmwAbcB3wNUK/y6TGlCiJfk8opaYDVwENwEzgPiM/G6Pkr1N+11rrdgOueVqO0loHT/4sxvua4euekoeAu4CbwnGsB/5Va+0x4trh6yc81wxdE/hnEvS+GiWHzcTg99R4UqoFRyk1FyjWWj8M5CmlFiQzHq31FqB3EsV2KRDQWj8JNAJrJkFMC4F8rfXvgTKlVDmwUWv9U+A4cEkSYhqyDsiaJL87CCWeG7TWNwDmZMeklHID87TWzwGfBwqSHVOiJOk98VfAY1rrpwittLzCyIuNyF+n/K4N/EM0MketCH99HZBl0DVhRB4CVhJa/fZpYAvwQQOvDcnJNUM/00S+r07OYT0k5j01ppQqcIBNwLbw493AxiTGMtJkiO0V4PXw4+JwDEmNSWu9G/iv8FMroUSzN/x8VzJiAlBKfRB4Jvx0MvzuAM5WSn1ZKXXPJInpUqBCKfVl4D+ByydBTImSjJ//FuA/lFI5wCzgUAKuOeSU37VSyqhi4xVOzVG1Iz6LhhglD70P/C78vDz83BDJyDUjrpnI99XJOexyEvOeGlOqFTiFQHf4cS+Qn8RYRkp6bFrrTq11lVJqDnCYUDfQpPh5KaX+DjhIqBUgqTGFuwI8Wuuu8JeS/rsLu1drfQ+wc5LEVAIcDcf0OyBnEsSUKMn4+e8AmoA/AA6tdW8Crjlk5O/6Y0ZcZJQcZePUz6KhhvKQ1rpHa71XKVUI2LXWewy6XsJzzSjXTOT76uQcNp0EvKfGk2oFThvgCj92hZ9PFpMitvCbe6XW+qHJEpPWOqi1/g8gAHgmQUzLAYtS6gJCH8KkxxQem9ARflpP6C4z2T+nfuDYSTENToKYEiUZn53bgbuBi4AFSqmVCbjmkJG/62KjLjQiR53yWVRKLTHquifnIaXUZUopJ/AhrfWPjLomyck1I6+ZkPfVKDnMToLeU2NJtQLnZULjSiD0S3wleaGcJumxhd9gl2utH1dKWYG3JkFMZyulbgg/PQ5UAENJbEUyYtJaP6e1fkVr/Uo4pmdI/vvqUuDa8OOySRLTduCs8OPpgJ4EMSVKMj7POUCbDq2++gdC74NEGfm7fs+Ii4ySo46f/FnUWu8d/wxRX3dkHppDaLDzw+HvG7IhZDJyzSjXTNT7amQOe5EEvKfGk1IFjtb6ENAUnoXTHn6eNEqpDcD5SqkPE+rDTXZsnwU+qJR6BHiJUItJsmOqAUqUUlcBq4CfApuVUrcQetP/JQkxoUKuARYT+sOd7J/T80B/+OeUrbXeluyYtNZvAoR/TgsJjWFI9s8pIZKUax4GblZKXQkswOBxKSPy11vhrw39rp806LKn5aiTP4vhQbhGGJmHagnNLPqFUupZQrnIEMnINSOu+SqJeV+NzGFvhGMx+j01JtmqQQghhBBpJ6VacIQQQgghIiEFjhBCCCHSjhQ4QgghhEg7UuAIIYQQIu1IgSOEEEKItCMFjhBCCCHSjhQ4QgghhEg7UuAIIYQQIu1IgSOEEEKItCMFjhBCCCHSjiXZAQwpLCzUFRUVyQ5DCBEnb7/9dqvW2p3sOEaSXCNEehkr10yaAqeiooIdO3YkOwwhRJwopY4kO4bRSK4RIr2MlWuki0oIIYQQaUcKHCGEEEKkHSlwhBBCCJF2oipwlFLrlVK/PcMxdyilblJK/XV0oY2tw+ON9ymFEJNQMnNNIKjp6vPF85RCiASKqsDRWm8Besf6vlJqLlCstX4YyFNKLYgyvtP872vVrPreX+gZkMQjRLpLZq655Iev8p0n9sbrdEKIBDOqi2oTsC38eDewcbSDlFK3KqV2KKV2tLS0RHTiedNcaA176rviE6kQIpUZlmvmFrnYXd8ZlyCFEIlnVIFTCHSHH/cC+aMdpLV+QGu9Wmu92u2ObLmM5aW5ALxT1xlzkEKIlGdcrinL5UhbH+3SJS5ESjKqwGkDXOHHrvDzuMjJtDKrMItdUuAIIQzMNSvKcgHYLblGiJQUc4GjlLIqpWaO+PLLwJrw4+XAK7Fe52QrynLZVdeJ1jqepxVCTGKJzjXLSnMwKWktFiJVRTuLagNwvlLqw8Aq4J6Tv6+1PgQ0KaVuAtrDz+NmRXkuLT2DNHQNxPO0QohJJpm5JstuYd40l7QWC5GiotqqQWu9GZh90peuGuWYu6IN6kyGxuHsrutkRm6GUZcRQiTZZMg1z+47jtYapZRRlxFCGCAlF/pbWJyNzWKSOyshhKFWlOfS1e+jtq0v2aEIISYoJQscm8XE4pJsdh3tTHYoQog0NjTQeFddR3IDEUJMWEoWOBBKPHuOdeEPBJMdihAiTc2b5iLTZpabKSFSUEoXOP2+AIeaxlzkVAghYmI2KZbMyGGXLCwqRMpJ2QJncUkOAAePd5/hSCGEiN6SkhzeO94ty1IIkWJStsAZmj3VKFPFhRAGmpGXwYAvSIdsvClESknZAifDZiY/y8axzv5khyKESGMzch0ANEiuESKlpGyBA1CS66BRko4QwkAl4dZiKXCESC0pXeAU52TQ0CldVEII4xTnSIEjRCpK6QJnRm6GJB0hhKEKsmzYLCYZ7ydEiknpAqck10HPoJ/uARn8J4QwhsmkKMlxyHg/IVJMShc4Q03HjdJNJYQwUKg7XAocIVJJShc4MvhPCJEIJbkZ0kUlRIpJ6QJnaC0caToWQhhpRq6Dpu4BfLI1jBApI6ULHLfLjsWkaOySAkcIYZzi3AyCGpq6pRVHiFSR0gWO2aSYlu2QqeJCCEOVyMrpQqSclC5wINRNJV1UQggjyWrGQqSelC9wSnId0kUlhDDU0IxNuZkSInWkfIFTnJvB8a4BAkHZ6VcIYYwsu4WcDKssSSFECkn5AqckNwNfQNPaO5jsUIQQaaxEVk4XIqWkfIEjfeNCiESYkSurGQuRSlK+wDmxEZ40HQshjFOcI4v9CZFKUr7AkdWMhRCJUJKbQVe/j95Bf7JDEUJEIOULnGyHhSybWZqOhRCGKgl3hzdKrhEiJaR8gaOUoijbIYOMhRCGcrvsALRIrhEiJaR8gQPgdtpp6ZGkI4QwTtFQgSO5RoiUkBYFTqHLJi04QghDFTpDBU5rrzfJkQghIpEeBY604AghDJaTYcVqVpJrhEgRaVHguJ12ugf8DPoDyQ5FCJGmlFIUOu3SWixEikiLAqcw3DfeJk3HQggDuV3SWixEqkiLAsftlMF/QgjjSQuOEKkjLQqcoRYcSTxCCCMVOm1yIyVEikiLAsct0zeFEAngdtlp83gJBnWyQxFCnIEl2hcqpe4AOoEcrfXdYxzzBlATfnqn1ro62uuNpyDLBkgLjhDpZjLlGQh1UQWCms5+H/nhvCOEmJyiasFRSs0FirXWDwN5SqkFYxx6n9b6hvB/hiUdh9WMy2GR9SmESCOTLc+AtBYLkUqi7aLaBGwLP94NbBzjuLOVUl9WSt2jlDrtWkqpW5VSO5RSO1paWqIMJURmNwiRduKSZyB+uebEYn+Sa4SY7KItcAqB7vDjXiB/jOPu1VrfA+wENoz8ptb6Aa31aq31arfbHWUo4YCcdtkjRoj0Epc8A/HLNdKCI0TqiLbAaQNc4ceu8PNTKKUcQEf4aT0wPcprRcTtstMqSUeIdDLp8oy04AiROqItcF4G1oQfLwdeVUrNHHHMpcC14cdlwKEorxURt7TgCJFuJl2eyXZYsFlM0oIjRAqIqsDRWh8CmpRSNwHtQC5wz4jDngf6lVJXAdla652xBHombpedngE/Az7ZrkGIdDAZ84xSSm6mhEgRUU8T11rfNeJLV434fh/wYLTnn6hC54mp4qV5mYm6rBDCQJMtz0BoYVFpwRFi8kuLhf7g5L5xmSouhDCO22mTPCNECkibAkdmNwghEsHtkv2ohEgFaVPgyOwGIUQiFDrttPUOEpDtGoSY1NKmwCkYGoMjLThCCAO5XXaCGjr6pJtKiMksbQocu8VMToY14bMb3qxq46u/2UVz90BCryuESI6h1uJEdodrrfn3Zw/yv69Vo7W0HAkRiahnUU1Gie4br2n1cOsvd9Az4OeNw63cf+NqVpTlJuz6QojEGxrvl8hc85NXqrjvlSoA3qnr5D+uWUamLa3StxBxlzYtOBCaKp6ou6qeAR+f+8UOLCbFg59ajdVs4tr732RfQ1dCri+ESI5Et+C8dLCJ/3z+Pa5aXsLfX7aAP+9p5Oafb5eWHCHOIM0KHHvCpm/+y9MHqGn1cO8nV/GBRdN44ovnYjEpHt5Sm5DrCyGS4+Q1t4zW1efjjkd3sag4m3//2DJu3zibb1+xiG017eyq6zT8+kKksjQscIxPOr5AkKf3NPLRlTNYP6cQgAKnnQ+vKOHJ3Y10D/gMj0EIkRxOuwW7xURbAm6mXjnUTM+gn+9+eAkZNjMA164uJdNm5tFtRw2/vhCpLM0KHBs9A34G/cZu17CjtoOeAT8XL5x2ytevX1tOvy/AE7saDL2+ECJ5lFIJay1+4UAzBVk2Vp40ts/lsHLV8tDNVI/cTAkxprQqcArCfeNG31m9dLAJm9nE+XMLT/n60hk5LC7J5ldbj0r/uBBprMBpM7y12BcI8up7zWxaUITJpE75ntxMCXFmaVXgFCaowHnxYDNnzy4gy37qLAalFNevLedAYzfv1stgYyHSVaHTTpvH2ALn7SMddA/4uXhh0WnfW1aaw6JiuZkSYjxpVeAUJGDwX02rh+oWDxctOD3pAHx4RQkOq4nf76w3LAYhRHIVZNkS0FLcjNWsOG+u+7TvKaW4bm0Z+xu7OdTUa2gcQqSqtCpwCrOMX5/ixQNNAFw4RoHjclg5e1YBr73falgMQojkKnDaaev1Gtp68uKBJs6eVYDTPvp6NxeFxwC+9n6LYTEIkcrSq8BxhVpw2jzG3Vm9dLCZedOclOVnjnnM+XPdVLd6qO/oMywOIUTyFDpteANBugf8hpy/ttVDVYtnzBspgBm5Gcx2Z8nNlBBjSKsCJ9NmIcNqNmw/Kq8/yPbadjbOO73J+GRDg49fl8QjRFo6Md7PmFyzpaoNIIJc42ZrTRsDPmNnjgqRitKqwIHQOByjWnAONfXgC2iWleaOe9zcIifTsu28dlgKHCHS0Ynxfsbkmr0NXbgcFioLs8Y97vy5hQz4guw80mFIHEKksrQrcIxc7G9/QzcAi0uyxz1OKcX5c928cbiVQFBmOAiRboxuwdnX0M2i4myUUuMed/asAqxmxWZpLRbiNGlY4NgMu6va19BFls1MRcH4d1UQurPq7PPJ3lRCpKHhFhwDWov9gSAHG7tZXJJzxmOz7BZWlufx+mEZaCzESGlX4BRk2Q29q1pYnH3aolujOTe8hYMMABQi/eRn2lAKQ8b7Vbd6GPQHz9hSPGTD3EL2Hus2LO8JkarSrsApdIXG4ATj3DUUDGoONHZHnHQKnXYWl2TLFE4h0pDFbCIv02bIYn9Drb6LZ0SWa84Pr5PzRnhgshAiJO0KnIIsO4Ggpqs/vnu01LZ58HgDETUbDzl7VgHvHO00fG8sIUTiGbXY375j3dgsJma7nREdv2RGDk67hW01UuAIcbL0K3CcQ2vhxPfOal94gPGiCFtwANZU5DPoD7L3mIzDESLdGLUf1b6GbhZMd2E1R5aezSbFqpl5bK+RmVRCnCztChx3eHZDS09876z2NXRjNSvmTXNF/Jo1FXkAbEtS4pE9aoQwTmF4NeN40lqzr6Er4q7wIWsr8nivqYfOPuN3OB+N5BoxGY2+BngKG95RPM4tOPsbu5lb5MJmibwmLHDame3OYnttO59ndlzjGY3Wmoe21PLzN2rp8HjxBzW3nFfJly6cg8NqNvz6QkwlRixJcayzn+4BP4sm0BUOodZigB21HVy8aFpcYxpNu8fLN373LrvrOuns91Gam8F3P7yE88KLnAoxGaRdC85wF1Uc76y01uyP4q4KYG1lPjtq2+M+6HkkXyDIt/64l396cj/FOQ4+dlYpFy4o4scvH+ayu16TbjIh4qwgy0b3gD+uY+z2RbjW1kjLy3KxmU1sr22PWyxjqWrp5aM/eYNXD7WwcZ6bm9dXoIEbfrqVv318N15/0PAYhIhE2rXg5GXaMKn4brjZ3DNIa683qgJnTUU+j26r472mHhYWT/z1kfrqb3bz5O4GPn/BbP7ukvnDU9mvf7+Vr/92Nzf/fBt/+MK54+6hJYSIXKEr1Frc7vFSnJMRl3Pua+jGpGDh9InlCofVzLLSHLYZXODUtfdx9U+2YDEpHv3c2Zw1M9QN/9UPzOPuF9/nJ69UEdSa//r48jMuUiiE0dKuBcdsUuRnxXexv/eO9wCwIIoCZajp2Mg7q+f3HefJ3Q189QPz+MalC05Zp+e8uYX84pa1DPqDfOah7XQPxHd2mRBTVUFW/FuLDx3voaIgiwzbxLuU11Tms6e+i36vMbM2tdbc+cRefIEgv/v8+uHiBkIF1tcvXcDfXDyP3+88xo9fOmxIDEJMRNoVOBCaKh7PFpzqll6AiKdtnqw0L4PiHAfbaowpcHoH/fzDn/axYLqLz18w+jifOUUu7r/hLGpaPXzlsV0yIFCIOBga79cSz1zT2susKPIMwNqKfPxBzTt1xkxq+POe47z8Xgtfu2Q+FWPskfXXF83h6pUz+K+/HOL5fccNiUOISKVlgVPossV1Vc+qFg8uh4XC8PieiVBKsaYin+217YYUFv/9/CGOdw/wLx9dOu600vVzCvnWFQt56WAzv95eF/c4hJhq3MP7UcWnBScQ1NS29jHbfeatYEazamYeSmHIdPHuAR//+OQ+lszI5qZzZo55nFKK739sKYtLsvnm7/fI6soiqdKywCnIssd1R/Ghu6po+5TXVubT1D3I0fa+uMUEof7wh9+s5fq15ac0F4/lpnMqOGdWAd97+gD1HfGNRYip5sSEhvj8Ea/v6MMbCDIrygInJ8PKwunZbKuN/4J//7u5mtbeQf71o0uxnGF9HrvFzH9du5zuAR/feWKvtBiLpEm7QcYQXoArjnvEVLd4OGdWQdSvX1cZGoeztbqdmRFs1Bmpn71RgwK+fOGciI43mRQ/uGYZl/5oM1//7bs8csu6iPbVilYwqHn5vWae23ec95t7qe/oJz/TxvQcB+fMLuCKpcUy6FmkrEybGYfVFLfu8OoWD0DUXVQQupl6bPtRvP7ghJa0GE+/N8Av3jrCxQunsaw0N6LXLJiezVcunsd/PPceT77byFXLS+ISy1g6+7z8ensdO4928H5zL32DAabnOKgoyOSSxdPZNL8oqnFNIrWlZQtOodOOxxuIy2A7z6Cfxq4BZhdFn3TmFDkpyLLxVhyXUu/q8/Hr7XVctbxkQjM4yvIz+dYVi9hS1cavdxjTVaW15k+7G/jAD1/llod38Pz+JuwWE5vmuykvyKSpe4B/e+Yg5//gZa5/4C3elD10RApSSoXXwolPa3FVDGP9hpw9K58BX5A9xzrjEhPA42/X0dnn49YNsyb0uts2zGJ5WS7/+Kd9tBuw6zpAV7+Pf/zTPs75/kt8/5mDvN/Uy9wiJ+fOKcRpt/Da+6184f92svp7f+Ffnt5PiwGbo4rJKy1bcIb6xlt7B2NuIahpDd9VjTGoLhJKKdZW5rO1On4DjR/ZeoQ+b4DPTTDpAFy/tow/7T7Gv/75ABcuKGJatiNucXX1+fjWH/fw1LuNLCzO5q7rVnD50uLTxgfVtffxp90NPLSllusffIuzZ+Xz7SsWsWTGxBY4i8agP8DxrgFaegbxBTQaTbbDSqHTTqHTdsYmeCGGxHOxv6oWD7mZVvKzJj7Wb8jaylBL81vV7Zw1Mz/mmAJBzf++VsPK8lxWR9ANfjKL2cQPPraMK+95je8+uY8fXbcy5nhOtrW6ja/+ZjfHuwf4yIoZfG5DJQtGTK/3B4JsrWnnNzvq+OnrNfzyrSN8+txKvnDBbFwOa1zjGUlrTXe/n4aufrr6fQS1xmIykZ9lw+20k5Np7PVFDAWOUuoOoBPI0VrfHe0xRnBnhwqc5p6BmAucobuqWJqNIdR0/Mze49R39FGaF1tMg/4AD22pZcM8d1Rr6yil+Lerl/HBH23mO3/cy/03nhWXNSveO97DZx7aTlP3AH/3wfncvnE25jG6wMryM/nipjnccl4lv9p6lB+/fJgP/fh1PraqlL+9ZD7Tc+JXdDV1D/DywWa21bSzq66T6nDROhqrWVFRkMW8aS6WzMhh6YwclpbmkJMR/2SktaZ30E+7x0t3v5+eQR++gMYfCGJSCrNJYbeYyLJbyLJbyM2wkp1hHfNnmo4mc54BKHLZOdIWn/Fs1S29Md1IAeRn2Zg3zcnWmna+uCn2mJ7bd5yj7X38v8sXRJUj5k938fkL5nD3i+/z4ZUz2DS/KOaYtNY8sLmaf3v2IDPzM/nt7eewsnz04stiNnHunELOnVPIHRfN5e4X3+e+V6p4fEc9X7tkHh8/qzRuNzTBoGZ3fSevHmph59FOdtd1jrvpc16mldluJwuKXSydkcOy0lzmFjkNucEKBDXtHi9d/V66+v30ewP4gkECAY3ZrLCaTGTYzGTZzbgcVnIzrGTazCm/llFUBY5Sai5QrLW+Syn1D0qpBVrrgxM9xihF4QW4mrtjv7OqbvFgUjCzILaiZF34zmpbTXvMBc4ze47T0jPIf19bGfU5Kgqz+JsPzOPfnjnIE7sa+MjKGTHFtKWqldt++TYZVjO//fx6VpTlRvQ6h9XMZ86r5JrVpdz70mF+9kYNT73bwOfOn8XnNswiO8q7rPqOPp56t5Gn321kT3gV50KnnZXluVy1ooQZuRlMy3YMtyx1D/ho7R2krr2fqpZe3j3WydN7GofPN8udxZKSHBaVZDN/mouKwixK8zLGnbk26A/Q3D1IQ2c/DV391LX3U9/Rx7HOfo519NPUPUi/b+LdqDkZVvIyreRm2ob/n+2w4HRYyLRZcFjNWM0KiykUm0YTDGq8AY3XH6TfF6Df66fPG6DPG8AzGHoc+nqAAV+AQX8QbyBIIBgquIaGiX54RQnf+8jSCcccjcmeZwCKsu1xW+OqutXDBfPcMZ9nXWUBv99Zjz8QjPmP5UNv1FKen8kHFk2P+hxf3DSbP+9p5Ju/28OzXzmf3MzoW6gCQc0/PbmPX7x5hCuWFfODjy0jyx7Zn7FZbic/um4lnz63kn9+aj/f/P0efv5GDd+4dAEXLiiK6o95IKjZWtPGk7sb+cv+47T2ejEpmDfNxeVLpzPb7aQkN4PcDCsmk8If0LR5BmnpGaS61cPhpl6eeKeBR946CkCG1czikmwWl2SzqCSbWW4nFQVZFDptY8antaZ7wM/xrgEaOvup7+ynvr2P+o5+jnX209DZT2vvIBNdTN9qVuRl2sjLtJGbaSUv00Z2hoVsh5VMu4VMmxm7xYTFbMJiUmgNQR3KF/6gZsAXyil93gB9gwE8wznHT78vyIA3wIA/gNcfxBd+TeCkIH95y7qI/46MJdoWnE3AtvDj3cBGYGRSOeMxSqlbgVsBysvLowzldO6hAicO/a3VrR5K8zJj3stpwXQX2Q4LW6vbuXpVaUzn+tW2o1QUZHLu7Nj2ffnseZW8sL+J7/xxL2fNzIu6teuZPY3c8dguZhZk8tBn1jIjd+KrumY7rHzz8oXccPZMfvDce9zz0mEeeqOWT55dzo1nz4yoKKxr7+O5fcd5ek8j7xztBEJL2H/90vlctGAa86ZNbCZch8fLnmNdvFvfye76Lt4+0sGfdjeccsxQsWG3mLGY1XAB0dXvo2fAf9o53S47pXkZLJ6Rw8ULHbhddgqcdnIyrGTZzaHzmBSaUPP6oD+IZ9BP76Cfrn4fnX0+Ovu8tIf/39I7yOGW3lAL0IAv4iSWYQ3drWXYzGTZQskq02YhP8uG3WLCbjFjs4SKJLNJMfRjizXhTFBc8gwYmGucDjr6fDEP6u0e8NHSMxhzSzGEWot/+dYR9jZ0x/T7Otzcw7badv7+sgUxtRraLWZ+eO0KPvqTN/h/f9jDvZ9cFVUxMegPcMeju3h233Fu2zDrtEVNI7W8LJfHbz+HZ/ce59+fPcgtD+9gYXE2t22YxaVLpp8x1/sCQd4+0sEzexr5897QzWamzcyFC4r4wKJpbJznnlARFwxqato87KnvYnd9J3vqu/jt2/V43jxx82M1hxawdTmsWEwKpRSDvlDR0OHx4Q2cuj2GzWxiRl4GM3Iz2DjPzfScUK4ZuhnKsJqxWUKfbX9Q4wvnrT5vgO5+XyjX9Pvo8Hhp93jp7PNR1dJLz0AoD0V6Y2YxKTKsZjLtofySZTeTabWQl2nFke3AbjVhM5uwWUzD/66ht0ZBDF21w9eP8nWFQHX4cS+wMJpjtNYPAA8ArF69Om5zCQuy7JgUcRlQVtXcG/W0zZOZTOFxODEONK5q6WVbTXvUH+6TWcwmfviJFVx+12vc8dg7/Oa2cyZ8x/f4jjq+8bt3WVWex09vWhNzv3JZfib3XL+S2zbM4v7N1Ty4uZr7X61m6YwcLpjvZrbbSWleBhoY8AWoafVw8HgPb1W1DXc9LS7J5uuXzufKpSWUx9DylpdlY8M8NxtOuqvu8Hipbu2lprWPYx39tHkGafd48YVbO6xmEw6rmZwMK4VOG26XneKcDEpyMyjNyzB001OtNd5AkH5vAH9Q4w+EPlJKhVb4tppN4eLFlCpNz3HJM2BcrinKPrHYXzSF/ZATM6hizzXrZg3N2myLqcB5bFsdFpPiYzHekAEsLc3ha5fM59+fPcjjO+q5dk3ZhF7f5/Vz2y/f5rX3W/nOlYu45bzoW68h1E1/2dJiLlo4jSd2HeP+zdV85de7yPyDmY3z3Jw1M4/Kwizysmx4/UE6+3wcauph77Eu3qxqo2fQj91i4sIFRVy5rIQLF0Q/S8tkUsx2O5ntdg63pAeDmqPtfdS0eTjS6qGpZ5DWnkE8Xn9o3KDWOKxmMqxm8p02CrPsTM9xUJLrYEZuJkUuu+EzZPvDLb3+YCj3KRQmBVazCYtZhVuSkzueMdoCpw1whR+7ws+jOcYQZlNodkNzz0BM5wkGNTWtHs6OYYr4ydZVFvDCgWaaugeiHtj76+2hpHPNWbEnHQgVFN/76BLueGwX//rng3znyoUR/fHTOjT48F/+fIDz5xZy/41nkWmL35j1JTNyuOf6lXz9g/N5ek8jz+49zo9fPsxoS2rkZFhZXpbLDWfPZNOCIipjHMcwnrwsG2dl5cdlAGe8KaWwW0KtQGliUucZONEd3tITa4EzNIMq9vdukcvBrMIsttW0c9vG0Vc3P5NBf4Df7aznA4umDbeIx+q2DbPYfKgltPJ6sSviKeftHi+f+8UO3jnawQ+uWca1qydWHI3HZjHx8dVlfGxVKVuq2nhmbyN/2d/EM3tPX4VZKZiZn8mVy4vZOM/NeXPdOCPsHpsok0lRUZgVWjF6viGXiInJpMJjA5Mdyfii/e28DNwM/AFYDjyqlJqptT4yzjG/ij7MiSvKtsfcRXW8e4B+X4DZRfH5gzlUKL1xuDWqbqpBf4Dfvh3fpAPw4RUzeOdoJz97o4b8LCtfunDuuMf7A0H+8cl9PPLWUS5fOp0ffmKFYX9Uy/IzuX3jbG7fOJsBX4C69j4augYwK4XNYqI8P5Np2fZUaZEQEzP584wrdKPS3B3bzVR1iwezSVGeH59cs25WAU/uboi66+y5fU109Pm4fm38uvNMJsVd163g6vu2cNPPtvH47ecwp8g17mtqWj18+ufbaOga4MefXMXlS4vjFs/I2M6bW8h5cwv53keW0Nnno6bNQ3e/D5vFhNNuYU6RM643ccJ4UbUfaa0PAU1KqZuAdiAXuGe8Y8LPE6bI5Yh5kPFws3Fh7P3iEOo6KXTaeelgc1Sv/8v+Jto9Xq6LY9IZcueVi7h65Qz+8/lD/OSVw6cM9jrZ0bY+PvWzbTzy1lFu2ziLH1+/KmEtBg6rmbnTXOG7p0LWVuYzPcchxU2aSok8kx2f8X7Vrb2U52fGbXG+TfPd9A762RHlAOjHth2lNC+D8+bENs5vpKJsB4/csg6zycQN/7uN/Q3dox6nteaJXcf46E/eoKvfx6OfW2dYcTOSUoq8LBuryvO4YH4R62cXsqw0V4qbFBT1b0xrfdeIL10VwTEJ43bah2fPRKu6NX7NxhC6S9g0381z+45HNcPh0W1HmZGbwflxTjpDsf37NcsY8Af4wbPv8Zf9TfzDhxazpCQbi9lEbauHJ3c3cO8rh7GYQutbTLQfXYiJmux5piDLhlJxKHBaPDFPET/ZuXMKsZlNvHSwmfUTzBc1rR62VLXxtQ/MM2QcR0VhFr+8ZS03/nQbH/rx63zu/Fl89vxKCrJs+AKaHUfaeXBzNS+/18Ly0hzuum7lmJt7CjGetC1Ji7LttPUOEgjqqGcAVLd4yLKZ49oddOGCIh5/u563j3SwbgJje2pbPbxxuI2/vcSYpAOhwWH3fnIVT+xq4LtP7ecj976BzWwiN9M6nMAvXjiNf/7I4gmtnixEurKYTRRk2WiJYbzf0Fi/eLaWZNktrJuVz0vvNfPtKxdN6LWPbT+K2aQMvYFZWJzNC1/dwPf/fJD/ebWK/3m1itxMKz5/EI83QKbNzJ1XLuKm9RVTat0nEV/pW+C47AR1aCO8oigH9B5p81BRmBXXLpDz5hZiNSteeq95QgXOo+Gk8/E4DrAbjVKKj6ycwcZ5bl440ERVi4fjXf2sLM/jgvnuuO6lJUQ6cLscMc3YbOoZYNAfjHsrxYULivinJ/dzpM0T8efW6w/y2x31XBTnFc5Hk5tp49+vWcZfnV3O9toODjf3YjbBhrlu1oe3WhAiFmn7DnIPDf7rib7AqW3rY1EUKwWPx+WwsrYyn5cPNvPNy0ad0XqaoaRz8ULjk86QvCyb4cWUEOmgyBXbhIah7WAq4nzzMFTgvHSwmU+fG9m06uf3H6fN4+WT6+I/zm8sy0pzI55RJcREpO2mO+6Tpm9Gwx8IUtfeR0Vh/He73jS/iENNvdS1R7bE+1/2N9Hm8cZ1RoMQIj7cLntMExpqW0N5IN65ZmZBFrPdWROa1DA8zm9u7CsqC5FsaVvgDG/XEGXfeH1HP/6gjvtdFYTurICIE88v3qyVpCPEJFXkCm24GZzoWvhhR9o82CwmSgwY13bhgiK2VrfTMzD2nkhDDjf38sbhNq5bUybjXkRaSNsCxx3jflQ1beFmYwNG789yO1kw3cVj2+vQo61cd5K3j7Sztaadz5xXKUlHiEmoyGXHH9S093mjen1Nq4eZ+ZmGTB64bGkx3kCQP75z7IzH3vdKFQ6rKaHdU0IYKW0LnKHl8qPtGz9iUL/4kJvWV3CgsZvttR3jHnfvy1XkZ9m4fq2MhxFiMhoa4xdtd3hteDKDEVaW5bJ0Rg4Pv3lk3JupuvY+/rjrGNevLafAOcmXpxUiQmlb4EDozir6pNOH026h0Bn7hl+j+ciKGeRkWHl4S+2Yx+xr6OKlg8185twKWWRKiEmqKIbNfYNBzZG2Pipi2DNtPEopbl5fMdz9NJb7N1dhUnDrhlmGxCFEMqR1geN2Rb8fVU2rh4rCTMNWyc2wmfnEmjKe3Xechs7+UY/5yStVuOwWbjynwpAYhBCxO9EdPvFcc7zbmCniJ7tyeTEFWTYe2lIz6vebuwf4zY56PraqVNa3EmklrQucWKZv1k5g7Yho3Xj2TLTW/PKtI6d977l9x3n63UZuWl9BTkZsO3QLIYxTdNKSFBNVG+4KrzQw19gtZq5fW86LB5s5Eh5bOCQY1Pz97/egteb2KDfmFGKySu8CJ9tBc8/gGQfyjuQLBKnv6Dc06UBoI8nLlhbzwOZqXjrYNPz12lYPf/ub3SwrzeFLF84xNAYhRGwybGZcdktU3eFGTmY42Q1nzyTDaub2R3bS1X9iRtVPXjnMSweb+fYVi2Q7BJF20rvAcdnx+oN09/sn9Lr6jn4CQZ2QD/y/Xb2URcXZfP6RnTy37zjP7m3k9kfexmxW3PvJVTisidnIUggRPXd2dOP9als92C0mphu8gOf0HAf/c8NZHG7u4ZaHtrPzaAcPbq7mv/9yiKuWl/Cpc2Yaen0hkiGtR64OL/bXO0BOZuTdPLXDM6iMGfh3MpfDykOfXsO197/Jbb98GwCH1cT/3HAWZfnGX18IETu3M7rxfrVtfcwsMGaK+Egb5rm567qVfOlXO7n6J1sAWFaaw/evXmrYWEMhkmlKFDjN3YPMKXJF/LrhpdMT1GRb4LTzm9vOYfP7LcwqdDJ/uktaboRIIUXZDt6t75zw62pbPVQmsGvo8qXFPH77epq7B1gyI4fSvAwpbkTaSusCZ2hGQEPXxO6sats8uOwWCrKMmSI+mgKnnY+uLE3Y9YQQ8VOc4+C5fQMEgzri1phgUHOkvW94ZfNEOWtmXkKvJ0SypPUYnJLcUL/2sY7Rp2GPJTRFPL67iAsh0ldpXgZef5BWT+TjcBq6+vEaPEVciKksrQscu8XMtGw7dR2RbWo5pLrFw2y3JB0hRGRK80KtxXXtkd9MVbWEusJnu52GxCTEVJfWBQ5AaV4m9RMocPq8fo519kvSEUJErDQvNCFgIrmmqrkXQG6mhDBI2hc4ZXkZ1E+gi6p66K6qSAocIURkhlpwJpJrqlp6yc20kp/AsX5CTCVpX+CU5mXS2DWAPxCM6PiqltBd1RwpcIQQEcq0hSYlTKQF53BzL7PdThnrJ4RBpkCBk0EgqGmMcCZVVYsHk4KZCVgDRwiRPkon2FpcJWP9hDBU2hc4Q4vlRZp4qpp7Kc/PxG6RdWiEEJErzc+MOM909flo7R2UlmIhDJT2Bc7w7IYIm46rWnplgLEQYsJK8zI41tFPMHjmve+qWocGGEuuEcIoaV/gFOdkoFRkLTiBoKa61SMDjIUQE1aal4k3EIxoV/ETM6gk1whhlLQvcGwWE8XZjogG/x3rCC28NUeSjhBigsqGZ1KdOdccbunFZjYNtzALIeIv7QscCK+FE8ECXEMzqGYXycA/IcTEDK2FE0l3eFWzh4rCTCzmKZGChUiKKfHpCs1uiCDphAucWYXSgiOEmJjhtXAiuJmqlrF+QhhuahQ4+Zkc7x7A6x9/LZyqll4KsmzkycJbQogJcljNuF32M4738/qDHGnvkwJHCINNjQInL4Oghsau8RNPVbNHko4QImqleRln7KI62u4hENTSFS6EwaZMgQPjz6TSWvN+c48kHSFE1EJ7341/I/V+k8ygEiIRpkSBUxbBRnjHOvvp6POxqCQnUWEJIdJMWV4GDZ39BMZZC2fPsS4sJsW8aa4ERibE1DMlCpziHAdmk6JunMF/u+o6AVhZlpuYoIQQaac0LxN/UHO8e+ytYXbVdbKwOBuHVVZLF8JIU6LAsZhNVBZmcaCxe8xjdtd1YrOYmD9d7qqEENGZOy3U7XSgYfRcEwxq3q3vYnmZtBQLYTRLNC9SSt0BdAI5Wuu7xznuDaAm/PROrXV1NNeLhxVlubx8sBmt9ai79+6u62JJSTZWWZdCiEkhFfPMkpIczCbFrrpOLl407bTvV7f20jvoZ3lpbuKDE2KKmfBfc6XUXKBYa/0wkKeUWjDO4fdprW8I/5e0pAOwvCyXNo931AGA/kCQPce6WC7dU0JMCqmaZzJsZuZPcw13eY/0ztHQ11eW5yYsJiGmqmiaKzYB28KPdwMbxzn2bKXUl5VS9yilkto0MjS25p1REs+hpl76fQFWSIEjxGSRknkGYEV5LrvrO0fddHN3fSdOu0UWExUiAc6YDJRSFyulPjv0H+AGhjqYe4H8cV5+r9b6HmAnsGGUc9+qlNqhlNrR0tISRfiRmz/dhd1iYvcoBc7u+tDXpMARIjmMzDPh8ycs16woy6VnwE91q+e07+2u62JZaQ4m0+nd5EKI+DrjGByt9QsnP1dK3QYMjcR1AW2jvU4p5QA6wk/rgemjnPsB4AGA1atXjz2vMg6sZhNLZuSM2nS8u66T3Ewr5fmZRoYghBiDkXkmfP6E5ZqhG6VddZ3MKTrRUjPgC3CgsZtbN8wy8vJCiLBomnNfBtaEHy8HXlFKWZVSM0ccdylwbfhxGXAouhDjZ0VZLnuPdeELnLplw666TpaX5o46+FgIkRQpm2dmu5047ZbTWov3NXTjD2oZ6ydEgky4wNFaHwKalFI3Ae3h56uAe0Yc+jzQr5S6CsjWWu+MOdoYrSjLZdAf5GBjz/DXPIN+DjX1SNIRYhJJ5TxjNimWlZ7eWjxU8EhXuBCJEdU0ca31XSOebwWuGvG1PuDB6EOLv+Gm4/pOlpaG1qF44UATQQ1rKvKSGJkQYqRUzTMQmrX54OZqBnyB4QX9nt13nLL8DKZlO5IcnRBTQ9JnHCRSaV4GBVk2doWnamqtue+VKuYUOTl3dmFygxNCpI0VZbn4g5p94QX/3j7Szraadm5eX5nkyISYOqZUgaOUYnVFHs/vP87h5l5eOtjMweM9fH7jbJnVIISIm1XleZgU3P9qFcGg5icvV5GXaeX6tWXJDk2IKWNKFTgA375iETazic88tJ0fvnCIGbkZXLWiJNlhCSHSiNtl51tXLOL5/U18+dF3ePFgMzevryTTFtWoACFEFKZcgVOWn8mDN62mqXuAvce6uX3jLNmeQQgRd585t4Ibz57J03saybKZuWn9yAlgQggjTcnbiVXledz7yVX8/p16Pr5amoyFEPGnlOIfPrQIjWZhcTa5mbZkhyTElDIlCxyAixdNG3UzPCGEiBeL2cT3PrI02WEIMSVJ34wQQggh0o4UOEIIIYRIO1LgCCGEECLtSIEjhBBCiLQjBY4QQggh0o7SWic7BgCUUi3AkQgPLwRa43TpeJ1rMsYUz3NJTIk9TzzPlayYZmqt3XG6btwkMdfIdVL3OmJyGzXXTJoCZyKUUju01qsn07kmY0zxPJfEJDHF+1ypIFH/XrnO5L6OSE3SRSWEEEKItCMFjhBCCCHSTqoWOA9MwnNNxpjieS6JKbHniee5JmNMqSJR/165zuS+jkhBKTkGRwghhBBiPKnagiOEEEIIMSYpcIQQQgiRdqTAEUIIIUTasSQ7gIlSSt0BdAI5Wuu7YzzXG0BN+OmdWuvqCb5+PfBVrfU1scQ2ynmiiksp5QA+CbQA64A7gS9HGdNo53ptonEppWzAjUAHUK61/pFS6iZC7z038AOtdTDCmEY71x+B3vAh92itt0b4T0QpVQn8rdb6i7G+r0acK9rf3ymvAz4UbUyjnOuXUca0CbAB1wFfI/TzjyqmVBPPXDPONVYA/wMcJrRo3Y+11k/F8fyn5Jbw14bfq3G6xmi54uyR1zXgOj8BrgQagJnAfZHmEjE1pFQLjlJqLlCstX4YyFNKLYjxlPdprW8I/zeh4gZAa72F8B/XWGI7+TwxxnUpENBaPwk0AmuijWmUc62IMq6FQL7W+vdAmVKqHNiotf4pcBy4ZAIxjTxXPvDbk2KKuLgJWwdkxel9tQ7ICj+O9vc3/DrAHGNMI2OYcExKKTcwT2v9HPB5oCDGmFKGAblmLFZgQ/h3/ot4Fjcwam6BU9+r8XBarhjjuvG+zvXAY+Gf2RFCOUqIYanWgrMJ2BZ+vBvYCByM4XxnK6XygHnAHTFW//GMLdq4XiH0RwigOBxDtDGNPFct8JmJxqW13q2U2hN+aiVUpOwNP98FfAJ4NpKARjlXD7BEKfV5YBnwda11TyTnUkp9EHiGUNKM6Xc34lwQ/e/v5NftiSWmkTFEGdOlQIVS6svAfOD9GGNKJfHONaPSWm8HUErNINQyaahR3qvx8Aqn5wojjLzOM8B/KKW+DswKf1+IYSnVgkOoCbc7/LgXyI/xfPdqre8BdgIbYjxXPGOLKi6tdafWukopNYdQk7cl2phGnktr3R5tXABKqb8j9AeiINqYRp5La+0DHtZa3wf8BvhYhK+fDni01l3hL0X9uxvlXBD9z+nk18X6fhoZQzQxlQBHw6/7HZATY0ypJN655kxuAJ438gJjvFdjNkauiLtR8ts2oAn4A+DQWse7xUikuFQrcNoAV/ixK/w8KuH+3KE7pnpgemyhxSe2WOMKJ7GVWuuHYo3p5HPFEpfWOqi1/g8gAHhiienkcymlruBEM/hEYloOWJRSF4RfE0tMp5xLKbWEKH5Oo/x8rdHGNMbvKprfXT9w7KTXDUYbUwqKW645E6WUAmZprQNGXSNstPdqXIzIO4YZcZ3bgbuBi4AFSqmVRl5bpJ5UK3BeJjSuBEIf1ldiONelwLXhx2XAoRjOBfGLLeq4wn/YLtdaP66UsgJvRRvTKOf6RjRxKaXOVkrdEH56HKgAhhLrignGNPJcK4G/mWhMWuvntNavaK1fCZ/nGaL8OY1yrjlE9/sb+XuPOqZRzlUSZUzbgbPCj6cDOoaYUk08c82ZzCUBwwVGvle11nvP9JpIjMwVSqnl8Tjvma5DqFWtTWutCbXilBlxXZG6UqrA0VofAprCs3Daw8+j9TzQr5S6CsjWWu+c6AmUUhuA85VSHyY0PiGq2Eac5y8xxPVZ4INKqUeAlwi1mET78xp5rj9EGVcNUBJ+3Srgp8BmpdQthP5o/mUCMY08193A3vDzs4AnIz2RCrkGWEzoD3fU76sR56ohup/TyPfjthhiOuVchGbpTDgmrfWb4X/fNYTGTv1XDDGllDjnmjNxEBpPFncn5xZ1wjXA4vBA6ng4Le+MvK5B13kJuFkpdSWwgNBNgRDDZKsGIYQQQqSdlGrBEUIIIYSIhBQ4QgghhEg7UuAIIYQQIu1IgSOEEEKItCMFjhBCCCHSjhQ4QgghhEg7/x9yLV/yTZCPTwAAAABJRU5ErkJggg==\n", - "text/plain": [ - "
" - ] - }, - "metadata": { - "needs_background": "light" - }, - "output_type": "display_data" - } - ], - "source": [ - "# 接收各种locator的例子\n", - "fig, axs = plt.subplots(2, 2, figsize=(8, 5), tight_layout=True)\n", - "for n, ax in enumerate(axs.flat):\n", - " ax.plot(x1*10., y1)\n", - "\n", - "locator = matplotlib.ticker.AutoLocator()\n", - "axs[0, 0].xaxis.set_major_locator(locator)\n", - "\n", - "locator = matplotlib.ticker.MaxNLocator(nbins=10)\n", - "axs[0, 1].xaxis.set_major_locator(locator)\n", - "\n", - "\n", - "locator = matplotlib.ticker.MultipleLocator(5)\n", - "axs[1, 0].xaxis.set_major_locator(locator)\n", - "\n", - "\n", - "locator = matplotlib.ticker.FixedLocator([0,7,14,21,28])\n", - "axs[1, 1].xaxis.set_major_locator(locator);" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - " 此外`matplotlib.dates` 模块还提供了特殊的设置日期型刻度格式和位置的方式" - ] - }, - { - "cell_type": "code", - "execution_count": 126, - "metadata": {}, - "outputs": [ - { - "data": { - "image/png": "iVBORw0KGgoAAAANSUhEUgAAAVsAAADQCAYAAACpz8JCAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjQuMiwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8rg+JYAAAACXBIWXMAAAsTAAALEwEAmpwYAAAp3ElEQVR4nO3deZhcZZ3o8e+vlu7qfd+ydGdfyAIJgZCAhCCIREVURBRHvKDoKMiM27iMjj53rqPjc73DgDDiMoMIOOAGqIigCTBACFkIkLWTTjpb791J72u994/3dAidTrqr+tSp6qrf53n6SXX1qfP+crr6V+95VzHGoJRSKrZ88Q5AKaVSgSZbpZTygCZbpZTygCZbpZTygCZbpZTyQCDeAQwrLi42M2bMiHcYSik1IVu2bGk2xpSMfD5hku2MGTPYvHlzvMNQSqkJEZHa0Z7XZgSllPKAJlullPKAJlullPJAVMlWRFaLyK/GOOYOEblJRD4XXWhKKZU8okq2xpgXgc4z/VxE5gIVxpj7gQIRWRBlfGd19HgPG2taYnFqpZRyVayaEdYCm5zH24E1ox0kIreKyGYR2dzU1BRxId97cje3P7wNXUxHKZXoYpVsi4F253EnUDjaQcaY+4wxK4wxK0pKThuWNqaLZhXR1NHH/qau6CNVSikPxCrZtgA5zuMc53vXrZpdBMBL2pSglEpwE062IhIUkaoRT68HLnAenwtsmGg5o5lRlEl5boiN+zXZKqUSW7SjES4F3iYi7wWWA3ed+nNjzF6gQURuAlqd710nIqyaXcTGmhZtt1VKJbSopusaY54DZp/y1DWjHHNntEFFYtWsIn677SjVjZ3MK8sZ+wVKKRUHk35Sw8l2W21KUEolsEmfbKcXZjI1P0OTrVIqoU36ZAt2CNjGAy2Ew9puq5RKTEmRbFfNLuJ49wB7GjriHYpSSo0qaZItaLutUipxJUWynZqfwfTCDF452BrvUJRSalRJkWwB5pflcKBZp+0qpRJT0iTbysIsDrV26+QGpVRCSppkW1WUSXf/EE2dffEORSmlTpM0ybayKBOA2pbuOEeilFKnS5pkW1WoyVYplbiSJtlOK8jEJ3CoRTvJlFKJJ2mSbVrAx5T8DGpbtWarlEo8SZNswXaSaTOCUioRJVWyrSzMolabEZRSCSipku2Mokzaugdo7x2IdyhKKfUWSZVsq5zhX4e0KUEplWCSKtlWFmYBOvxLKZV4kivZDk9saNV2W6VUYkmqZJudHqA4O43aZq3ZKqUSS1IlW4Cqoiyt2SqlEk7yJdvCTO0gU0olnKRLtpVFmdS199I3OBTvUJRS6qSkS7ZVRZkYA4dbe+IdilJKnZR0yfbN4V/abquUShxJl2xn6Lq2SqkElHTJtjArjcw0P0ePazOCUipxJF2yFRHKc0PUn+iNdyhKKXVS0iVbgPK8EPXtmmyVUokjeZOt1myVUgkkKZNtRV6IhvZehsK6rblSKjEkZbItzw0xGDa06LbmSqkEkZzJNi8DQNttlVIJIymTbUVeCIA6bbdVSiWIpEy2Zbk22WonmVIqUSRlsi3KSiPoF63ZKqUSRiDaF4rIHcBxIM8Y8+9nOOYF4IDz7TeNMTXRlhcJn08oy7UjEpRSKhFEVbMVkblAhTHmfqBARBac4dB7jTEfdb48SbTDKvJC1J3QKbtKqcQQbTPCWmCT83g7sOYMx10kIreLyF0iclpZInKriGwWkc1NTU1RhjK6Mp2yq5RKINEm22Kg3XncCRSe4bgfGmPuArYCl478oTHmPmPMCmPMipKSkihDGZ2t2fZijE5sUErFX7TJtgXIcR7nON+/hYiEgDbn2yNAeZRlRaU8L4O+wTAnega8LFYppUYVbbJdD1zgPD4XeFZEqkYc807geufxdGBvlGVFRcfaKqUSSVTJ1hizF2gQkZuAViAfuGvEYX8GekTkGiDXGLN1IoFGSsfaKqUSSdRDv4wxd4546poRP+8Gfhzt+SdKa7ZKqUSSlJMaAEpy0vGJro+glEoMSZtsg34fJTnp1OtYW6VUAkjaZAt2qUVtRlBKJYLkTra6Y4NSKkEkdbKtyMtIyDZbnWihVOpJ6mRblhuio3eQzr7BeIcCwOBQmDt+uY1Lv7+eF/Y1xzscpZSHkjrZDg//SoSmhHDY8OVfvcZjrx6jbyDMjT95mW89voOe/qF4h6aU8kBSJ9vyBEm2xhi+8dgb/GbbUT5/5Tye/dJaPr56Bv/14kFuf9jTuR5KqTiJelLDZFA+PIsszu22j245woMvH+LTa2Zz++VzEBG+dc0iCrPS+MHTe9lx7ASLpuTFNUalVGwldc12eMpuvBcR/9XmI8wpzeYf3jkfETn5/E2rZ5CdHuDeDfvjGJ1SygtJnWwz0vzkhgJxTbZH2rrZdLCVa8+b8pZEC5CXEeSjF1Xxx9frONjcFacIlVJeSOpkC7bdNp7J9ontdQC897ypo/785ktmEPD7+NFznm5koZTyWNIn27LcEPXtfXEr/7FXj7K8Mp/phZmj/rw0J8QHz5/Gr7cciXtzh1IqdlIi2TbGKYntrm9nd30H1y4bvVY77FOXzmYwHOYXG2s9ikwp5bUUSLbpNHb0MRT2ftbW468ew+8T1i2pOOtxlUWZrJpdxB9fr/MoMqWU15I+2ZbnhhgKG1q6vG1KCIcNj716jEvmFFOcnT7m8e9cVM7+pi6qGzo8iE4p5bWkT7alw8O/TnibbF87eoKjx3t473lTxnX8VYvKEYE/vVEf48iUUvGQ9Mm2PE5jbV850ArAJXOLx3V8aW6I5ZUFPKnJVqmklPTJtixOs8i21LZRWZhJaU5o3K+5enE5O+vaOdTSHcPIlFLxkPTJtjg7DZ/g6YgEYwxbDrVxflVBRK+7apHd7f1PO7SjTKlkk/TJNuD3UZyd7mnN9khbD00dfSyPMNlOL8xk0ZRcbUpQKgklfbKF4Vlk3nWQbaltA+D8ysiSLdimhG2Hjsd9pTKllLtSItmW5ng7ZXdLbRtZaX7ml+dE/NrhpoRndjW4HZZSKo5SItmW56V7nmyXVRbg98nYB48wpzSbaQUZPLu3KQaRKaXiJSWSbVlOiLbuAXoHYr8rQmffILvr2yNurx0mIqyZV8KL+5rpHwy7HJ1SKl5SI9k6OzY0etBuu/3wccKGiEcinGrNvBK6+ofYXNvqYmQT0zc4RHNnHwebu+hKkD3dlJpMknqnhmEnFxHv6KWyaPTVt9yypbYNEThven7U51g9p5igX3h2bxOrZ49vUkSsNHf28ZVfv/6WNuS8jCCfXTubj62aQSjoj2N0Sk0eKZFsT26P40EP/5baNuaV5pCXEYz6HNnpAVZUFfLsnia+evVCF6OLzLN7m/jCI9tp7x3gU2tmMTU/g8y0AE9sP8Z3/rib/3zhIP/y/iVcNr80bjEqNVmkRjNCrl0IJtadZOGwYeuhtqjba0+1Zn4Ju+s74jYE7JHNh7npZ5sozAry+G0X89WrF/KxVTO47vxp3H/zhTz8yYvIDQX55M838/ROHTmh1FhSItnmZQRJD/hinmwPtXbT0TvIedMnvnnjmnklADwXh1EJe+o7+Mbv3uDiOUU8ftslLCjPPe2YVbOLeOTTqzhnSh5/+4stuoCOUmNIiWQrIpTlxn5iw666dgAWVpyenCK1oDyHstx0z4eAdfcP8tmHtpITCvJvH1p21jbZvIwgD9xyIUun5XHbQ1tZv6fRw0iVmlxSItmCbbeN9ZTdXfUd+ATmlUU+mWGk4SFgz1c3MTjk3RCwbz2+g/1Nndx5w3mU5Iy9Dm9uKMjPb1nJvLIcPvfwNg7oxpVKjSplkm1pbnrMF6PZVdfOzOIs13ro18wrpb13kG2Hj7tyvrGs39PII5uPcNvaOVw8Z/yjILLTA/zob84n4BNu/flmOnVomFKnSYnRCGBrts/sasAYc9qW4m7ZXd/OudPyXTvf2+YV4/cJ63c3csGMQtfOO5qhsOF7T+5mRlEmn3v73IhfP70wk7s/spy/+enLfOGRV7n3xvPxRTGDzi0N7b1srGmhtqWbgy1dDA4ZSnLSKclJZ/GUPC6YWUB6QIetKe+kTLItyw3ROxCmvXdwQsOyzqSjd4DDrT3ccEGla+fMDQVZUVXA+j1NfPmdC1w772h+t+0ou+s7uPsjywj6o7vhuXhOMV9bt5B//sMu7nu+hk+vme1ylGc3OBTmmV0NPLL5CBv2NDK87dyUvBDBgI/mjj66+u0swsw0PxfPKeYDy6dxxcJSAlH+n5Uar9RJtnlvjrWNRbLdU2/3DltYMfH22lOtXVDKd5/cTf2JXsrzxr8QeSR6B4b4wdN7WTotj3WLz7455VhuuWQmWw+18f2n9rBsej4rZxW5FOXZvXKwlW8+toNdde2U54b4zGVzWLekglklb23W6egdYNOBVtbvaeSZnY08vbOBKXkhbryoihtXVpKfmeZJvCr1RJ1sReQO4DiQZ4z592iP8crUfJuojp3oiWo1rrEMj0QYbZjURFzuJNv1exr58IXu1ZpP9cBLtRw93sP3r1s64Vt/EeF7H1jKrroXuO3hbfzhc5dEtFtFpE50D/Dt3+/gN1uPMiUvxF0fXsa6JRVnXAQoJxTk7QvLePvCMr59jeEvuxr4+Uu1fP+pPdyzfh8fXVXFJy6ZNa7OQbc0dvSyq66DXXXtHGjqorGjl8aOPrr6BgkbCBtDZpqf/Mw0CjPTmJKfQWVhBlVFWcwpzWZqfkZcm2zU+ESVbEVkLlBhjLlTRP5JRBYYY3ZHeoyXKvIyAKg7HptOsl31HeRlBKlwufY51/ljWr87Nsm2s2+QH27Yx6XzSlgdQafY2eSEgtz70eVc+8MX+NzD23jglpVRN02czbZDbdz20DYa2nv57NrZfHbtHDLTxv+W9vuEdywq5x2LytlV1849G/bz4+dq+K8XDnLd+dO49dJZVBVluR53c2cfz1c38dL+FjbWtHKo9c1tkEpy0inLTacsN0RWegC/2A+wrr5BjvcMsL+pk+eqm+juf3NRpcw0P3NLs5lfnsP88lzml+Uwtyyb0px01/onevqHaGjvtV8dfTS299La1U9rVz/Huwfo7Buks2+Q3oEhBsOGwaEwIoJPIODzEQr6CAX9ZKT5yU4PkBMKkBMKkpcRJDcUIDcjaL9C9vus9ADZoQAZQX9E752hsKF3YIjegSF6hv/tD9Nzyve9A0P0D4YZGDIMDIUZGAozFDYMGYMxb57rbXOLWepiH0y0Ndu1wCbn8XZgDTAykY55jIjcCtwKUFkZm1rbsNKcdHwCx473xOT8u+raWVCe43rnm4hw2fwSfrftKH2DQ6536jz0ci3Huwf4/JXzXD3vgvJcvvO+JXz+ke1887EdfOd9i127NsYYfvo/B/juk7spzwvxq79dPaG1KMCOjb7rw8v4/JXzuO+5/Ty6+QgPbzrEO84p54YLp/O2uSVRLZkJNgFsP3KcDXua2LCnkdeOnADsOOWVMwv52KoqFk/NY2F5LnmZYzdxGWNo6ernYHMX1Y2d7G3oYE99B3/ZZUeTDMtJD1BVnMnU/Aym5mdSnJNGfkYaeRlB0gI+Aj5BBPoHw/QOhunuG6Ste4Dj3f00d/bbGnZ7H/XtvZzoGTgtjoBPKMhKoyAzeDKBluSkE/QLfp9NkOGwYShs6Bu0ya61q//k5J/2ngH6xrGynd8nhAI+An4fQb/gE8EAxqn1DwyFGXQS52DYjHm+8cpODyREsi0GapzHncBoE/jHPMYYcx9wH8CKFSvcu0qjCPh9lOeGOHbC/WQbDhv21Hdw/Yrprp8bbFPCgy8f4pUDbePerXc8+gaH+MnzB1g9u2jCyWo0718+jerGTu7dsJ/ZJVl84m2zJnzOrr5Bvvzr1/jDa3VctaiMf73uXFfb4GcWZ/Ev71/K318xj5+9cJD/fuUQf9pRz5S8EOuWVHDJ3GIunFl41hr0UNiwt6GDVw62sulAKy/sa6atewCfwLLKAr5w5Twum1/Koim5Ud3+iwjF2ekUZ6ezYsQolcaOXvY1dLKvqZN9jZ0cau2mpqmL56ub31IbPpu0gI/irDRKckNUFmVy4cxCyvNClOeGKM8LUZqTTmlOiNyMwIQ/QPsGhzjRM0B7zwDtTgLu7Buks/fNmnKPUzsdCttkOhQ22GIFv8/WnIN+IS3gIz3gJy3gIyPoJyPoJz3oIzPN1pCHa9eh4JvHpfl9+P1CwGeTuO+U/0+0H65nEm2ybQGGGz5znO+jOcZTFfkZMWlGONTaTXf/kOudY8NWzS4iLeBj/Z5GV5Ptb7cepbGjjx9cf55r5xzpS++Yz8HmLv7PH3dRVZTFleeURX2ug81dfOqBLVQ3dvDVqxdw66WzYjaMrzQ3xFeuXsDfXzmXZ3Y28sjmw/z8pVp+8j8HCPqF6YWZTCvIpNxZd2NgyNDRO8CB5i4Ot/bQ70xEKc8NsXZ+KZctKOXSucUx74ArzQlRmhMatUmod2CItu5+TvQMnKwJhg2kB+xtfmZagILMNEJBX8yu60jpAT+lOf6YtusnimiT7Xrg48BvgXOBh0WkyhhTe5ZjHoo+THdMyc/gtSPHXT/v7nr3pumOJjMtwEWzili/u5F/fNdCV/4QhsKGHz1Xw5KpeVw8J3YjBnw+4QfXn8fR+17isw9u5QcfOpd3L50S8Xke336Mr//mdfx+4f6bL+Rtc0tiEO3p0gN+3rW0gnctraCnf4hXDrbyUk0LtS1dHGnrYXddO36fEPT7yEzzM6c0myvPKWd+eTYrqgqZVpDhWeIaSyjopyIv42T/hfJWVMnWGLNXRBpE5CagFcgHvg5cc6ZjjDF73Qh4IqbkhXhqR6/rExt21rk3TfdMrjynjG/87g1213e4ktSf2lHPgeYu7rlxecyTQUaanwduXsknfv4Ktz+8jZbOfm5aPWNcr+3qG+Rbj+/g0S1HWF6Zz503LGN6YWzXJD6TjDQ/l84r4dJ53iR6lVyiHvpljLlzxFPXjOOYuKrIC9E/GKalq5/ibPeG9ux2eZruaNYtLudbj+/g8e3HJpxsjTHcu2E/M4uzTm4wGWt5mUEeuGUltz+8jX96fAc7jp3gC++Yf3Jh95EGh8L8eusR/t/T1TR09HLb2jn83RVzdfKBmrRSZlID2GYEsCMSXE229R0smTrxZRXPpig7nYvnFPPE9mN8+ar5E6qNPl/dzOtHT/Dd9y9xvRPgbEJBP/feuJzvP7WHn71wgMe3H+Pjq2dyxcJSKgszycsM8sbRE2w60Mavtx5hX2Mnyyrzufsjy07rCFJqsknRZNvL0mnunLO7f5BDrd1cd75LJzyLa86dwhcf3c7WQ8cntMfZPRv2UZabzvuWT3UxuvEJ+H18dd1CblxZxf99eg//8ex+/uPZ/acdd05FLv/x0fO5alFZwrR5KjURKZVshycc1Lk4/Ku6oROIbXvtsKsWlfG13/p4YvuxqJPt1kNtbKxp5R/ftTCuC7FUFmVy5w3L+PI7F1Dd0MHh1m6aOvo4Z0ouK2YUunrnoVQiSKlkW5iVRnrA5+rEhr0Ndk2EeWXZrp3zTHJCQd6+oJTfv1bHP75rYVTtl/es309+ZjBmU38jZQfca++4Sn4p1dsgIkzJz+CYi/t67W3oIC3gi8m0ztFcc+4Umjv72FgT+Tbne+o7eGZXAzetmkFWekp9zioVdymVbME2JdS5WrPtZE5JtmcdTWsXlJKdHuCxV49G/Nq7/lpNZpqfj49z2JVSyj0pl2yn5GdwzMVZZHsbOmKyitiZhIJ+3nNuBY9tPxbRzrtbatv4/Wt13HLJTAqydBlBpbyWesk2L0RjR68r+3q19w5Qd6KXuR60157qM5fNIRw23LNh37iOD4cN//v3OynNSfd8QW+llJVyybYiP4OwgYaOie+0W+10js33YCTCqaYXZvLBFdP55abD4+rse+K1Y7x6+Dhfumq+ttUqFScpl2yHx9q60W6718NhXyPddvkcDIYfrj977banf4jvPbmbxVNz+cDy2I8FVkqNLvWSrTPW9qgLyXZPfQeZaf64DF2amp/Bhy6YziObD3OkrXvUY4wx/PMfdnLsRC/feNc5upq/UnGUcsm2Yrhm68Lwr+rGDuaWZsctiX127RwE4YuPbqej9/TFne/8SzUPvnyIT62Z5dleYEqp0aVcss1OD5AbCrjSjLCnvjMuTQjDKvIy+NfrlrL5YBsf/vFGmk5ph37gpYP82zPVXL9iGl+J8c68SqmxpWRvyZT8DI5OcPhXa1c/zZ19ng77Gs21y6aSlxnkM7/YygfufZF5ZTlUN3ZQ29LNFQvL+M77lujaAkolgJSr2YJNthNdH2F4mu7cONZsh62dX8qDn1yJ3yccau1i8ZQ8vvzO+dz9kWW6JKFSCSIla7YVeSG2HWqb0Dn2xmnY15ksryxg/Rcvi3cYSqkzSMlqT1VRJm3dA5zoPr1Tabz2NnSQEwpQlqurUymlxpaSyXZWsZ3xVdPcGfU5dtd1ML/M/a3LlVLJKSWT7cwSu0LXgeauqF4fDht213dwzpTYbPColEo+KZlspxdk4vdJ1Mn2cFs3nX2DnBOj3XSVUsknJZNtWsDH9IIMapqiS7Y7j9mty7Vmq5Qar5RMtgCzSrKpibJmu6uuPeZblyulkkvKJtuZxVkcbO4iHDYRv3ZnXTuzS7JjunW5Uiq5pHSy7RkYor498plku+o6WKjttUqpCKRssp0V5YiE4939HD3eo+21SqmIpG6yPTnWNrJku7PO6RzTmq1SKgIpm2zLctPJCPqpaYpsYsOuOjtNV5sRlFKRSNlkKyLMLM6KuBlh57F2SnLSKcnRabpKqfFL2WQLtt020mS7q65da7VKqYildrItzuJwazd9g0PjOr5/MEx1Y4e21yqlIpbSyXZmSRZhA4dbR9/Da6T9TZ0MDBkdiaCUilhqJ9vhEQnjnLZ7cppuhc4cU0pFJsWTrR1rO97hX68ePk5mmp8ZRVmxDEsplYRSOtnmZQQpzk7jwDhrthtrWrhgRqFuNaOUiljKZ41Zxdnscba4OZvmzj6qGztZNVu3BFdKRS7lk+35Mwp44+gJuvoGz3rcxpoWAC6apclWKRW5qJKtiNwhIjeJyOfGOO4FEfmF8zUruhBj66JZRQyGDZtrz74B5MaaFrLS/CzWkQhKqShEnGxFZC5QYYy5HygQkQVnOfxeY8xHna+aqKOMoRVVBQR8crLmeiYba1q5YKa21yqlohNN5lgLbHIebwfWnOXYi0TkdhG5S0ROK0tEbhWRzSKyuampKYpQJi4rPcC50/N5af+Zk21jRy/7GjtZpU0ISqkojZlsReQKEfnE8BdQArQ7P+4ECs/y8h8aY+4CtgKXjvyhMeY+Y8wKY8yKkpKSKMJ3x6pZRbx+9ASdZ2i3fbmmFdD2WqVU9MZMtsaYZ4wxPxn+ApqB4VH9OcCoVUIRCQHDDaFHgHIX4o2JVbOLGAobXjnQOurPN9a0kJ0eYJG21yqlohRNM8J64ALn8bnABhEJikjViOPeCVzvPJ4O7I0uxNhbXllA0H/mdtuXalq4UNtrlVITEHH2MMbsBRpE5Cag1fl+OXDXiEP/DPSIyDVArjFm64SjjZGMND/Lphfw0ijJtrG9l5qmLi6adbbWEqWUOrtANC8yxtw54vuXgWtGPNcN/Dj60Lx10ewi7v5rNe29A+SGgief/+22owCsnl0cr9CUUklA74sdq2YVETawqebNdtuWzj7u/us+Ll9QyuKpeXGMTik12WmydSyrzCc94OP+lw6eXN/2zr9U0z0wxNfWnW0osVJKjU2TrSMU9PNP71nE89XNfPqBLbxx9AQPvnyIG1dWMqdUl1RUSk1MVG22yeojKyvxCXz1t6/zwv4WMoN+7nj73HiHpZRKAlqzHeGGCyv53geWMjAU5o4r5lKUrRs7KqUmTmu2o7h+xXTecU4Z+Zlp8Q5FKZUktGZ7BppolVJu0mSrlFIe0GSrlFIe0GSrlFIe0GSrlFIe0GSrlFIeEGNMvGMAQESagNooXlqMXWM3UXkdn5vl6bWNvjy9drErL9GvbZUx5rTdEBIm2UZLRDYbY1bEO44z8To+N8vTaxt9eXrtYldeol/bM9FmBKWU8oAmW6WU8kAyJNv74h3AGLyOz83y9NpGX55eu9iVl+jXdlSTvs1WKaUmg2So2SqlVMLTZKuUUh7QZKuUUh5IqmQrIgn3/xGRpSIik7m8RLyuACJSKiL+RC0vUa8bgIgExz5q8paXiBL2zTBeIpIvIlUAxpiw85wkwhtdRBYCf2eMMSKyTkTOF5FFk6W84cSSaNcVQESmAV81xgw5SXCpiCwSkZgsiB9JecPXKBGvG5z8v3zXeVwoIrkiUjwZy0uk6zqWZNip4e3Ah0XkCPAC8Iwxpg1IhGEWHwCeFpGZwGrgKPZvrwp4yhgzlODlfVBE3g38FviLMeY4iXFdAd4NbBKRqcA3gP8BBAgCr8a5vGtFZB3wFPB0gl03gHXAqyJSAXwLqAaOiMhzxphjiV6eiBQBecaYmlM/0LCjq8Iuxu2qST/0S0QqgcPAAuwfxDnAPmAQeNwYsyuOsX0V+4e4GHjUGHNQREqADwIvGmNedbm8rwNb3SpPRJYAOcCFwFKgAXgM6AOajDFHXAw/IiLyKPA0kAb8Bfs7nw28B/vB8loMynvGKe+Zs5UnIquxd40rePO6PQ4cx163uM7rF5FfAA8AU4CXsOsMrAAuAP7bGLPX5fIedMqrcKM8EbkO+Bj2d/ASb1awEBFfoibcSZ9sRyMiFwN3Au83xhyKYxwZQAkwA9gL9AD5wHJsjaczBmVWYpPAbqAbKHDK+/NEyxORy4C3AZ8CrjDG7J5QsBPk1NivBv6K/cANAhcDr8QioTm12muwyX3c5TnX7RLg08DlbiezSDnXLQ+4CPiDMeao8/w6YKMxptXl8iqx78NVwBMTLU9Eio0xzSJyDraCtRBbWw5iK1jb3IzfLZM62YrIPCALm8SygVpjTJPzswXxTgbDRCRgjBkUkYuwf5xbjDEbXC7jQiAMbDfGDDjPrcQ2J7xqjFkf4flygSGgEugxxhw85WfvMMb82a3Y3eDUwq8F9hhjHnH53KWAH1srHXSeWwS8F9h3ankikm2M6RSRPCB4ahIWkeuMMb9yM7ZoORUBH/YD+Tzs+7IxBteuAOg2xvQ53wtwrlNek1vlicglwPeAD8ezgnU2kzbZOp03NwHTgH7srW0r9pPT1U/mKGILADcDz5/ajCEiWUDm8AeCi+X5gE9iayvTgIeMMRtFZAbQYYxpieKct2Nr5U3OeZuwtaAjIiImjm8cEZk3snbodMIIcMTt2ETkG0AHNjH9wRhzVETOBTqBmlPLE5GPA+cDNUAXcBDYYIzpT4RbXBGZZYypGfHcEiAD2Db8Qe1ieV/ELolYA/zKGNMqIquAAeA1Y0x/hOdbiq1Y5TgxbzfGHHB+Nt0Yc9jN+N00mZPtMuASY8xdIpKNvXW+CHtL8Z/GmO1xjG0e8HHsmyEdeBl40hjTKCKZxphul8ubD8w2xvxRRKYDS4AnganAe40xP4zwfHOA5caYR5xOjSnOOX3YtuAON+OPMLbF2BpMDbAJ2xxT7/zM73ano3MLPMcY81enszDHGPOwiJQBC0+9Q3Fua5cAv8bWFmcCs7Btto+4/XuPlHPtvg3UYa/dn4evXYzKm4H9/7+AvetoN8Y86dR28069Wxrn+fzArdg7rm5sk1wG9v8Rt7/38ZrMyTYTuBFb43raGNPlPH8JtvYYt9tcEQmecis/F7gKmIf943vKGHO3y+XlAx/CdhbswHY+HMZ2lN1ijPlQJLVRJ+ZbgI3ABuAEttb4UewtYdxuhZ3mjUGgCHsbvww4hn0fHDDGPOFyebOx7YJ/NsbsEpHLgZ3YJPJ5Y8x1pxy7GJtUfmOM2ek8VwB8GNvcENemF6c5pB9bM7wWe+3qnK+dkTY1jaO8+dj34h+wdwFXAC8Ca4C/Ncasi/B8C4ErjTH/7iTeAt5sAnnSGLPJxfBdN2mHfhljukVkPTbhXioi27F/hLOAR+Mc28DwLaMxphrbeI+IfBObDHH5VvwE9na1xdhxoG9gOyPeB/xbFPFXi8hdwPuBG3izMwggbqM7AIwx7c7DbuBuOJnkfgD8ZwzK2y8iw52bYD+AVmA75u4fcewbzofBB0XkIHZkSBjbBBGLIVURMcY0Og+P8+a1Owe4B/hRDIrcjx2aWWaMOS4irwLzsc0s90RxvlqgW0Q+B6wHDhtjnhGRduxdXEKbtDXbUzkdQfOBA9hG94ToGIO3jv8b7jzxqNzZwD8YY26d4DlWYptCOrCJ4zG3b9WjMXJcpdPc0eBFm6iIXAB8BvjUaG2OIrIcuBLIxDZ3DAG/HO5ci7dRrt08YH+sfq+ntlU7w+I+A9wcaXut8/oM7FDGSuwQshLsGOZfGmP2uRe1+yZ1sj1T7TDeHTiJwLnNmmmM2TfR65EIHTuJRERysG3az45xXBoQTpQkmwicD8WVxpjfTfA8C4AybG3Xb4zZ70J4MTWpk+0wTa6xodc1Ok7NEb126lSTZl7x2eibOvUMJ7R4lDdW2cYR+6gmH69/b4lk0idbccQ7jtF4HZvb5SVywvA6tlPLO1PZ4uEKZNHwOr7Rykvk91SsTcpkKyI5IrLMGVeZULUIr2NzuzwRCYpIiYhc5fTyJwyvY4ukPKcd9z2JmnC9ji8W5YnIgkStWI3HZB36tQQ71/xdzhCbg9hhILXxDMrhdWwTLm9EG+Mq7AiEauByESk0xjzndtCJGtsEyluMHd89lKAdil7H52p5YieRXGuM+a474XlvsibbRcBPjJ36dwHwEeBP2J7JePM6NjfKywWuFpGj2JWZfuqcrwg7ZrQ2jh9kXscWbXn5wHaw69gmYOdiPt7G50p5p7wuDTvB5uRaIy7G6olJl2zFTgFcAKxxanL7gC8kQk3C69hcLC8Nu7ZEBna8crmIvIidgHEIO54xXryOLeLynOFMNwMHReQ57MSHChF5I0Hel57G52Z5pyTom4H9IrLZ2EWdsoHeyZR0J93QL7GLvFRgF0epAOZiJzLEddYYeB+bm+WJSJqxi6UUY9dCGF4PocUY8zMXw46Y17FFWp7Ygfbp2Fl2q7ETGk4YY77udmzR8Do+t8tzfg+fxk4rLgP2YCeMPBSriRixMBmT7TrsPOuNzh/Eu4Edxln5J568js3t8sQuG5iJXa2qCQgBAyaGi5WMl9exRVKeiMwC6o2z0IzY9WL9ZsTqWvHidXyxKE9ECowxbWJXzvsIkG+M+X4CNtec0aRqRhCRKdgFUVYCV4pIHXYloURItJ7G5nZ5Yle3ugxow86dP4qtySXCbbCnsUVSntjFXa4G5orIbmw7ZTZ2N4e48zo+t8tzOiw/CfQ57/lNwE+wH4STaijZpEi2IlJmjGnAWXgbeztRj+0tHj4mLp9wXsfmdnkiUuV0+CwEnsOugdCPXYP0QuzWM3HhdWyRlCcis42dIroYu/BRKXYxlKuwo0HimgS8js/t8k55D8/ALuLzjHO+1cA8Y8weF8P3RMKPs3VuSb7o3Ipswa7sdT7Qjv1DeA7i8wnndWxul+e0hf0vESnHbtuzBLunVhV2K524bd/idWyRlOcc+00RGV4QZSrwdmPMU8AT2I0e48br+GJU3vD43Pfi9Es4ybwWmDPxqL03GWq2s7HL6X0Ae+uw1/n6EnaVdld3PUjw2Nwurxy7gWMztmbcgn1PTAFCcRzuFY/YIinPYBeEX4Wt/WYBc0Tkp9g1df/Z5dgi5XV8rpfnjDjwY38f+4CLRSQd+3va4FbgXpoMyXYfdqX3ILa3fSl2Ee504PU4xgXex+Z2eZdjN8gbFLvQ8xFswulIgLZar2OLpDwD/BjbZn4edkzpAeBrxGYb9Uh5HZ+r5YnIHcB04PfYkTaLsXdy6di1hK8HEnJTx7NJ+NEII9sfxS5bV4yt5Q0ZY15MldjcLM8ZC/lt7B/FCWyTxP3G2ZgvnryOLZLynKac27Br+9ZiF8iuxA5JasRuGxS3cclexxeL8pwOyk9hKxfPYne6qMI2LfwZO/omESYwRSThk+2ZOL/kq4wx98Y7lpG8ji2a8sRuEpmDHcR/IXABtomiB3jRGLMlFrEmYmyRlOd8wM3D3l0sx27PU41N0O1mjDVuY83r+GJVnoiUAGuxG0P6jTG/ct7nhybTRIZTTcpk6/yCb8Be+A1xDuctvI7NrfKc9rAy7EaVbxhjfuNKgC7wOrbxludMKil3vsqAl+NZqx3J6/hiUZ7YzUeXALuxdx598R7pEa1JmWzh5Hi+dmNMb7xjGcnr2NwsT+xGmv2JWHvwOrZIyhORqUCrMaZnrGPjwev43CzP+fD7Cnaz1I0TDi5OJm2yVUqlDmdyw6SaxDCSJlullPJAwk9qUEqpZKDJVimlPKDJVimlPKDJVimlPPD/AYxskYi+J4r9AAAAAElFTkSuQmCC\n", - "text/plain": [ - "
" - ] - }, - "metadata": { - "needs_background": "light" - }, - "output_type": "display_data" - } - ], - "source": [ - "# 特殊的日期型locator和formatter\n", - "locator = mdates.DayLocator(bymonthday=[1,15,25])\n", - "formatter = mdates.DateFormatter('%b %d')\n", - "\n", - "fig, ax = plt.subplots(figsize=(5, 3), tight_layout=True)\n", - "ax.xaxis.set_major_locator(locator)\n", - "ax.xaxis.set_major_formatter(formatter)\n", - "base = datetime.datetime(2017, 1, 1, 0, 0, 1)\n", - "time = [base + datetime.timedelta(days=x) for x in range(len(x1))]\n", - "ax.plot(time, y1)\n", - "ax.tick_params(axis='x', rotation=70);" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## 三、legend(图例)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "在具体学习图例之前,首先解释几个术语:\n", - "##### legend entry(图例条目)\n", - "每个图例由一个或多个legend entries组成。一个entry包含一个key和其对应的label。\n", - "##### legend key(图例键)\n", - "每个 legend label左面的colored/patterned marker(彩色/图案标记)\n", - "##### legend label(图例标签)\n", - "描述由key来表示的handle的文本\n", - "##### legend handle(图例句柄)\n", - "用于在图例中生成适当图例条目的原始对象\n", - "\n", - "以下面这个图为例,右侧的方框中的共有两个legend entry;两个legend key,分别是一个蓝色和一个黄色的legend key;两个legend label,一个名为‘Line up’和一个名为‘Line Down’的legend label" - ] - }, - { - "attachments": {}, - "cell_type": "markdown", - "metadata": {}, - "source": [ - "![](https://img-blog.csdnimg.cn/1442273f150044139d54b6c2c6384e37.png)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "图例的绘制同样有OO模式和pyplot模式两种方式,写法都是一样的,使用legend()即可调用。 \n", - "以下面的代码为例,在使用legend方法时,我们可以手动传入两个变量,句柄和标签,用以指定条目中的特定绘图对象和显示的标签值。 \n", - "当然通常更简单的操作是不传入任何参数,此时matplotlib会自动寻找合适的图例条目。" - ] - }, - { - "cell_type": "code", - "execution_count": 131, - "metadata": {}, - "outputs": [ - { - "data": { - "image/png": "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\n", - "text/plain": [ - "
" - ] - }, - "metadata": { - "needs_background": "light" - }, - "output_type": "display_data" - } - ], - "source": [ - "fig, ax = plt.subplots()\n", - "line_up, = ax.plot([1, 2, 3], label='Line 2')\n", - "line_down, = ax.plot([3, 2, 1], label='Line 1')\n", - "ax.legend(handles = [line_up, line_down], labels = ['Line Up', 'Line Down']);" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "legend其他常用的几个参数如下:\n", - "\n", - "##### loc设置图例位置 \n", - "loc参数接收一个字符串或数字表示图例出现的位置 \n", - "ax.legend(loc='upper center') 等同于ax.legend(loc=9)\n", - "\n", - "\n", - "\n", - "| Location String | Location Code |\n", - "| --------------- | ------------- |\n", - "| 'best' | 0 |\n", - "| 'upper right' | 1 |\n", - "| 'upper left' | 2 |\n", - "| 'lower left' | 3 |\n", - "| 'lower right' | 4 |\n", - "| 'right' | 5 |\n", - "| 'center left' | 6 |\n", - "| 'center right' | 7 |\n", - "| 'lower center' | 8 |\n", - "| 'upper center' | 9 |\n", - "| 'center' | 10 |" - ] - }, - { - "cell_type": "code", - "execution_count": 172, - "metadata": {}, - "outputs": [ - { - "data": { - "image/png": "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\n", - "text/plain": [ - "
" - ] - }, - "metadata": { - "needs_background": "light" - }, - "output_type": "display_data" - } - ], - "source": [ - "fig,axes = plt.subplots(1,4,figsize=(10,4))\n", - "for i in range(4):\n", - " axes[i].plot([0.5],[0.5])\n", - " axes[i].legend(labels='a',loc=i) # 观察loc参数传入不同值时图例的位置\n", - "fig.tight_layout()" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "##### 设置图例边框及背景 " - ] - }, - { - "cell_type": "code", - "execution_count": 165, - "metadata": {}, - "outputs": [ - { - "data": { - "image/png": "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\n", - "text/plain": [ - "
" - ] - }, - "metadata": { - "needs_background": "light" - }, - "output_type": "display_data" - } - ], - "source": [ - "fig = plt.figure(figsize=(10,3))\n", - "axes = fig.subplots(1,3)\n", - "for i, ax in enumerate(axes):\n", - " ax.plot([1,2,3],label=f'ax {i}')\n", - "axes[0].legend(frameon=False) #去掉图例边框\n", - "axes[1].legend(edgecolor='blue') #设置图例边框颜色\n", - "axes[2].legend(facecolor='gray'); #设置图例背景颜色,若无边框,参数无效" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "##### 设置图例标题" - ] - }, - { - "cell_type": "code", - "execution_count": 152, - "metadata": {}, - "outputs": [ - { - "data": { - "image/png": "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\n", - "text/plain": [ - "
" - ] - }, - "metadata": { - "needs_background": "light" - }, - "output_type": "display_data" - } - ], - "source": [ - "fig,ax =plt.subplots()\n", - "ax.plot([1,2,3],label='label')\n", - "ax.legend(title='legend title');" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## 思考题\n", - "- 请尝试使用两种方式模仿画出下面的图表(重点是柱状图上的标签),本文学习的text方法和matplotlib自带的柱状图标签方法bar_label\n", - "![](https://img-blog.csdnimg.cn/99bc6e007eb34fc09015589d56c6eafc.png)" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [] - } - ], - "metadata": { - "hide_input": false, - "kernelspec": { - "display_name": "Python 3", - "language": "python", - "name": "python3" - }, - "language_info": { - "codemirror_mode": { - "name": "ipython", - "version": 3 - }, - "file_extension": ".py", - "mimetype": "text/x-python", - "name": "python", - "nbconvert_exporter": "python", - "pygments_lexer": "ipython3", - "version": "3.9.4" - }, - "toc": { - "base_numbering": 1, - "nav_menu": { - "height": "237.99px", - "width": "327.99px" - }, - "number_sections": false, - "sideBar": true, - "skip_h1_title": false, - "title_cell": "Table of Contents", - "title_sidebar": "Contents", - "toc_cell": false, - "toc_position": { - "height": "calc(100% - 180px)", - "left": "10px", - "top": "150px", - "width": "239.625px" - }, - "toc_section_display": true, - "toc_window_display": true - }, - "varInspector": { - "cols": { - "lenName": 16, - "lenType": 16, - "lenVar": 40 - }, - "kernels_config": { - "python": { - "delete_cmd_postfix": "", - "delete_cmd_prefix": "del ", - "library": "var_list.py", - "varRefreshCmd": "print(var_dic_list())" - }, - "r": { - "delete_cmd_postfix": ") ", - "delete_cmd_prefix": "rm(", - "library": "var_list.r", - "varRefreshCmd": "cat(var_dic_list()) " - } - }, - "types_to_exclude": [ - "module", - "function", - "builtin_function_or_method", - "instance", - "_Feature" - ], - "window_display": false - } - }, - "nbformat": 4, - "nbformat_minor": 4 -} diff --git a/source/_static/logo.png b/source/_static/logo.png new file mode 100644 index 0000000000000000000000000000000000000000..a0dcbd337cf60491c75059d03027488728f2678b GIT binary patch literal 83804 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⋙%y-JDgTJS94HO6y3 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这样一段话,这是因为matplotlib的绘图代码默认打印出最后一个对象。如果不想显示这句话,有以下三种方法,在本章节的代码示例中你能找到这三种方法的使用。 + +1. 在代码块最后加一个分号`;` +2. 在代码块最后加一句plt.show() +3. 在绘图时将绘图对象显式赋值给一个变量,如将plt.plot([1, 2, 3, 4]) 改成line =plt.plot([1, 2, 3, 4]) + + + +和MATLAB命令类似,你还可以通过一种更简单的方式绘制图像,`matplotlib.pyplot`方法能够直接在当前axes上绘制图像,如果用户未指定axes,matplotlib会帮你自动创建一个。所以上面的例子也可以简化为以下这一行代码。 + + +```{code-cell} ipython3 +line =plt.plot([1, 2, 3, 4], [1, 4, 2, 3]) +``` + + + + + + + + + +## 三、Figure的组成 + +现在我们来深入看一下figure的组成。通过一张figure解剖图,我们可以看到一个完整的matplotlib图像通常会包括以下四个层级,这些层级也被称为容器(container),下一节会详细介绍。在matplotlib的世界中,我们将通过各种命令方法来操纵图像中的每一个部分,从而达到数据可视化的最终效果,一副完整的图像实际上是各类子元素的集合。 + +- `Figure`:顶层级,用来容纳所有绘图元素 + +- `Axes`:matplotlib宇宙的核心,容纳了大量元素用来构造一幅幅子图,一个figure可以由一个或多个子图组成 + +- `Axis`:axes的下属层级,用于处理所有和坐标轴,网格有关的元素 + +- `Tick`:axis的下属层级,用来处理所有和刻度有关的元素 + + ![](https://matplotlib.org/_images/anatomy.png) + +## 四、两种绘图接口 + +matplotlib提供了两种最常用的绘图接口 + +1. 显式创建figure和axes,在上面调用绘图方法,也被称为OO模式(object-oriented style) + +2. 依赖pyplot自动创建figure和axes,并绘图 + +使用第一种绘图接口,是这样的: + + +```{code-cell} ipython3 +x = np.linspace(0, 2, 100) + +fig, ax = plt.subplots() +ax.plot(x, x, label='linear') +ax.plot(x, x**2, label='quadratic') +ax.plot(x, x**3, label='cubic') +ax.set_xlabel('x label') +ax.set_ylabel('y label') +ax.set_title("Simple Plot") +ax.legend() +plt.show() +``` + + + + + + + + + + + +而如果采用第二种绘图接口,绘制同样的图,代码是这样的: + + +```{code-cell} ipython3 +x = np.linspace(0, 2, 100) + +plt.plot(x, x, label='linear') +plt.plot(x, x**2, label='quadratic') +plt.plot(x, x**3, label='cubic') +plt.xlabel('x label') +plt.ylabel('y label') +plt.title("Simple Plot") +plt.legend() +plt.show() +``` + + + + + + + + +## 五、通用绘图模板 +由于matplotlib的知识点非常繁杂,在实际使用过程中也不可能将全部API都记住,很多时候都是边用边查。因此这里提供一个通用的绘图基础模板,任何复杂的图表几乎都可以基于这个模板骨架填充内容而成。初学者刚开始学习时只需要牢记这一模板就足以应对大部分简单图表的绘制,在学习过程中可以将这个模板模块化,了解每个模块在做什么,在绘制复杂图表时如何修改,填充对应的模块。 + + +```{code-cell} ipython3 +# step1 准备数据 +x = np.linspace(0, 2, 100) +y = x**2 + +# step2 设置绘图样式,这一模块的扩展参考第五章进一步学习,这一步不是必须的,样式也可以在绘制图像是进行设置 +mpl.rc('lines', linewidth=4, linestyle='-.') + +# step3 定义布局, 这一模块的扩展参考第三章进一步学习 +fig, ax = plt.subplots() + +# step4 绘制图像, 这一模块的扩展参考第二章进一步学习 +ax.plot(x, y, label='linear') + +# step5 添加标签,文字和图例,这一模块的扩展参考第四章进一步学习 +ax.set_xlabel('x label') +ax.set_ylabel('y label') +ax.set_title("Simple Plot") +ax.legend() ; +``` + + + + +​ + +## 思考题 +- 请思考两种绘图模式的优缺点和各自适合的使用场景 +- 在第五节绘图模板中我们是以OO模式作为例子展示的,请思考并写一个pyplot绘图模式的简单模板 + diff --git a/source/第三回:布局格式定方圆/index.md b/source/第三回:布局格式定方圆/index.md new file mode 100644 index 0000000..b9304ee --- /dev/null +++ b/source/第三回:布局格式定方圆/index.md @@ -0,0 +1,236 @@ +--- +jupytext: + text_representation: + format_name: myst +kernelspec: + display_name: Python 3 + name: python3 +--- + +# 第三回:布局格式定方圆 + + +```{code-cell} ipython3 +import numpy as np +import pandas as pd +import matplotlib.pyplot as plt +plt.rcParams['font.sans-serif'] = ['SimHei'] #用来正常显示中文标签 +plt.rcParams['axes.unicode_minus'] = False #用来正常显示负号 +``` + +## 一、子图 + +### 1. 使用 `plt.subplots` 绘制均匀状态下的子图 + +返回元素分别是画布和子图构成的列表,第一个数字为行,第二个为列,不传入时默认值都为1 + +`figsize` 参数可以指定整个画布的大小 + +`sharex` 和 `sharey` 分别表示是否共享横轴和纵轴刻度 + +`tight_layout` 函数可以调整子图的相对大小使字符不会重叠 + + +```{code-cell} ipython3 +fig, axs = plt.subplots(2, 5, figsize=(10, 4), sharex=True, sharey=True) +fig.suptitle('样例1', size=20) +for i in range(2): + for j in range(5): + axs[i][j].scatter(np.random.randn(10), np.random.randn(10)) + axs[i][j].set_title('第%d行,第%d列'%(i+1,j+1)) + axs[i][j].set_xlim(-5,5) + axs[i][j].set_ylim(-5,5) + if i==1: axs[i][j].set_xlabel('横坐标') + if j==0: axs[i][j].set_ylabel('纵坐标') +fig.tight_layout() +``` + + +​ +​ + + +`subplots`是基于OO模式的写法,显式创建一个或多个axes对象,然后在对应的子图对象上进行绘图操作。 +还有种方式是使用`subplot`这样基于pyplot模式的写法,每次在指定位置新建一个子图,并且之后的绘图操作都会指向当前子图,本质上`subplot`也是`Figure.add_subplot`的一种封装。 + +在调用`subplot`时一般需要传入三位数字,分别代表总行数,总列数,当前子图的index + + +```{code-cell} ipython3 +plt.figure() +# 子图1 +plt.subplot(2,2,1) +plt.plot([1,2], 'r') +# 子图2 +plt.subplot(2,2,2) +plt.plot([1,2], 'b') +#子图3 +plt.subplot(224) # 当三位数都小于10时,可以省略中间的逗号,这行命令等价于plt.subplot(2,2,4) +plt.plot([1,2], 'g'); +``` + + +​ + +​ + + +除了常规的直角坐标系,也可以通过`projection`方法创建极坐标系下的图表 + + +```{code-cell} ipython3 +N = 150 +r = 2 * np.random.rand(N) +theta = 2 * np.pi * np.random.rand(N) +area = 200 * r**2 +colors = theta + + +plt.subplot(projection='polar') +plt.scatter(theta, r, c=colors, s=area, cmap='hsv', alpha=0.75); +``` + + +```{admonition} 练一练 +

请思考如何用极坐标系画出类似的玫瑰图

+ + +``` + + + + +### 2. 使用 `GridSpec` 绘制非均匀子图 + +所谓非均匀包含两层含义,第一是指图的比例大小不同但没有跨行或跨列,第二是指图为跨列或跨行状态 + +利用 `add_gridspec` 可以指定相对宽度比例 `width_ratios` 和相对高度比例参数 `height_ratios` + + +```{code-cell} ipython3 +fig = plt.figure(figsize=(10, 4)) +spec = fig.add_gridspec(nrows=2, ncols=5, width_ratios=[1,2,3,4,5], height_ratios=[1,3]) +fig.suptitle('样例2', size=20) +for i in range(2): + for j in range(5): + ax = fig.add_subplot(spec[i, j]) + ax.scatter(np.random.randn(10), np.random.randn(10)) + ax.set_title('第%d行,第%d列'%(i+1,j+1)) + if i==1: ax.set_xlabel('横坐标') + if j==0: ax.set_ylabel('纵坐标') +fig.tight_layout() +``` + + +​ + +​ + + +在上面的例子中出现了 `spec[i, j]` 的用法,事实上通过切片就可以实现子图的合并而达到跨图的共能 + + +```{code-cell} ipython3 +fig = plt.figure(figsize=(10, 4)) +spec = fig.add_gridspec(nrows=2, ncols=6, width_ratios=[2,2.5,3,1,1.5,2], height_ratios=[1,2]) +fig.suptitle('样例3', size=20) +# sub1 +ax = fig.add_subplot(spec[0, :3]) +ax.scatter(np.random.randn(10), np.random.randn(10)) +# sub2 +ax = fig.add_subplot(spec[0, 3:5]) +ax.scatter(np.random.randn(10), np.random.randn(10)) +# sub3 +ax = fig.add_subplot(spec[:, 5]) +ax.scatter(np.random.randn(10), np.random.randn(10)) +# sub4 +ax = fig.add_subplot(spec[1, 0]) +ax.scatter(np.random.randn(10), np.random.randn(10)) +# sub5 +ax = fig.add_subplot(spec[1, 1:5]) +ax.scatter(np.random.randn(10), np.random.randn(10)) +fig.tight_layout() +``` + + +​ + +​ + + +## 二、子图上的方法 + +补充介绍一些子图上的方法 + +常用直线的画法为: `axhline, axvline, axline` (水平、垂直、任意方向) + + +```{code-cell} ipython3 +fig, ax = plt.subplots(figsize=(4,3)) +ax.axhline(0.5,0.2,0.8) +ax.axvline(0.5,0.2,0.8) +ax.axline([0.3,0.3],[0.7,0.7]); +``` + + +​ + +​ + + +使用 `grid` 可以加灰色网格 + + +```{code-cell} ipython3 +fig, ax = plt.subplots(figsize=(4,3)) +ax.grid(True) +``` + + +​ + +​ + + +使用 `set_xscale` 可以设置坐标轴的规度(指对数坐标等) + + +```{code-cell} ipython3 +fig, axs = plt.subplots(1, 2, figsize=(10, 4)) +for j in range(2): + axs[j].plot(list('abcd'), [10**i for i in range(4)]) + if j==0: + axs[j].set_yscale('log') + else: + pass +fig.tight_layout() +``` + + +​ + +​ + + +## 思考题 + +- 墨尔本1981年至1990年的每月温度情况 + +数据集来自github仓库下data/layout_ex1.csv +请利用数据,画出如下的图: + + + + + +- 画出数据的散点图和边际分布 + +用 `np.random.randn(2, 150)` 生成一组二维数据,使用两种非均匀子图的分割方法,做出该数据对应的散点图和边际分布图 + + + + + + + + diff --git a/source/第二回:艺术画笔见乾坤/index.md b/source/第二回:艺术画笔见乾坤/index.md new file mode 100644 index 0000000..d7da62c --- /dev/null +++ b/source/第二回:艺术画笔见乾坤/index.md @@ -0,0 +1,748 @@ +--- +jupytext: + text_representation: + format_name: myst +kernelspec: + display_name: Python 3 + name: python3 +--- + + +# 第二回:艺术画笔见乾坤 +```{code-cell} ipython3 +import numpy as np +import pandas as pd +import re +import matplotlib +import matplotlib.pyplot as plt +from matplotlib.lines import Line2D +from matplotlib.patches import Circle, Wedge +from matplotlib.collections import PatchCollection +``` +## 一、概述 + +### 1. matplotlib的三层api +matplotlib的原理或者说基础逻辑是,用Artist对象在画布(canvas)上绘制(Render)图形。 +就和人作画的步骤类似: +1. 准备一块画布或画纸 +2. 准备好颜料、画笔等制图工具 +3. 作画 + + +所以matplotlib有三个层次的API: + +`matplotlib.backend_bases.FigureCanvas` 代表了绘图区,所有的图像都是在绘图区完成的 +`matplotlib.backend_bases.Renderer` 代表了渲染器,可以近似理解为画笔,控制如何在 FigureCanvas 上画图。 +`matplotlib.artist.Artist` 代表了具体的图表组件,即调用了Renderer的接口在Canvas上作图。 +前两者处理程序和计算机的底层交互的事项,第三项Artist就是具体的调用接口来做出我们想要的图,比如图形、文本、线条的设定。所以通常来说,我们95%的时间,都是用来和matplotlib.artist.Artist类打交道的。 + + + +### 2. Artist的分类 +Artist有两种类型:`primitives` 和`containers`。 + +`primitive`是基本要素,它包含一些我们要在绘图区作图用到的标准图形对象,如**曲线Line2D,文字text,矩形Rectangle,图像image**等。 + +`container`是容器,即用来装基本要素的地方,包括**图形figure、坐标系Axes和坐标轴Axis**。他们之间的关系如下图所示: +![分类](https://img-blog.csdnimg.cn/20201122230916134.jpeg?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl8zODYwNDk2MQ==,size_16,color_FFFFFF,t_70#pic_center) + +可视化中常见的artist类可以参考下图这张表格,解释下每一列的含义。 +第一列表示matplotlib中子图上的辅助方法,可以理解为可视化中不同种类的图表类型,如柱状图,折线图,直方图等,这些图表都可以用这些辅助方法直接画出来,属于更高层级的抽象。 + +第二列表示不同图表背后的artist类,比如折线图方法`plot`在底层用到的就是`Line2D`这一artist类。 + +第三列是第二列的列表容器,例如所有在子图中创建的`Line2D`对象都会被自动收集到`ax.lines`返回的列表中。 + +下一节的具体案例更清楚地阐释了这三者的关系,其实在很多时候,我们只用记住第一列的辅助方法进行绘图即可,而无需关注具体底层使用了哪些类,但是了解底层类有助于我们绘制一些复杂的图表,因此也很有必要了解。 + +| Axes helper method | Artist | Container | +| ------------------- | ------ | ----------- | +| `bar` - bar charts | `Rectangle` | ax.patches | +| `errorbar` - error bar plots | `Line2D` and `Rectangle` | ax.lines and ax.patches | +| `fill` - shared area | `Polygon` | ax.patches | +| `hist` - histograms | `Rectangle` | ax.patches | +|`imshow` - image data | `AxesImage` | ax.images | +| `plot` - xy plots | `Line2D` | ax.lines | +| `scatter` - scatter charts | `PolyCollection` | ax.collections | + +## 二、基本元素 - primitives +各容器中可能会包含多种`基本要素-primitives`, 所以先介绍下primitives,再介绍容器。 + +本章重点介绍下 `primitives` 的几种类型:**曲线-Line2D,矩形-Rectangle,多边形-Polygon,图像-image** + + +### 1. 2DLines +在matplotlib中曲线的绘制,主要是通过类 `matplotlib.lines.Line2D` 来完成的。 + +matplotlib中`线-line`的含义:它表示的可以是连接所有顶点的实线样式,也可以是每个顶点的标记。此外,这条线也会受到绘画风格的影响,比如,我们可以创建虚线种类的线。 + +它的构造函数: + +>class matplotlib.lines.Line2D(xdata, ydata, linewidth=None, linestyle=None, color=None, marker=None, markersize=None, markeredgewidth=None, markeredgecolor=None, markerfacecolor=None, markerfacecoloralt='none', fillstyle=None, antialiased=None, dash_capstyle=None, solid_capstyle=None, dash_joinstyle=None, solid_joinstyle=None, pickradius=5, drawstyle=None, markevery=None, **kwargs) + + + +其中常用的的参数有: ++ **xdata**:需要绘制的line中点的在x轴上的取值,若忽略,则默认为range(1,len(ydata)+1) ++ **ydata**:需要绘制的line中点的在y轴上的取值 ++ **linewidth**:线条的宽度 ++ **linestyle**:线型 ++ **color**:线条的颜色 ++ **marker**:点的标记,详细可参考[markers API](https://matplotlib.org/api/markers_api.html#module-matplotlib.markers) ++ **markersize**:标记的size + + +其他详细参数可参考[Line2D官方文档](https://matplotlib.org/stable/api/_as_gen/matplotlib.lines.Line2D.html) + +#### a. 如何设置Line2D的属性 +有三种方法可以用设置线的属性。 +1) 直接在plot()函数中设置 +2) 通过获得线对象,对线对象进行设置 +3) 获得线属性,使用setp()函数设置 + + + + +```{code-cell} ipython3 +# 1) 直接在plot()函数中设置 +x = range(0,5) +y = [2,5,7,8,10] +plt.plot(x,y, linewidth=10); # 设置线的粗细参数为10 +``` + + + +```{code-cell} ipython3 +# 2) 通过获得线对象,对线对象进行设置 +x = range(0,5) +y = [2,5,7,8,10] +line, = plt.plot(x, y, '-') # 这里等号坐标的line,是一个列表解包的操作,目的是获取plt.plot返回列表中的Line2D对象 +line.set_antialiased(False); # 关闭抗锯齿功能 +``` + + + +```{code-cell} ipython3 +# 3) 获得线属性,使用setp()函数设置 +x = range(0,5) +y = [2,5,7,8,10] +lines = plt.plot(x, y) +plt.setp(lines, color='r', linewidth=10); +``` + + + + + +#### b. 如何绘制lines +1) 绘制直线line +2) errorbar绘制误差折线图 + + + +介绍两种绘制直线line常用的方法: ++ **plot方法绘制** ++ **Line2D对象绘制** + + + + +```{code-cell} ipython3 +# 1. plot方法绘制 +x = range(0,5) +y1 = [2,5,7,8,10] +y2= [3,6,8,9,11] + +fig,ax= plt.subplots() +ax.plot(x,y1) +ax.plot(x,y2) +print(ax.lines); # 通过直接使用辅助方法画线,打印ax.lines后可以看到在matplotlib在底层创建了两个Line2D对象 +``` + + + + + + + +```{code-cell} ipython3 +# 2. Line2D对象绘制 + +x = range(0,5) +y1 = [2,5,7,8,10] +y2= [3,6,8,9,11] +fig,ax= plt.subplots() +lines = [Line2D(x, y1), Line2D(x, y2,color='orange')] # 显式创建Line2D对象 +for line in lines: + ax.add_line(line) # 使用add_line方法将创建的Line2D添加到子图中 +ax.set_xlim(0,4) +ax.set_ylim(2, 11); +``` + + +​ +​ + + +**2) errorbar绘制误差折线图** +pyplot里有个专门绘制误差线的功能,通过`errorbar`类实现,它的构造函数: + +>matplotlib.pyplot.errorbar(x, y, yerr=None, xerr=None, fmt='', ecolor=None, elinewidth=None, capsize=None, barsabove=False, lolims=False, uplims=False, xlolims=False, xuplims=False, errorevery=1, capthick=None, \*, data=None, \**kwargs) + +其中最主要的参数是前几个: ++ **x**:需要绘制的line中点的在x轴上的取值 ++ **y**:需要绘制的line中点的在y轴上的取值 ++ **yerr**:指定y轴水平的误差 ++ **xerr**:指定x轴水平的误差 ++ **fmt**:指定折线图中某个点的颜色,形状,线条风格,例如‘co--’ ++ **ecolor**:指定error bar的颜色 ++ **elinewidth**:指定error bar的线条宽度 + + +绘制errorbar + + +```{code-cell} ipython3 +fig = plt.figure() +x = np.arange(10) +y = 2.5 * np.sin(x / 20 * np.pi) +yerr = np.linspace(0.05, 0.2, 10) +plt.errorbar(x,y+3,yerr=yerr,fmt='o-',ecolor='r',elinewidth=2); +``` + + +​ +​ + + +### 2. patches +matplotlib.patches.Patch类是二维图形类,并且它是众多二维图形的父类,它的所有子类见[matplotlib.patches API](https://matplotlib.org/stable/api/patches_api.html) , +Patch类的构造函数: + +>Patch(edgecolor=None, facecolor=None, color=None, + linewidth=None, linestyle=None, antialiased=None, + hatch=None, fill=True, capstyle=None, joinstyle=None, + **kwargs) + +本小节重点讲述三种最常见的子类,矩形,多边形和楔形。 + + +#### a. Rectangle-矩形 +`Rectangle`矩形类在官网中的定义是: 通过锚点xy及其宽度和高度生成。 +Rectangle本身的主要比较简单,即xy控制锚点,width和height分别控制宽和高。它的构造函数: + +> class matplotlib.patches.Rectangle(xy, width, height, angle=0.0, **kwargs) + +在实际中最常见的矩形图是`hist直方图`和`bar条形图`。 + + + +**1) hist-直方图** + +>matplotlib.pyplot.hist(x,bins=None,range=None, density=None, bottom=None, histtype='bar', align='mid', log=False, color=None, label=None, stacked=False, normed=None) + +下面是一些常用的参数: ++ **x**: 数据集,最终的直方图将对数据集进行统计 ++ **bins**: 统计的区间分布 ++ **range**: tuple, 显示的区间,range在没有给出bins时生效 ++ **density**: bool,默认为false,显示的是频数统计结果,为True则显示频率统计结果,这里需要注意,频率统计结果=区间数目/(总数*区间宽度),和normed效果一致,官方推荐使用density ++ **histtype**: 可选{'bar', 'barstacked', 'step', 'stepfilled'}之一,默认为bar,推荐使用默认配置,step使用的是梯状,stepfilled则会对梯状内部进行填充,效果与bar类似 ++ **align**: 可选{'left', 'mid', 'right'}之一,默认为'mid',控制柱状图的水平分布,left或者right,会有部分空白区域,推荐使用默认 ++ **log**: bool,默认False,即y坐标轴是否选择指数刻度 ++ **stacked**: bool,默认为False,是否为堆积状图 + + + + +```{code-cell} ipython3 +# hist绘制直方图 +x=np.random.randint(0,100,100) #生成[0-100)之间的100个数据,即 数据集 +bins=np.arange(0,101,10) #设置连续的边界值,即直方图的分布区间[0,10),[10,20)... +plt.hist(x,bins,color='fuchsia',alpha=0.5)#alpha设置透明度,0为完全透明 +plt.xlabel('scores') +plt.ylabel('count') +plt.xlim(0,100); #设置x轴分布范围 plt.show() +``` + + + +​ + + + + + +```{code-cell} ipython3 +# Rectangle矩形类绘制直方图 +df = pd.DataFrame(columns = ['data']) +df.loc[:,'data'] = x +df['fenzu'] = pd.cut(df['data'], bins=bins, right = False,include_lowest=True) + +df_cnt = df['fenzu'].value_counts().reset_index() +df_cnt.loc[:,'mini'] = df_cnt['index'].astype(str).map(lambda x:re.findall('\[(.*)\,',x)[0]).astype(int) +df_cnt.loc[:,'maxi'] = df_cnt['index'].astype(str).map(lambda x:re.findall('\,(.*)\)',x)[0]).astype(int) +df_cnt.loc[:,'width'] = df_cnt['maxi']- df_cnt['mini'] +df_cnt.sort_values('mini',ascending = True,inplace = True) +df_cnt.reset_index(inplace = True,drop = True) + +#用Rectangle把hist绘制出来 + +fig = plt.figure() +ax1 = fig.add_subplot(111) + +for i in df_cnt.index: + rect = plt.Rectangle((df_cnt.loc[i,'mini'],0),df_cnt.loc[i,'width'],df_cnt.loc[i,'fenzu']) + ax1.add_patch(rect) + +ax1.set_xlim(0, 100) +ax1.set_ylim(0, 16); +``` + + +​ + +​ + + +**2) bar-柱状图** + +>matplotlib.pyplot.bar(left, height, alpha=1, width=0.8, color=, edgecolor=, label=, lw=3) + +下面是一些常用的参数: ++ **left**:x轴的位置序列,一般采用range函数产生一个序列,但是有时候可以是字符串 ++ **height**:y轴的数值序列,也就是柱形图的高度,一般就是我们需要展示的数据; ++ **alpha**:透明度,值越小越透明 ++ **width**:为柱形图的宽度,一般这是为0.8即可; ++ **color或facecolor**:柱形图填充的颜色; ++ **edgecolor**:图形边缘颜色 ++ **label**:解释每个图像代表的含义,这个参数是为legend()函数做铺垫的,表示该次bar的标签 + + + +有两种方式绘制柱状图 ++ bar绘制柱状图 ++ `Rectangle`矩形类绘制柱状图 + + +```{code-cell} ipython3 +# bar绘制柱状图 +y = range(1,17) +plt.bar(np.arange(16), y, alpha=0.5, width=0.5, color='yellow', edgecolor='red', label='The First Bar', lw=3); +``` + + +​ + + + + +```{code-cell} ipython3 +# Rectangle矩形类绘制柱状图 +fig = plt.figure() +ax1 = fig.add_subplot(111) + +for i in range(1,17): + rect = plt.Rectangle((i+0.25,0),0.5,i) + ax1.add_patch(rect) +ax1.set_xlim(0, 16) +ax1.set_ylim(0, 16); +``` + + +​ + +​ + + +#### b. Polygon-多边形 +matplotlib.patches.Polygon类是多边形类。它的构造函数: + +>class matplotlib.patches.Polygon(xy, closed=True, **kwargs) + +xy是一个N×2的numpy array,为多边形的顶点。 +closed为True则指定多边形将起点和终点重合从而显式关闭多边形。 + + +matplotlib.patches.Polygon类中常用的是fill类,它是基于xy绘制一个填充的多边形,它的定义: + +>matplotlib.pyplot.fill(*args, data=None, **kwargs) + +参数说明 : 关于x、y和color的序列,其中color是可选的参数,每个多边形都是由其节点的x和y位置列表定义的,后面可以选择一个颜色说明符。您可以通过提供多个x、y、[颜色]组来绘制多个多边形。 + + +```{code-cell} ipython3 +# 用fill来绘制图形 +x = np.linspace(0, 5 * np.pi, 1000) +y1 = np.sin(x) +y2 = np.sin(2 * x) +plt.fill(x, y1, color = "g", alpha = 0.3); +``` + + +​ + +​ + + +#### c. Wedge-契形 +matplotlib.patches.Polygon类是多边形类。其基类是matplotlib.patches.Patch,它的构造函数: + +>class matplotlib.patches.Wedge(center, r, theta1, theta2, width=None, **kwargs) + +一个Wedge-契形 是以坐标x,y为中心,半径为r,从θ1扫到θ2(单位是度)。 +如果宽度给定,则从内半径r -宽度到外半径r画出部分楔形。wedge中比较常见的是绘制饼状图。 + + +matplotlib.pyplot.pie语法: +>matplotlib.pyplot.pie(x, explode=None, labels=None, colors=None, autopct=None, pctdistance=0.6, shadow=False, labeldistance=1.1, startangle=0, radius=1, counterclock=True, wedgeprops=None, textprops=None, center=0, 0, frame=False, rotatelabels=False, *, normalize=None, data=None) + +制作数据x的饼图,每个楔子的面积用x/sum(x)表示。 +其中最主要的参数是前4个: ++ **x**:契型的形状,一维数组。 ++ **explode**:如果不是等于None,则是一个len(x)数组,它指定用于偏移每个楔形块的半径的分数。 ++ **labels**:用于指定每个契型块的标记,取值是列表或为None。 ++ **colors**:饼图循环使用的颜色序列。如果取值为None,将使用当前活动循环中的颜色。 ++ **startangle**:饼状图开始的绘制的角度。 + + + + +```{code-cell} ipython3 +# pie绘制饼状图 +labels = 'Frogs', 'Hogs', 'Dogs', 'Logs' +sizes = [15, 30, 45, 10] +explode = (0, 0.1, 0, 0) +fig1, ax1 = plt.subplots() +ax1.pie(sizes, explode=explode, labels=labels, autopct='%1.1f%%', shadow=True, startangle=90) +ax1.axis('equal'); # Equal aspect ratio ensures that pie is drawn as a circle. +``` + + +​ + +​ + + + + + +```{code-cell} ipython3 +# wedge绘制饼图 +fig = plt.figure(figsize=(5,5)) +ax1 = fig.add_subplot(111) +theta1 = 0 +sizes = [15, 30, 45, 10] +patches = [] +patches += [ + Wedge((0.5, 0.5), .4, 0, 54), + Wedge((0.5, 0.5), .4, 54, 162), + Wedge((0.5, 0.5), .4, 162, 324), + Wedge((0.5, 0.5), .4, 324, 360), +] +colors = 100 * np.random.rand(len(patches)) +p = PatchCollection(patches, alpha=0.8) +p.set_array(colors) +ax1.add_collection(p); +``` + + +​ + +​ + + +### 3. collections +collections类是用来绘制一组对象的集合,collections有许多不同的子类,如RegularPolyCollection, CircleCollection, Pathcollection, 分别对应不同的集合子类型。其中比较常用的就是散点图,它是属于PathCollection子类,scatter方法提供了该类的封装,根据x与y绘制不同大小或颜色标记的散点图。 它的构造方法: + +>Axes.scatter(self, x, y, s=None, c=None, marker=None, cmap=None, norm=None, vmin=None, vmax=None, alpha=None, linewidths=None, verts=, edgecolors=None, *, plotnonfinite=False, data=None, **kwargs) + + +其中最主要的参数是前5个: ++ **x**:数据点x轴的位置 ++ **y**:数据点y轴的位置 ++ **s**:尺寸大小 ++ **c**:可以是单个颜色格式的字符串,也可以是一系列颜色 ++ **marker**: 标记的类型 + + + +```{code-cell} ipython3 +# 用scatter绘制散点图 +x = [0,2,4,6,8,10] +y = [10]*len(x) +s = [20*2**n for n in range(len(x))] +plt.scatter(x,y,s=s) ; +``` + + +​ + +​ + + +### 4. images +images是matplotlib中绘制image图像的类,其中最常用的imshow可以根据数组绘制成图像,它的构造函数: +>class matplotlib.image.AxesImage(ax, cmap=None, norm=None, interpolation=None, origin=None, extent=None, filternorm=True, filterrad=4.0, resample=False, **kwargs) + +imshow根据数组绘制图像 +>matplotlib.pyplot.imshow(X, cmap=None, norm=None, aspect=None, interpolation=None, alpha=None, vmin=None, vmax=None, origin=None, extent=None, shape=, filternorm=1, filterrad=4.0, imlim=, resample=None, url=None, *, data=None, **kwargs) + +使用imshow画图时首先需要传入一个数组,数组对应的是空间内的像素位置和像素点的值,interpolation参数可以设置不同的差值方法,具体效果如下。 + + +```{code-cell} ipython3 +methods = [None, 'none', 'nearest', 'bilinear', 'bicubic', 'spline16', + 'spline36', 'hanning', 'hamming', 'hermite', 'kaiser', 'quadric', + 'catrom', 'gaussian', 'bessel', 'mitchell', 'sinc', 'lanczos'] + + +grid = np.random.rand(4, 4) + +fig, axs = plt.subplots(nrows=3, ncols=6, figsize=(9, 6), + subplot_kw={'xticks': [], 'yticks': []}) + +for ax, interp_method in zip(axs.flat, methods): + ax.imshow(grid, interpolation=interp_method, cmap='viridis') + ax.set_title(str(interp_method)) + +plt.tight_layout(); +``` + + +​ + +​ + + +## 三、对象容器 - Object container +容器会包含一些`primitives`,并且容器还有它自身的属性。 +比如`Axes Artist`,它是一种容器,它包含了很多`primitives`,比如`Line2D`,`Text`;同时,它也有自身的属性,比如`xscal`,用来控制X轴是`linear`还是`log`的。 + +### 1. Figure容器 +`matplotlib.figure.Figure`是`Artist`最顶层的`container`对象容器,它包含了图表中的所有元素。一张图表的背景就是在`Figure.patch`的一个矩形`Rectangle`。 +当我们向图表添加`Figure.add_subplot()`或者`Figure.add_axes()`元素时,这些都会被添加到`Figure.axes`列表中。 + + +```{code-cell} ipython3 +fig = plt.figure() +ax1 = fig.add_subplot(211) # 作一幅2*1的图,选择第1个子图 +ax2 = fig.add_axes([0.1, 0.1, 0.7, 0.3]) # 位置参数,四个数分别代表了(left,bottom,width,height) +print(ax1) +print(fig.axes) # fig.axes 中包含了subplot和axes两个实例, 刚刚添加的 +``` + + + + + + + + +由于`Figure`维持了`current axes`,因此你不应该手动的从`Figure.axes`列表中添加删除元素,而是要通过`Figure.add_subplot()`、`Figure.add_axes()`来添加元素,通过`Figure.delaxes()`来删除元素。但是你可以迭代或者访问`Figure.axes`中的`Axes`,然后修改这个`Axes`的属性。 + +比如下面的遍历axes里的内容,并且添加网格线: + + +```{code-cell} ipython3 +fig = plt.figure() +ax1 = fig.add_subplot(211) + +for ax in fig.axes: + ax.grid(True) + +``` + + +​ + +​ + + +`Figure`也有它自己的`text、line、patch、image`。你可以直接通过`add primitive`语句直接添加。但是注意`Figure`默认的坐标系是以像素为单位,你可能需要转换成figure坐标系:(0,0)表示左下点,(1,1)表示右上点。 + +**Figure容器的常见属性:** +`Figure.patch`属性:Figure的背景矩形 +`Figure.axes`属性:一个Axes实例的列表(包括Subplot) +`Figure.images`属性:一个FigureImages patch列表 +`Figure.lines`属性:一个Line2D实例的列表(很少使用) +`Figure.legends`属性:一个Figure Legend实例列表(不同于Axes.legends) +`Figure.texts`属性:一个Figure Text实例列表 + +### 2. Axes容器 + +`matplotlib.axes.Axes`是matplotlib的核心。大量的用于绘图的`Artist`存放在它内部,并且它有许多辅助方法来创建和添加`Artist`给它自己,而且它也有许多赋值方法来访问和修改这些`Artist`。 + +和`Figure`容器类似,`Axes`包含了一个patch属性,对于笛卡尔坐标系而言,它是一个`Rectangle`;对于极坐标而言,它是一个`Circle`。这个patch属性决定了绘图区域的形状、背景和边框。 + + +```{code-cell} ipython3 +fig = plt.figure() +ax = fig.add_subplot(111) +rect = ax.patch # axes的patch是一个Rectangle实例 +rect.set_facecolor('green') +``` + + + +​ + + +`Axes`有许多方法用于绘图,如`.plot()、.text()、.hist()、.imshow()`等方法用于创建大多数常见的`primitive`(如`Line2D,Rectangle,Text,Image`等等)。在`primitives`中已经涉及,不再赘述。 + +Subplot就是一个特殊的Axes,其实例是位于网格中某个区域的Subplot实例。其实你也可以在任意区域创建Axes,通过Figure.add_axes([left,bottom,width,height])来创建一个任意区域的Axes,其中left,bottom,width,height都是[0—1]之间的浮点数,他们代表了相对于Figure的坐标。 + +你不应该直接通过`Axes.lines`和`Axes.patches`列表来添加图表。因为当创建或添加一个对象到图表中时,`Axes`会做许多自动化的工作: +它会设置Artist中figure和axes的属性,同时默认Axes的转换; +它也会检视Artist中的数据,来更新数据结构,这样数据范围和呈现方式可以根据作图范围自动调整。 + +你也可以使用Axes的辅助方法`.add_line()`和`.add_patch()`方法来直接添加。 + +另外Axes还包含两个最重要的Artist container: + +`ax.xaxis`:XAxis对象的实例,用于处理x轴tick以及label的绘制 +`ax.yaxis`:YAxis对象的实例,用于处理y轴tick以及label的绘制 +会在下面章节详细说明。 + +**Axes容器**的常见属性有: +`artists`: Artist实例列表 +`patch`: Axes所在的矩形实例 +`collections`: Collection实例 +`images`: Axes图像 +`legends`: Legend 实例 +`lines`: Line2D 实例 +`patches`: Patch 实例 +`texts`: Text 实例 +`xaxis`: matplotlib.axis.XAxis 实例 +`yaxis`: matplotlib.axis.YAxis 实例 + +### 3. Axis容器 + +`matplotlib.axis.Axis`实例处理`tick line`、`grid line`、`tick label`以及`axis label`的绘制,它包括坐标轴上的刻度线、刻度`label`、坐标网格、坐标轴标题。通常你可以独立的配置y轴的左边刻度以及右边的刻度,也可以独立地配置x轴的上边刻度以及下边的刻度。 + +刻度包括主刻度和次刻度,它们都是Tick刻度对象。 + +`Axis`也存储了用于自适应,平移以及缩放的`data_interval`和`view_interval`。它还有Locator实例和Formatter实例用于控制刻度线的位置以及刻度label。 + +每个Axis都有一个`label`属性,也有主刻度列表和次刻度列表。这些`ticks`是`axis.XTick`和`axis.YTick`实例,它们包含着`line primitive`以及`text primitive`用来渲染刻度线以及刻度文本。 + +刻度是动态创建的,只有在需要创建的时候才创建(比如缩放的时候)。Axis也提供了一些辅助方法来获取刻度文本、刻度线位置等等: +常见的如下: + + +```{code-cell} ipython3 +# 不用print,直接显示结果 +from IPython.core.interactiveshell import InteractiveShell +InteractiveShell.ast_node_interactivity = "all" + +fig, ax = plt.subplots() +x = range(0,5) +y = [2,5,7,8,10] +plt.plot(x, y, '-') + +axis = ax.xaxis # axis为X轴对象 +axis.get_ticklocs() # 获取刻度线位置 +axis.get_ticklabels() # 获取刻度label列表(一个Text实例的列表)。 可以通过minor=True|False关键字参数控制输出minor还是major的tick label。 +axis.get_ticklines() # 获取刻度线列表(一个Line2D实例的列表)。 可以通过minor=True|False关键字参数控制输出minor还是major的tick line。 +axis.get_data_interval()# 获取轴刻度间隔 +axis.get_view_interval()# 获取轴视角(位置)的间隔 +``` + + + + +​ + + +下面的例子展示了如何调整一些轴和刻度的属性(忽略美观度,仅作调整参考): + + +```{code-cell} ipython3 +fig = plt.figure() # 创建一个新图表 +rect = fig.patch # 矩形实例并将其设为黄色 +rect.set_facecolor('lightgoldenrodyellow') + +ax1 = fig.add_axes([0.1, 0.3, 0.4, 0.4]) # 创一个axes对象,从(0.1,0.3)的位置开始,宽和高都为0.4, +rect = ax1.patch # ax1的矩形设为灰色 +rect.set_facecolor('lightslategray') + + +for label in ax1.xaxis.get_ticklabels(): + # 调用x轴刻度标签实例,是一个text实例 + label.set_color('red') # 颜色 + label.set_rotation(45) # 旋转角度 + label.set_fontsize(16) # 字体大小 + +for line in ax1.yaxis.get_ticklines(): + # 调用y轴刻度线条实例, 是一个Line2D实例 + line.set_color('green') # 颜色 + line.set_markersize(25) # marker大小 + line.set_markeredgewidth(2)# marker粗细 +``` + + + +​ + + +### 4. Tick容器 + +`matplotlib.axis.Tick`是从`Figure`到`Axes`到`Axis`到`Tick`中最末端的容器对象。 +`Tick`包含了`tick`、`grid line`实例以及对应的`label`。 + +所有的这些都可以通过`Tick`的属性获取,常见的`tick`属性有 +`Tick.tick1line`:Line2D实例 +`Tick.tick2line`:Line2D实例 +`Tick.gridline`:Line2D实例 +`Tick.label1`:Text实例 +`Tick.label2`:Text实例 + +y轴分为左右两个,因此tick1对应左侧的轴;tick2对应右侧的轴。 +x轴分为上下两个,因此tick1对应下侧的轴;tick2对应上侧的轴。 + +下面的例子展示了,如何将Y轴右边轴设为主轴,并将标签设置为美元符号且为绿色: + + +```{code-cell} ipython3 +fig, ax = plt.subplots() +ax.plot(100*np.random.rand(20)) + +# 设置ticker的显示格式 +formatter = matplotlib.ticker.FormatStrFormatter('$%1.2f') +ax.yaxis.set_major_formatter(formatter) + +# 设置ticker的参数,右侧为主轴,颜色为绿色 +ax.yaxis.set_tick_params(which='major', labelcolor='green', + labelleft=False, labelright=True); +``` + + + +​ + + +## 思考题 + +- primitives 和 container的区别和联系是什么,分别用于控制可视化图表中的哪些要素 + +- 使用提供的drug数据集,对第一列yyyy和第二列state分组求和,画出下面折线图。PA加粗标黄,其他为灰色。 +图标题和横纵坐标轴标题,以及线的文本暂不做要求。 + + +![](https://img-blog.csdnimg.cn/20210523162430365.png) + + + + +- 分别用一组长方形柱和填充面积的方式模仿画出下图,函数 y = -1 * (x - 2) * (x - 8) +10 在区间[2,9]的积分面积 +![](https://img-blog.csdnimg.cn/20201126105910781.png) +![](https://img-blog.csdnimg.cn/20201126105910780.png) + +## 参考资料 +[1. matplotlib设计的基本逻辑](https://zhuanlan.zhihu.com/p/32693665) +[2. AI算法工程师手册](https://www.bookstack.cn/read/huaxiaozhuan-ai/spilt.2.333f5abdbabf383d.md) + + +```{code-cell} ipython3 + +``` + diff --git a/source/第五回:样式色彩秀芳华/file/presentation.mplstyle b/source/第五回:样式色彩秀芳华/file/presentation.mplstyle new file mode 100644 index 0000000..6e34f09 --- /dev/null +++ b/source/第五回:样式色彩秀芳华/file/presentation.mplstyle @@ -0,0 +1,6 @@ +axes.titlesize : 24 +axes.labelsize : 20 +lines.linewidth : 3 +lines.markersize : 10 +xtick.labelsize : 16 +ytick.labelsize : 16 \ No newline at end of file diff --git a/source/第五回:样式色彩秀芳华/index.md b/source/第五回:样式色彩秀芳华/index.md new file mode 100644 index 0000000..734778f --- /dev/null +++ b/source/第五回:样式色彩秀芳华/index.md @@ -0,0 +1,254 @@ +--- +jupytext: + text_representation: + format_name: myst +kernelspec: + display_name: Python 3 + name: python3 +--- +# 第五回:样式色彩秀芳华 +```{code-cell} ipython3 +import matplotlib as mpl +import matplotlib.pyplot as plt +import numpy as np +``` + +第五回详细介绍matplotlib中样式和颜色的使用,绘图样式和颜色是丰富可视化图表的重要手段,因此熟练掌握本章可以让可视化图表变得更美观,突出重点和凸显艺术性。 +关于绘图样式,常见的有3种方法,分别是修改预定义样式,自定义样式和rcparams。 +关于颜色使用,本章介绍了常见的5种表示单色颜色的基本方法,以及colormap多色显示的方法。 + +## 一、matplotlib的绘图样式(style) + +在matplotlib中,要想设置绘制样式,最简单的方法是在绘制元素时单独设置样式。 +但是有时候,当用户在做专题报告时,往往会希望保持整体风格的统一而不用对每张图一张张修改,因此matplotlib库还提供了四种批量修改全局样式的方式 + +### 1.matplotlib预先定义样式 + +matplotlib贴心地提供了许多内置的样式供用户使用,使用方法很简单,只需在python脚本的最开始输入想使用style的名称即可调用,尝试调用不同内置样式,比较区别 + + + + + +```{code-cell} ipython3 +plt.style.use('default') +plt.plot([1,2,3,4],[2,3,4,5]); +``` + + + + + + +```{code-cell} ipython3 +plt.style.use('ggplot') +plt.plot([1,2,3,4],[2,3,4,5]); +``` + + + + + + +那么matplotlib究竟内置了那些样式供使用呢?总共以下26种丰富的样式可供选择。 + + +```{code-cell} ipython3 +print(plt.style.available) +``` + + + + +### 2.用户自定义stylesheet + +在任意路径下创建一个后缀名为mplstyle的样式清单,编辑文件添加以下样式内容 + +> axes.titlesize : 24 +> axes.labelsize : 20 +> lines.linewidth : 3 +> lines.markersize : 10 +> xtick.labelsize : 16 +> ytick.labelsize : 16 + +引用自定义stylesheet后观察图表变化。 + + +```{code-cell} ipython3 +plt.style.use('file/presentation.mplstyle') +plt.plot([1,2,3,4],[2,3,4,5]); +``` + + + + + + + +值得特别注意的是,matplotlib支持混合样式的引用,只需在引用时输入一个样式列表,若是几个样式中涉及到同一个参数,右边的样式表会覆盖左边的值。 + + +```{code-cell} ipython3 +plt.style.use(['dark_background', 'file/presentation.mplstyle']) +plt.plot([1,2,3,4],[2,3,4,5]); +``` + + + + + + +### 3.设置rcparams + +我们还可以通过修改默认rc设置的方式改变样式,所有rc设置都保存在一个叫做 matplotlib.rcParams的变量中。 +修改过后再绘图,可以看到绘图样式发生了变化。 + +```{code-cell} ipython3 +plt.style.use('default') # 恢复到默认样式 +plt.plot([1,2,3,4],[2,3,4,5]); +``` + + + + + + + +```{code-cell} ipython3 +mpl.rcParams['lines.linewidth'] = 2 +mpl.rcParams['lines.linestyle'] = '--' +plt.plot([1,2,3,4],[2,3,4,5]); +``` + + + + + + +另外matplotlib也还提供了一种更便捷的修改样式方式,可以一次性修改多个样式。 + + +```{code-cell} ipython3 +mpl.rc('lines', linewidth=4, linestyle='-.') +plt.plot([1,2,3,4],[2,3,4,5]); +``` + + + +## 二、matplotlib的色彩设置(color) + +在可视化中,如何选择合适的颜色和搭配组合也是需要仔细考虑的,色彩选择要能够反映出可视化图像的主旨。 +从可视化编码的角度对颜色进行分析,可以将颜色分为`色相、亮度和饱和度`三个视觉通道。通常来说: +`色相`: 没有明显的顺序性、一般不用来表达数据量的高低,而是用来表达数据列的类别。 +`明度和饱和度`: 在视觉上很容易区分出优先级的高低、被用作表达顺序或者表达数据量视觉通道。 +具体关于色彩理论部分的知识,不属于本教程的重点,请参阅有关拓展材料学习。 +[学会这6个可视化配色基本技巧,还原数据本身的意义](https://zhuanlan.zhihu.com/p/88892542) + +在matplotlib中,设置颜色有以下几种方式: + +### 1.RGB或RGBA + + +```{code-cell} ipython3 +plt.style.use('default') +``` + + +```{code-cell} ipython3 +# 颜色用[0,1]之间的浮点数表示,四个分量按顺序分别为(red, green, blue, alpha),其中alpha透明度可省略 +plt.plot([1,2,3],[4,5,6],color=(0.1, 0.2, 0.5)) +plt.plot([4,5,6],[1,2,3],color=(0.1, 0.2, 0.5, 0.5)); +``` + + + + + + +### 2.HEX RGB 或 RGBA + + +```{code-cell} ipython3 +# 用十六进制颜色码表示,同样最后两位表示透明度,可省略 +plt.plot([1,2,3],[4,5,6],color='#0f0f0f') +plt.plot([4,5,6],[1,2,3],color='#0f0f0f80'); +``` + + + + + + + +RGB颜色和HEX颜色之间是可以一一对应的,以下网址提供了两种色彩表示方法的转换工具。 +[https://www.colorhexa.com/](https://www.colorhexa.com/) + +### 3.灰度色阶 + + +```{code-cell} ipython3 +# 当只有一个位于[0,1]的值时,表示灰度色阶 +plt.plot([1,2,3],[4,5,6],color='0.5'); +``` + + + + + + +### 4.单字符基本颜色 + + +```{code-cell} ipython3 +# matplotlib有八个基本颜色,可以用单字符串来表示,分别是'b', 'g', 'r', 'c', 'm', 'y', 'k', 'w',对应的是blue, green, red, cyan, magenta, yellow, black, and white的英文缩写 +plt.plot([1,2,3],[4,5,6],color='m'); +``` + + + + + + +### 5.颜色名称 + + +```{code-cell} ipython3 +# matplotlib提供了颜色对照表,可供查询颜色对应的名称 +plt.plot([1,2,3],[4,5,6],color='tan'); +``` + + + + + + + +![](https://matplotlib.org/3.1.0/_images/sphx_glr_named_colors_002.png) +![](https://matplotlib.org/3.1.0/_images/sphx_glr_named_colors_003.png) + +### 6.使用colormap设置一组颜色 + +有些图表支持使用colormap的方式配置一组颜色,从而在可视化中通过色彩的变化表达更多信息。 + +在matplotlib中,colormap共有五种类型: + +- 顺序(Sequential)。通常使用单一色调,逐渐改变亮度和颜色渐渐增加,用于表示有顺序的信息 +- 发散(Diverging)。改变两种不同颜色的亮度和饱和度,这些颜色在中间以不饱和的颜色相遇;当绘制的信息具有关键中间值(例如地形)或数据偏离零时,应使用此值。 +- 循环(Cyclic)。改变两种不同颜色的亮度,在中间和开始/结束时以不饱和的颜色相遇。用于在端点处环绕的值,例如相角,风向或一天中的时间。 +- 定性(Qualitative)。常是杂色,用来表示没有排序或关系的信息。 +- 杂色(Miscellaneous)。一些在特定场景使用的杂色组合,如彩虹,海洋,地形等。 + + +```{code-cell} ipython3 +x = np.random.randn(50) +y = np.random.randn(50) +plt.scatter(x,y,c=x,cmap='RdPu'); +``` + + +在以下官网页面可以查询上述五种colormap的字符串表示和颜色图的对应关系 +[https://matplotlib.org/stable/tutorials/colors/colormaps.html](https://matplotlib.org/stable/tutorials/colors/colormaps.html) + + +## 思考题 +- 学习如何自定义colormap,并将其应用到任意一个数据集中,绘制一幅图像,注意colormap的类型要和数据集的特性相匹配,并做简单解释 diff --git a/source/第四回:文字图例尽眉目/index.md b/source/第四回:文字图例尽眉目/index.md new file mode 100644 index 0000000..6ac1044 --- /dev/null +++ b/source/第四回:文字图例尽眉目/index.md @@ -0,0 +1,533 @@ +--- +jupytext: + text_representation: + format_name: myst +kernelspec: + display_name: Python 3 + name: python3 +--- +# 第四回:文字图例尽眉目 + + +```{code-cell} ipython3 +import matplotlib +import matplotlib.pyplot as plt +import numpy as np +import matplotlib.dates as mdates +import datetime +``` + +## 一、Figure和Axes上的文本 + +Matplotlib具有广泛的文本支持,包括对数学表达式的支持、对栅格和矢量输出的TrueType支持、具有任意旋转的换行分隔文本以及Unicode支持。 + +### 1.文本API示例 + +下面的命令是介绍了通过pyplot API和objected-oriented API分别创建文本的方式。 + +| pyplot API | OO API | description | +| ---------- | ------- | ------------ | +| `text` | `text` | 在子图axes的任意位置添加文本| +| `annotate` | `annotate` | 在子图axes的任意位置添加注解,包含指向性的箭头| +| `xlabel` | `set_xlabel` | 为子图axes添加x轴标签 | +| `ylabel` | `set_ylabel` | 为子图axes添加y轴标签 | +| `title` | `set_title` | 为子图axes添加标题 | +| `figtext` | `text` | 在画布figure的任意位置添加文本 | +| `suptitle` | `suptitle` | 为画布figure添加标题 | + +通过一个综合例子,以OO模式展示这些API是如何控制一个图像中各部分的文本,在之后的章节我们再详细分析这些api的使用技巧 + + +```{code-cell} ipython3 + +fig = plt.figure() +ax = fig.add_subplot() + + +# 分别为figure和ax设置标题,注意两者的位置是不同的 +fig.suptitle('bold figure suptitle', fontsize=14, fontweight='bold') +ax.set_title('axes title') + +# 设置x和y轴标签 +ax.set_xlabel('xlabel') +ax.set_ylabel('ylabel') + +# 设置x和y轴显示范围均为0到10 +ax.axis([0, 10, 0, 10]) + +# 在子图上添加文本 +ax.text(3, 8, 'boxed italics text in data coords', style='italic', + bbox={'facecolor': 'red', 'alpha': 0.5, 'pad': 10}) + +# 在画布上添加文本,一般在子图上添加文本是更常见的操作,这种方法很少用 +fig.text(0.4,0.8,'This is text for figure') + +ax.plot([2], [1], 'o') +# 添加注解 +ax.annotate('annotate', xy=(2, 1), xytext=(3, 4),arrowprops=dict(facecolor='black', shrink=0.05)); +``` + + +​ + + +### 2.text - 子图上的文本 + +text的调用方式为`Axes.text(x, y, s, fontdict=None, **kwargs) ` +其中`x`,`y`为文本出现的位置,默认状态下即为当前坐标系下的坐标值, +`s`为文本的内容, +`fontdict`是可选参数,用于覆盖默认的文本属性, +`**kwargs`为关键字参数,也可以用于传入文本样式参数 + +重点解释下fontdict和\*\*kwargs参数,这两种方式都可以用于调整呈现的文本样式,最终效果是一样的,不仅text方法,其他文本方法如set_xlabel,set_title等同样适用这两种方式修改样式。通过一个例子演示这两种方法是如何使用的。 + + +```{code-cell} ipython3 +fig = plt.figure(figsize=(10,3)) +axes = fig.subplots(1,2) + +# 使用关键字参数修改文本样式 +axes[0].text(0.3, 0.8, 'modify by **kwargs', style='italic', + bbox={'facecolor': 'red', 'alpha': 0.5, 'pad': 10}); + +# 使用fontdict参数修改文本样式 +font = {'bbox':{'facecolor': 'red', 'alpha': 0.5, 'pad': 10}, 'style':'italic'} +axes[1].text(0.3, 0.8, 'modify by fontdict', fontdict=font); +``` + + +​ + +​ + + +matplotlib中所有支持的样式参数请参考[官网文档说明](https://matplotlib.org/stable/api/_as_gen/matplotlib.axes.Axes.text.html#matplotlib.axes.Axes.text),大多数时候需要用到的时候再查询即可。 + +下表列举了一些常用的参数供参考。 + +| Property | Description | +| ------------------------ | :-------------------------- | +| `alpha` |float or None 透明度,越接近0越透明,越接近1越不透明 | +| `backgroundcolor` | color 文本的背景颜色 | +| `bbox` | dict with properties for patches.FancyBboxPatch 用来设置text周围的box外框 | +| `color` or c | color 字体的颜色 | +| `fontfamily` or family | {FONTNAME, 'serif', 'sans-serif', 'cursive', 'fantasy', 'monospace'} 字体的类型| +| `fontsize` or size | float or {'xx-small', 'x-small', 'small', 'medium', 'large', 'x-large', 'xx-large'} 字体大小| +| `fontstyle` or style | {'normal', 'italic', 'oblique'} 字体的样式是否倾斜等 | +| `fontweight` or weight | {a numeric value in range 0-1000, 'ultralight', 'light', 'normal', 'regular', 'book', 'medium', 'roman', 'semibold', 'demibold', 'demi', 'bold', 'heavy', 'extra bold', 'black'} 文本粗细| +| `horizontalalignment` or ha | {'center', 'right', 'left'} 选择文本左对齐右对齐还是居中对齐 | +| `linespacing` | float (multiple of font size) 文本间距 | +| `rotation` | float or {'vertical', 'horizontal'} 指text逆时针旋转的角度,“horizontal”等于0,“vertical”等于90 | +| `verticalalignment` or va | {'center', 'top', 'bottom', 'baseline', 'center_baseline'} 文本在垂直角度的对齐方式 | + + + + +### 3.xlabel和ylabel - 子图的x,y轴标签 + +xlabel的调用方式为`Axes.set_xlabel(xlabel, fontdict=None, labelpad=None, *, loc=None, **kwargs)` +ylabel方式类似,这里不重复写出。 +其中`xlabel`即为标签内容, +`fontdict`和`**kwargs`用来修改样式,上一小节已介绍, +`labelpad`为标签和坐标轴的距离,默认为4, +`loc`为标签位置,可选的值为'left', 'center', 'right'之一,默认为居中 + + +```{code-cell} ipython3 +# 观察labelpad和loc参数的使用效果 +fig = plt.figure(figsize=(10,3)) +axes = fig.subplots(1,2) +axes[0].set_xlabel('xlabel',labelpad=20,loc='left') + +# loc参数仅能提供粗略的位置调整,如果想要更精确的设置标签的位置,可以使用position参数+horizontalalignment参数来定位 +# position由一个元组过程,第一个元素0.2表示x轴标签在x轴的位置,第二个元素对于xlabel其实是无意义的,随便填一个数都可以 +# horizontalalignment='left'表示左对齐,这样设置后x轴标签就能精确定位在x=0.2的位置处 +axes[1].set_xlabel('xlabel', position=(0.2, _), horizontalalignment='left'); +``` + + +​ + +​ + + +### 4.title和suptitle - 子图和画布的标题 + +title的调用方式为`Axes.set_title(label, fontdict=None, loc=None, pad=None, *, y=None, **kwargs)` +其中label为子图标签的内容,`fontdict`,`loc`,`**kwargs`和之前小节相同不重复介绍 +`pad`是指标题偏离图表顶部的距离,默认为6 +`y`是title所在子图垂向的位置。默认值为1,即title位于子图的顶部。 + +suptitle的调用方式为`figure.suptitle(t, **kwargs)` +其中`t`为画布的标题内容 + + +```{code-cell} ipython3 +# 观察pad参数的使用效果 +fig = plt.figure(figsize=(10,3)) +fig.suptitle('This is figure title',y=1.2) # 通过参数y设置高度 +axes = fig.subplots(1,2) +axes[0].set_title('This is title',pad=15) +axes[1].set_title('This is title',pad=6); +``` + + +​ + +​ + + +### 5.annotate - 子图的注解 + +annotate的调用方式为`Axes.annotate(text, xy, *args, **kwargs)` +其中`text`为注解的内容, +`xy`为注解箭头指向的坐标, +其他常用的参数包括: +`xytext`为注解文字的坐标, +`xycoords`用来定义xy参数的坐标系, +`textcoords`用来定义xytext参数的坐标系, +`arrowprops`用来定义指向箭头的样式 +annotate的参数非常复杂,这里仅仅展示一个简单的例子,更多参数可以查看[官方文档中的annotate介绍](https://matplotlib.org/stable/tutorials/text/annotations.html#plotting-guide-annotation) + + +```{code-cell} ipython3 +fig = plt.figure() +ax = fig.add_subplot() +ax.annotate("", + xy=(0.2, 0.2), xycoords='data', + xytext=(0.8, 0.8), textcoords='data', + arrowprops=dict(arrowstyle="->", connectionstyle="arc3,rad=0.2") + ); +``` + + +​ + +​ + + + ### 6.字体的属性设置 + 字体设置一般有全局字体设置和自定义局部字体设置两种方法。 + + [为方便在图中加入合适的字体,可以尝试了解中文字体的英文名称,该链接告诉了常用中文的英文名称](https://www.cnblogs.com/chendc/p/9298832.html) + + +```{code-cell} ipython3 +#该block讲述如何在matplotlib里面,修改字体默认属性,完成全局字体的更改。 +plt.rcParams['font.sans-serif'] = ['SimSun'] # 指定默认字体为新宋体。 +plt.rcParams['axes.unicode_minus'] = False # 解决保存图像时 负号'-' 显示为方块和报错的问题。 +``` + + +```{code-cell} ipython3 +#局部字体的修改方法1 +x = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10] +plt.plot(x, label='小示例图标签') + +# 直接用字体的名字 +plt.xlabel('x 轴名称参数', fontproperties='Microsoft YaHei', fontsize=16) # 设置x轴名称,采用微软雅黑字体 +plt.ylabel('y 轴名称参数', fontproperties='Microsoft YaHei', fontsize=14) # 设置Y轴名称 +plt.title('坐标系的标题', fontproperties='Microsoft YaHei', fontsize=20) # 设置坐标系标题的字体 +plt.legend(loc='lower right', prop={"family": 'Microsoft YaHei'}, fontsize=10) ; # 小示例图的字体设置 +``` + + +​ + +​ + + +## 二、Tick上的文本 + +设置tick(刻度)和ticklabel(刻度标签)也是可视化中经常需要操作的步骤,matplotlib既提供了自动生成刻度和刻度标签的模式(默认状态),同时也提供了许多让使用者灵活设置的方式。 + +### 1.简单模式 +可以使用axis的`set_ticks`方法手动设置标签位置,使用axis的`set_ticklabels`方法手动设置标签格式 + + +```{code-cell} ipython3 +x1 = np.linspace(0.0, 5.0, 100) +y1 = np.cos(2 * np.pi * x1) * np.exp(-x1) +``` + + +```{code-cell} ipython3 +# 使用axis的set_ticks方法手动设置标签位置的例子,该案例中由于tick设置过大,所以会影响绘图美观,不建议用此方式进行设置tick +fig, axs = plt.subplots(2, 1, figsize=(5, 3), tight_layout=True) +axs[0].plot(x1, y1) +axs[1].plot(x1, y1) +axs[1].xaxis.set_ticks(np.arange(0., 10.1, 2.)); +``` + + +​ + +​ + + + +```{code-cell} ipython3 +# 使用axis的set_ticklabels方法手动设置标签格式的例子 +fig, axs = plt.subplots(2, 1, figsize=(5, 3), tight_layout=True) +axs[0].plot(x1, y1) +axs[1].plot(x1, y1) +ticks = np.arange(0., 8.1, 2.) +tickla = [f'{tick:1.2f}' for tick in ticks] +axs[1].xaxis.set_ticks(ticks) +axs[1].xaxis.set_ticklabels(tickla); +``` + + +​ + +​ + + + +```{code-cell} ipython3 +#一般绘图时会自动创建刻度,而如果通过上面的例子使用set_ticks创建刻度可能会导致tick的范围与所绘制图形的范围不一致的问题。 +#所以在下面的案例中,axs[1]中set_xtick的设置要与数据范围所对应,然后再通过set_xticklabels设置刻度所对应的标签 +import numpy as np +import matplotlib.pyplot as plt +fig, axs = plt.subplots(2, 1, figsize=(6, 4), tight_layout=True) +x1 = np.linspace(0.0, 6.0, 100) +y1 = np.cos(2 * np.pi * x1) * np.exp(-x1) +axs[0].plot(x1, y1) +axs[0].set_xticks([0,1,2,3,4,5,6]) + +axs[1].plot(x1, y1) +axs[1].set_xticks([0,1,2,3,4,5,6])#要将x轴的刻度放在数据范围中的哪些位置 +axs[1].set_xticklabels(['zero','one', 'two', 'three', 'four', 'five','six'],#设置刻度对应的标签 + rotation=30, fontsize='small')#rotation选项设定x刻度标签倾斜30度。 +axs[1].xaxis.set_ticks_position('bottom')#set_ticks_position()方法是用来设置刻度所在的位置,常用的参数有bottom、top、both、none +print(axs[1].xaxis.get_ticklines()); +``` + + + + + + + + + + +### 2.Tick Locators and Formatters + +除了上述的简单模式,还可以使用`Tick Locators and Formatters`完成对于刻度位置和刻度标签的设置。 +其中[Axis.set_major_locator](https://matplotlib.org/api/_as_gen/matplotlib.axis.Axis.set_major_locator.html#matplotlib.axis.Axis.set_major_locator)和[Axis.set_minor_locator](https://matplotlib.org/api/_as_gen/matplotlib.axis.Axis.set_minor_locator.html#matplotlib.axis.Axis.set_minor_locator)方法用来设置标签的位置,[Axis.set_major_formatter](https://matplotlib.org/api/_as_gen/matplotlib.axis.Axis.set_major_formatter.html#matplotlib.axis.Axis.set_major_formatter)和[Axis.set_minor_formatter](https://matplotlib.org/api/_as_gen/matplotlib.axis.Axis.set_minor_formatter.html#matplotlib.axis.Axis.set_minor_formatter)方法用来设置标签的格式。这种方式的好处是不用显式地列举出刻度值列表。 + +set_major_formatter和set_minor_formatter这两个formatter格式命令可以接收字符串格式(matplotlib.ticker.StrMethodFormatter)或函数参数(matplotlib.ticker.FuncFormatter)来设置刻度值的格式 。 + +#### a) Tick Formatters + + +```{code-cell} ipython3 +# 接收字符串格式的例子 +fig, axs = plt.subplots(2, 2, figsize=(8, 5), tight_layout=True) +for n, ax in enumerate(axs.flat): + ax.plot(x1*10., y1) + +formatter = matplotlib.ticker.FormatStrFormatter('%1.1f') +axs[0, 1].xaxis.set_major_formatter(formatter) + +formatter = matplotlib.ticker.FormatStrFormatter('-%1.1f') +axs[1, 0].xaxis.set_major_formatter(formatter) + +formatter = matplotlib.ticker.FormatStrFormatter('%1.5f') +axs[1, 1].xaxis.set_major_formatter(formatter); +``` + + + +​ + + + +```{code-cell} ipython3 +# 接收函数的例子 +def formatoddticks(x, pos): + """Format odd tick positions.""" + if x % 2: + return f'{x:1.2f}' + else: + return '' + +fig, ax = plt.subplots(figsize=(5, 3), tight_layout=True) +ax.plot(x1, y1) +ax.xaxis.set_major_formatter(formatoddticks); +``` + + +​ + +​ + + +#### b) Tick Locators + + +在普通的绘图中,我们可以直接通过上图的set_ticks进行设置刻度的位置,缺点是需要自己指定或者接受matplotlib默认给定的刻度。当需要更改刻度的位置时,matplotlib给了常用的几种locator的类型。如果要绘制更复杂的图,可以先设置locator的类型,然后通过axs.xaxis.set_major_locator(locator)绘制即可 +locator=plt.MaxNLocator(nbins=7)#自动选择合适的位置,并且刻度之间最多不超过7(nbins)个间隔 +locator=plt.FixedLocator(locs=[0,0.5,1.5,2.5,3.5,4.5,5.5,6])#直接指定刻度所在的位置 +locator=plt.AutoLocator()#自动分配刻度值的位置 +locator=plt.IndexLocator(offset=0.5, base=1)#面元间距是1,从0.5开始 +locator=plt.MultipleLocator(1.5)#将刻度的标签设置为1.5的倍数 +locator=plt.LinearLocator(numticks=5)#线性划分5等分,4个刻度 + + +```{code-cell} ipython3 +# 接收各种locator的例子 +fig, axs = plt.subplots(2, 2, figsize=(8, 5), tight_layout=True) +for n, ax in enumerate(axs.flat): + ax.plot(x1*10., y1) + +locator = matplotlib.ticker.AutoLocator() +axs[0, 0].xaxis.set_major_locator(locator) + +locator = matplotlib.ticker.MaxNLocator(nbins=3) +axs[0, 1].xaxis.set_major_locator(locator) + + +locator = matplotlib.ticker.MultipleLocator(5) +axs[1, 0].xaxis.set_major_locator(locator) + + +locator = matplotlib.ticker.FixedLocator([0,7,14,21,28]) +axs[1, 1].xaxis.set_major_locator(locator); +``` + + +​ + +​ + + + 此外`matplotlib.dates` 模块还提供了特殊的设置日期型刻度格式和位置的方式 + + +```{code-cell} ipython3 +# 特殊的日期型locator和formatter +locator = mdates.DayLocator(bymonthday=[1,15,25]) +formatter = mdates.DateFormatter('%b %d') + +fig, ax = plt.subplots(figsize=(5, 3), tight_layout=True) +ax.xaxis.set_major_locator(locator) +ax.xaxis.set_major_formatter(formatter) +base = datetime.datetime(2017, 1, 1, 0, 0, 1) +time = [base + datetime.timedelta(days=x) for x in range(len(x1))] +ax.plot(time, y1) +ax.tick_params(axis='x', rotation=70); +``` + + + +​ + + +## 三、legend(图例) + +在具体学习图例之前,首先解释几个术语: +**legend entry(图例条目)** +每个图例由一个或多个legend entries组成。一个entry包含一个key和其对应的label。 +**legend key(图例键)** +每个legend label左面的colored/patterned marker(彩色/图案标记) +**legend label(图例标签)** +描述由key来表示的handle的文本 +**legend handle(图例句柄)** +用于在图例中生成适当图例条目的原始对象 + +以下面这个图为例,右侧的方框中的共有两个legend entry;两个legend key,分别是一个蓝色和一个黄色的legend key;两个legend label,一个名为‘Line up’和一个名为‘Line Down’的legend label + +![](https://img-blog.csdnimg.cn/1442273f150044139d54b6c2c6384e37.png) + +图例的绘制同样有OO模式和pyplot模式两种方式,写法都是一样的,使用legend()即可调用。 +以下面的代码为例,在使用legend方法时,我们可以手动传入两个变量,句柄和标签,用以指定条目中的特定绘图对象和显示的标签值。 +当然通常更简单的操作是不传入任何参数,此时matplotlib会自动寻找合适的图例条目。 + + +```{code-cell} ipython3 +fig, ax = plt.subplots() +line_up, = ax.plot([1, 2, 3], label='Line 2') +line_down, = ax.plot([3, 2, 1], label='Line 1') +ax.legend(handles = [line_up, line_down], labels = ['Line Up', 'Line Down']); +``` + + + +legend其他常用的几个参数如下: + +**设置图例位置** +loc参数接收一个字符串或数字表示图例出现的位置 +ax.legend(loc='upper center') 等同于ax.legend(loc=9) + + + +| Location String | Location Code | +| --------------- | ------------- | +| 'best' | 0 | +| 'upper right' | 1 | +| 'upper left' | 2 | +| 'lower left' | 3 | +| 'lower right' | 4 | +| 'right' | 5 | +| 'center left' | 6 | +| 'center right' | 7 | +| 'lower center' | 8 | +| 'upper center' | 9 | +| 'center' | 10 | + + +```{code-cell} ipython3 +fig,axes = plt.subplots(1,4,figsize=(10,4)) +for i in range(4): + axes[i].plot([0.5],[0.5]) + axes[i].legend(labels='a',loc=i) # 观察loc参数传入不同值时图例的位置 +fig.tight_layout() +``` + + +​ + +​ + + +**设置图例边框及背景** + +```{code-cell} ipython3 +fig = plt.figure(figsize=(10,3)) +axes = fig.subplots(1,3) +for i, ax in enumerate(axes): + ax.plot([1,2,3],label=f'ax {i}') +axes[0].legend(frameon=False) #去掉图例边框 +axes[1].legend(edgecolor='blue') #设置图例边框颜色 +axes[2].legend(facecolor='gray'); #设置图例背景颜色,若无边框,参数无效 +``` + + +​ + + +**设置图例标题** + + +```{code-cell} ipython3 +fig,ax =plt.subplots() +ax.plot([1,2,3],label='label') +ax.legend(title='legend title'); +``` + + +​ + +​ + + +## 思考题 +- 请尝试使用两种方式模仿画出下面的图表(重点是柱状图上的标签),本文学习的text方法和matplotlib自带的柱状图标签方法bar_label +![](https://img-blog.csdnimg.cn/99bc6e007eb34fc09015589d56c6eafc.png) + + +```{code-cell} ipython3 + +```