{
"cells": [
{
"cell_type": "markdown",
"metadata": {},
"source": [
"___\n",
"\n",
"
\n",
"___\n",
"# Matplotlib Overview Lecture"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Introduction"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Matplotlib is the \"grandfather\" library of data visualization with Python. It was created by John Hunter. He created it to try to replicate MatLab's (another programming language) plotting capabilities in Python. So if you happen to be familiar with matlab, matplotlib will feel natural to you.\n",
"\n",
"It is an excellent 2D and 3D graphics library for generating scientific figures. \n",
"\n",
"Some of the major Pros of Matplotlib are:\n",
"\n",
"* Generally easy to get started for simple plots\n",
"* Support for custom labels and texts\n",
"* Great control of every element in a figure\n",
"* High-quality output in many formats\n",
"* Very customizable in general\n",
"\n",
"Matplotlib allows you to create reproducible figures programmatically. Let's learn how to use it! Before continuing this lecture, I encourage you just to explore the official Matplotlib web page: http://matplotlib.org/\n",
"\n",
"## Installation \n",
"\n",
"You'll need to install matplotlib first with either:\n",
"\n",
" conda install matplotlib\n",
"or\n",
" pip install matplotlib\n",
" \n",
"## Importing"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Import the `matplotlib.pyplot` module under the name `plt` (the tidy way):"
]
},
{
"cell_type": "code",
"execution_count": 1,
"metadata": {
"collapsed": false
},
"outputs": [],
"source": [
"import matplotlib.pyplot as plt"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"You'll also need to use this line to see plots in the notebook:"
]
},
{
"cell_type": "code",
"execution_count": 2,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"%matplotlib inline"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"That line is only for jupyter notebooks, if you are using another editor, you'll use: **plt.show()** at the end of all your plotting commands to have the figure pop up in another window."
]
},
{
"cell_type": "markdown",
"metadata": {
"collapsed": true
},
"source": [
"# Basic Example\n",
"\n",
"Let's walk through a very simple example using two numpy arrays:"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"### Example\n",
"\n",
"Let's walk through a very simple example using two numpy arrays. You can also use lists, but most likely you'll be passing numpy arrays or pandas columns (which essentially also behave like arrays).\n",
"\n",
"** The data we want to plot:**"
]
},
{
"cell_type": "code",
"execution_count": 7,
"metadata": {
"collapsed": false
},
"outputs": [],
"source": [
"import numpy as np\n",
"x = np.linspace(0, 5, 11)\n",
"y = x ** 2"
]
},
{
"cell_type": "code",
"execution_count": 8,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"text/plain": [
"array([ 0. , 0.5, 1. , 1.5, 2. , 2.5, 3. , 3.5, 4. , 4.5, 5. ])"
]
},
"execution_count": 8,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"x"
]
},
{
"cell_type": "code",
"execution_count": 10,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"text/plain": [
"array([ 0. , 0.25, 1. , 2.25, 4. , 6.25, 9. , 12.25,\n",
" 16. , 20.25, 25. ])"
]
},
"execution_count": 10,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"y"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Basic Matplotlib Commands\n",
"\n",
"We can create a very simple line plot using the following ( I encourage you to pause and use Shift+Tab along the way to check out the document strings for the functions we are using)."
]
},
{
"cell_type": "code",
"execution_count": 13,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"image/png": "iVBORw0KGgoAAAANSUhEUgAAAYAAAAEZCAYAAACervI0AAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAIABJREFUeJzt3Xm8XfO9//HXOxJzKC2NioZUDb/bqkhraGiPS0JVS2uM\nGoqq3qqhreny60160ZqKVlEx9JJSpDGFIvHjFDETEYrQKuISNUdoSM7n98daJ9mOM+x99rDW3uv9\nfDzO46y19xo+Z5PvZ3+H9f0qIjAzs+IZkHUAZmaWDScAM7OCcgIwMysoJwAzs4JyAjAzKygnADOz\ngnICsKYl6TxJx2dw3z9L2qeX938v6b8bGZNZfzgBWCYkbSlpuqQ3Jb0q6U5JI9P39pN0Z1/XiIj/\niIiT6hDXPElvS3pHUke63fna0IjYISImVhJrBffvkDS8y2vjJE2s1T3MOg3MOgArHkmDgSnAwcAk\nYGlgK2BB5yFAr08oShoQER21ji0i7gIGp/cYBvwdWDl6fmKyz1grDaHC13tVr8/JWoNrAJaF9YCI\niKsisSAibo2IxyRtAJwHbJF+634dFjernCvpRknzgLbSphZJX5X0gqSfSJor6UVJ3+28oaRVJU2R\n9Jak+ySdUME3d31oR7pd0gE9xfqRk6UdJc2Q9IakuyR9vtx79XC9DSRNlfSapCck7VbyXnef09KS\nTpf0nKSX0veXKe9Pt1bmBGBZmA0skvQ/kraX9LHONyLiSeAHwD0RMTgiVi05byxwQkQMBqZ3c90h\nJN/ePwV8DzhH0srpe+cC84DVge8C+1HlN/c+YgVA0gjgIuAgYFXgfOB6SYP6c09JywNTgT8AnwD2\nBM5Nk1Gnrp/TKcC6wEbp7zWB/+rP/a21OAFYw0XEPGBLoAOYALwi6TpJq/Vx6nURcW96jQXdvP8+\nScG3KCJuAt4B1pc0APg28F9pbeMJ4JJa/T19OAj4XUQ8mNZ2JpI0dW3eyzkPS3o9/XkDOKbkvR2B\nZyPi0vR6M4HJwG4lx3T9nA4CfhwRb0XEfOBkkiRhBec+AMtERDwFHAAgaT3gMuAs4Du9nPZCH5d9\nrUt797vAisBqwFLAnAquVSvDgH0lHZruCxhEUkvpyYiIeLZzR9I44DMl19u8pLlJJH/bpSXnv1By\n7mrA8sBD0uLWpQGU0dRkrc8JwDIXEbMl/Q/w/c6Xejq0n7f4J7AQGAo8k762Vj+v1VVfMb0AnBQR\nv6zgmr0Vzi8A7RGxXZkxvUqSCP8tIl6qIAYrADcBWcNJWj/trF0z3V+LpEninvSQucDQ/raTd5XW\nCq4GxktaLm0v37fccPt4v69YLwB+IGlTAEkrSNpB0gpl3r+rG4D1JO0taaCkQZK+KGn97g5ORy9d\nAJzV2cQmaU1JY/p5f2shTgCWhXnAZsB96UiVu4FHgSPT928DHgdelvRKFfcp/SZ8KPAx4CWS9v/L\nWTLstNxrdPdar7FGxEMkbfC/TZttZpN0QFdyv9LrvQOMIen8/d/052Sgt1E9x5DUfO6V9CZJJ/J6\nvd3HikH1XBBG0lCStslPknb4RcTZaZvmQUDnP5jjIuLmugVi1oWkk4FPRsT+WcdilpV6J4AhwJCI\neETSisBDwE7AHsC8iDijbjc3K5E2kSwdEbPS5pgbgQMiYkrGoZllpq6dwBHxMvByuv2OpCdIxiCD\nRyFYYw0G/ihpDZJ2+9Nc+FvR1bUG8KEbSWsD7cDngJ+SPIzzFvAg8NOIeKshgZiZGdCgTuC0+edP\nwOFpJ9a5wPCI2JikhuCmIDOzBqt7DUDSQJKhazdFxK+7eX8YMCUiNurmvcZUT8zMWkxE9NnM3oga\nwMXAX0sL/7RzuNO3gcd6Ojki/BPBuHHjMo8hLz/+LPxZ+LPo5mfCBGLDDYm33y67cK5rJ7CkUSSP\n9s+SNINkjPNxwF6SNiYZGvoPkmmBzcysP+6/H44/Hu68EwYPLvu0eo8Cmk4yT0lXHvNvZlYLr7wC\nu+4KEybA+t0+EN4jPwncJNra2rIOITf8WSzhz2KJQn4WCxfCHnvAvvvCzjtXfHrDhoH2h6TIc3xm\nZpk68kh47DG48UZYakljiySijE5gzwZqZtaMrrwSrr4aHnzwQ4V/JVwDMDNrNo89BltvDdOmwcYb\nf+TtcmsA7gMwM2smb74J3/oWnHlmt4V/JVwDMDNrFh0dsNNOsM468Jvf9HiYawBmZq3mhBOSGsCv\nflWTy7kT2MysGdxwA1xwQdLpO6gmi+U5AZiZ5d4zz8ABB8B118GQIX0fXyY3AZmZ5dn8+Umn789/\nDltsUdNLuxPYzCyvImCvvWDZZeHii0HlraPlB8HMzJrdWWfB7Nlw111lF/6VcA3AzCyP2tthzz3h\nvvtg2LCKTvUwUDOzZjVnDowdCxMnVlz4V8IJwMwsTxYsgF12gSOOgNGj63orNwGZmeXJwQfDa6/B\npEn9bvd3J7CZWbO58MJkVa/77qtLp29XrgGYmeXB/ffDjjsmCaDClb26ciewmVmzqGJZx2q4BmBm\nlqWFC5PO3lGj4MQTa3LJcmsATgBmZlnqYVnHargT2Mws72qwrGM1XAMwM8tCH8s6VsOdwGZmeVXD\nZR2r4RqAmVkjdS7rOHw4/PrXdbmFawBmZnl04onw1ltw+ulZR+JOYDOzhrnxxmSsfw2XdayGE4CZ\nWSM88wzsv3/Nl3WshpuAzMzqrY7LOlbDncBmZvXUz2Udq+EHwczM8qDOyzpWwzUAM7N6qWJZx2p4\nGKiZWZbmzEmafv7wh4YW/pVwAjAzq7XSZR233TbraHrkJiAzs1qrwbKO1XAnsJlZFhq8rGM16toE\nJGmopNskPS5plqTD0tdXkTRV0lOSbpG0cj3jMDNriPvvh+OOg2uugcGDs46mT/XuA1gI/CQi/g3Y\nAjhE0gbAscCtEbE+cBvwn3WOw8ysvubOzWRZx2rUNQFExMsR8Ui6/Q7wBDAU2Am4JD3sEmDnesZh\nZlZX8+cnC7ofeCDs3DzFWcM6gSWtDbQDnwNeiIhVSt57PSJW7eYcdwKbWb4tXJgU+quvDhddlIt2\n/1x1AktaEfgTcHhEvCOpa6neYyk/fvz4xdttbW20tbXVI0Qzs8pFwA9/mCSB88/PrPBvb2+nvb29\n4vPqXgOQNBC4AbgpIn6dvvYE0BYRcyUNAW6PiA27Odc1ADPLr5NOgsmT4S9/yVWnb56eBL4Y+Gtn\n4Z+6Hvhuur0fcF0D4jAzq51LLkmGfN54Y64K/0rUtQYgaRRwBzCLpJkngOOA+4GrgLWA54DdI+LN\nbs53DcDM8mfaNNh772Sunw0/0niRuXJrAH4S2MysEjNnwujRSdPPVltlHU238tQEZGbWGp5/Phnu\nec45uS38K+EEYGZWjjfegK99DX7yE9htt6yjqQk3AZmZ9WXBAthuOxgxAs48M+to+uQ+ADOzWujo\ngO98Jxnrf+WVMCD/DSe5ehDMzKxpHXtssrjLtGlNUfhXwgnAzKwnZ58NU6bA9OnJou4txgnAzKw7\n11wDJ5+cFP6rfmSqspbgBGBm1tU99ySret18M6y9dtbR1E1rNWiZmVVr9mz41reSqR422STraOrK\nCcDMrNPcuclY/5NOSn63OCcAMzNYsqjLPvskC7sUgJ8DMDPL4aIu1fBcQGZm5cjJoi5Z8CggMyu2\nX/wCHnwwWdRl0KCso2koJwAzK65LLoELLkiGfTbpoi7VcB+AmRVTzhd1qYbnAjIz68nMmckEb5Mn\nt1zhXwl3AptZsbTYoi7VcAIws+JowUVdquE+ADMrhiZb1KUaXhDGzKxTEy7qUg13ApuZdWrhRV2q\n4QRgZq3t7LPh+uvh7rtbclGXapSVCiUNk7Rtur2cpOI9MWFmzadzUZebbmrZRV2q0WcCkHQQ8Cfg\n/PSlocC19QzKzKxqd98N3/9+8u1/nXWyjiaXyqkBHAKMAt4GiIingdXrGZSZWVVmz4ZvfxsuvRRG\njsw6mtwqJwEsiIj3O3ckDQQ8NMfM8qlgi7pUo5wE8BdJxwHLSRoNTAKm1DcsM7N+KOCiLtXo8zkA\nSQOAA4ExgIBbgAsbMUDfzwGYWdlabFGXatTkQTBJSwGXRsR3ahlcuZwAzKwsEXDwwck8P1OmFG5e\n/65q8iBYRCxKh4AuXdoPYGaWKyeeCA88AHfcUfjCvxLlPAj2d2C6pOuB+Z0vRsQZdYvKzKxcJ58M\nEycmK3oVcFGXapSTAP6W/gwA/OmaWX6cfDJcfHGyqMsaa2QdTdMpezI4SctHxLt1jqfrPd0HYGbd\nKy38P/WprKPJlXL7AMp5EngLSX8Fnkz3vyDp3BrEaGbWPy78a6Kc5wDOArYDXgOIiJnAV8q5uKSL\nJM2V9GjJa+MkzZH0cPqzfX8CN7OCcuFfM2VNBhcRL3R5aVGZ1/89SfLo6oyI2CT9ubnMa5lZ0bnw\nr6lyEsALkr4MhKRBko4Enijn4hFxF/BGN28V9wkNM+sfF/41V04C+AHJhHBrAi8CG6f71fiRpEck\nXShp5SqvZWatzoV/XdR9SUhJw4ApEbFRur8a8GpEhKQTgTUiottJOzwKyMxc+Feu6ieBJZ1NL7N+\nRsRh/QksIv5ZsnsBfUwsN378+MXbbW1ttLW19ee2ZtaMXPiXpb29nfb29orP67EGIGm/kt2fA+NK\n34+IS8q6gbQ2SQ3g8+n+kIh4Od3+MfCliNirh3NdAzArKhf+/VaTyeBKLjYjIkb0I4jLgTbg48Bc\nkiSyNUk/QgfwD+DgiJjbw/lOAGZF5MK/KrVOAA9HxCY1iawCTgBmBeTCv2o1exLYzKxhXPg3VG+d\nwPNY0gm8vKS3O98CIiJWqndwZlYgLvwbrscEEBGe+dPMGsOFfybcBGRm2XLhnxknADPLjgv/TDkB\nmFk2XPhnrqwEkK4LvG26vZwk9w+YWf+58M+FchaEOQj4E3B++tJQ4Np6BmVmLcyFf26UUwM4BBgF\nvA0QEU8Dq9czKDNrUS78c6WcBLAgIt7v3JE0kF4miTMz65YL/9wpJwH8RdJxwHKSRgOT6GMGTzOz\nD3Hhn0t9zgUkaQBwIDCG5CngW4ALGzFJj+cCMmsBLvwbrqaTwWXFCcCsybnwz0QtFoSZRe8LwmzU\nz9jMrAhc+OdejwkA2LFhUZhZa3Hh3xR67ASOiOci4jngh53bpa81LkQzayou/JtGOaOARnfz2tdq\nHYiZtQAX/k2ltz6A/yD5pj9c0qMlbw0Gptc7MDNrMi78m05vi8KvDKwC/BI4tuSteRHxegNi8ygg\ns2bhwj9Xqh4GKmmliHhb0qrdvd+IJOAEYNYEXPjnTi0SwA0RsaOkZ0mGg5ZeLCJieG1C7SU4JwCz\n/OrogOOOg2uugdtvd+GfI7VIAMPSET+ZcQIwy6l//Qv22w9efBGuuw4+/vGsI7IS5SaA3kYBXVPD\neMysVbz6KmyzDUhw660u/JtYbwmgz+xhZgXz9NOwxRbwla/A5ZfDsstmHZFVobcmoFeAK3o6MSIO\nq1dQJTG4CcgsL6ZPh112gRNOgIMOyjoa60XVcwEB7wEP1S4kM2taV14Jhx4KEyfCdttlHY3VSG8J\n4LWIuKRhkZhZ/kTAqafCOefAtGnwhS9kHZHVUG8J4P1e3jOzVrdwIRxyCNx3H9xzD6y5ZtYRWY31\nmAAiYvNGBmJmOTJvHuy+e7J9550weHC28VhdlDMZnJkVyZw5sNVWMGwYTJniwr+FOQGY2RIzZ8KX\nvwx77QXnnQcDe2sltmbXZwKQ9BlJy6TbbZIOk/Sx+odmZg11880wejScfjocfXTyoJe1tHJqAJOB\nRZLWBSYAawGX1zUqM2usCRNg//3h2muXtP1byyunftcREQslfQs4OyLOljSj3oGZWQN0Tuh29dVJ\nZ++662YdkTVQOQngA0ljgf2Ab6SvDapfSGbWEKUTut1zj+f0KaBymoD2B7YAToqIZyWtA0ysb1hm\nVlevvgrbbusJ3Qqux7mAanJx6SJgR2BuRGyUvrYKcCUwDPgHsHtEvNXD+Z4LyKzWnn4adtgBdt0V\nTjoJBngwYKupejpoSVelv2dJerTrT5lx/B7oOnHIscCtEbE+cBvwn2Vey8yqNX16Msb/6KPhl790\n4V9wvc0GukZEvCRpWHfvl7tYTHr+lJIawJPAVyNirqQhQHtEbNDDua4BmNXKVVfBj37kCd0KoOrZ\nQCPipXRzhYj4a5eLtwH9XS1s9YiYm97jZUmr9/M6ZlYOT+hmPShnFNBVkiYCpwLLpr+/SNIxXAv+\nim9WLwsXJt/6773XE7rZR5STADYDTgHuBgYDlwGjqrjnXEmfLGkCeqW3g8ePH794u62tjba2tipu\nbVYgntCtMNrb22lvb6/4vD5HAUlaGjgJGA2sCPzfiOhxpbBuzl+bpA/g8+n+KcDrEXGKpGOAVSLi\n2B7OdR+AWX/MmQM77gibbw6//a3n9CmYWiwK3+kBktXBvgRsBYyVNKnMIC4nqTmsJ+l5SfsDJwOj\nJT0FbJPum1mteEI3K1M5NYAvRsSDXV7bJyLq/jCYawBmFbr5Zth33+Rbv+f0Kaya1QBKC39JK0ja\nG9izyvjMrNY8oZtVqM+6YdoH8HVgL5KHuiYDv6tzXGZWro4OOP54mDzZE7pZRXpMAJLGAGOBMcDt\nwKXAlyJi/wbFZmZ9+de/4LvfTTp9PaGbVai3JqCbgeHAlhGxd0RMAToaE5aZ9alzQjfwhG7WL70l\ngE2Ae4BbJU2TdCCwVGPCMrNe3XsvbLppMq/P5ZfDsstmHZE1obJmA5X0ZZLmoF2AmcA1ETGhzrF5\nFJBZVx0dcNppcMYZcP75sPPOWUdkOVTuKKCKpoOWNADYFtgzIg6oIr5y7+cEYNZp7lzYZx94773k\nW/9aa2UdkeVULR8EWywiOiJiaiMKfzMrMXUqjBgBW2wBt9/uwt9qwo8ImuXZBx/Az34Gf/gDXHYZ\nbL111hFZC+ltQZg/p/P4mFkWnn026eSdNQtmzHDhbzXXWxPQ74Gpko6X5EXgzRpp0iTYbDPYYw+4\n4QZYbbWsI7IW1GsnsKQVgZ8B25MsBL/4OYCIOKPuwbkT2Irm3Xfhxz+G226DK66AkSOzjsiaUK06\ngd8H5gPLkKwFUPpjZrX0+OPJ2P533oGHHnLhb3XX21QQ2wNnANcDm0TEuw2LyqxIIuCCC5L5fE47\nDfbbD9TnlzezqvU2Cuh4YLeIeLxRwZgVzptvwve/D7NnJxO5bbBB1hFZgfTYBBQRW7nwN6uje+9N\nxvYPGZJsu/C3BvNzAGaNVjqdw4QJsNNOWUdkBeUEYNZIL7+crNj13nvw4IN+otcyVdFUEGZWhalT\nYZNNPJ2D5YZrAGb15ukcLKecAMzq6dlnYezYZLGWGTP8RK/lipuAzOrF0zlYzrkGYFZr774LRxyR\ntPPfdJOf6LXccg3ArJYeewy+9CWYP9/TOVjuOQGY1UJEskTj1lvDUUclHb4rrZR1VGa9chOQWbXe\nfBMOOgiefhruugvWXz/riMzK4hqAWTU6p3NYY41k24W/NRHXAMz6w9M5WAtwAjCr1PPPw/e+5+kc\nrOm5CcisXAsWwC9+kUzn8JWveDoHa3quAZiV45Zb4NBDYcMN4YEHYJ11so7IrGpOAGa9ef75ZI3e\nRx6B3/wGvv71rCMyqxk3AZl1p7S55wtfSNbrdeFvLcY1ALOu3NxjBeEEYNbJzT1WMG4CMnNzjxVU\nZjUASf8A3gI6gA8iYtOsYrECc3OPFViWTUAdQFtEvJFhDFZUbu4xy7QJSBnf34rIzT1mi2VZAwhg\nmqRFwISIuCDDWKwI3Nxj9iFZJoBREfGSpNVIEsETEXFX14PGjx+/eLutrY22trbGRWitwc091uLa\n29tpb2+v+DxFRO2jqTQIaRwwLyLO6PJ65CE+a1ILFsCvfpXM2HnYYXD00bDssllHZVZ3kogI9XVc\nJjUAScsDAyLiHUkrAGOAn2cRi7UoN/eY9SmrJqBPAtdIijSGyyJiakaxWCtxc49Z2XLRBNQTNwFZ\n2dzcY7ZYrpuAzGrKzT1m/eIEYM3LzT1mVfGDWNZ8/DCXWU24BmDNo6MDbrgBjjzSzT1mNeAEYPn3\nwQdwxRVw6qmw1FJw5pn+xm9WA04All/z58NFFyWje4YPh9NOg+22A/U5uMHMyuAEYPnz2mvw29/C\nOefAllvCVVfBZptlHZVZy3EnsOXH88/DEUfAZz+bbN9xB1x9tQt/szpxArDsPf447LcfbLwxDBwI\ns2YlTT8bbJB1ZGYtzQnAsjN9Onzzm7DNNrD++vC3v8Hpp8Oaa2YdmVkhuA/AGqujA/78ZzjlFHjx\nRTjqKLjySlhuuawjMyscJwBrjK5DOY89FnbdNWnyMbNM+F+f1VfXoZynnw5jxngop1kOOAFYfZQO\n5dxqK5g0CTbdNOuozKyEO4GttkqHcr7wAtx5J0ye7MLfLIecAKw2SodyDhqUDOW88MJkdI+Z5ZIT\ngFWnu6Gcp53moZxmTcB9AFY5D+U0awlOAFa+0qGcAwfCMcd4KKdZE/O/XOtdBMycmUzIdtll8JnP\neCinWYtwArCPKi30J02ChQth993h2mthxIisozOzGnECsERPhf4f/wgjR/rbvlkLcgIoMhf6ZoXm\nBFA0LvTNLOUEUAQu9M2sG04ArcqFvpn1wQmglbjQN7MKOAE0Oxf6ZtZPTgDNyIW+mdWAE0CzcKFv\nZjXmBJBXixbB7Nnw0EPw4INw440u9M2sphQRWcfQI0mR5/hqprSw7yzwH3kEVl89KehHjkymW3ah\nb2ZlkERE9FlYOAE0WjmF/ciRsMkmsOqqWUdrZk3ICSAPXNibWQacABrNhb2Z5UTuE4Ck7YGzSJal\nvCgiTunmmHwmABf2ZpZjuU4AkgYAs4FtgP8FHgD2jIgnuxyXfQLISWHf3t5OW1tb3a7fTPxZLOHP\nYgl/FkuUmwCyGga6KfB0RDwHIOkKYCfgyV7PqsaiRfDmm/DGG0t+Xn/9w/vd/fzznzBkyJKCfty4\nTL7Z+3/uJfxZLOHPYgl/FpXLKgGsCbxQsj+HJCn0rrtCvNwCff58WGklWGWV7n8+8Qn47Gc//Nqq\nqyavDx5cr8/BzCwz+X8QbMSI6gvxVVZJzhswIOu/xswsN7LqA9gcGB8R26f7xwLRtSNYUg57gM3M\n8i/PncBLAU+RdAK/BNwPjI2IJxoejJlZQWXSBBQRiyT9CJjKkmGgLvzNzBoo1w+CmZlZ/eSyV1TS\n9pKelDRb0jFZx5MlSRdJmivp0axjyZKkoZJuk/S4pFmSDss6pqxIWkbSfZJmpJ/FuKxjypqkAZIe\nlnR91rFkSdI/JM1M/9+4v8/j81YDKPchsaKQtCXwDnBpRGyUdTxZkTQEGBIRj0haEXgI2KnA/18s\nHxHvpv1p04HDIqLPf/CtStKPgZHAShHxzazjyYqkvwMjI+KNco7PYw1g8UNiEfEB0PmQWCFFxF1A\nWf8xW1lEvBwRj6Tb7wBPkDxPUkgR8W66uQxJX16+vsk1kKShwA7AhVnHkgOignI9jwmgu4fECvsP\n3T5K0trAxsB92UaSnbTJYwbwMjAtIh7IOqYMnQkcRYGTYIkApkl6QNJBfR2cxwRg1qO0+edPwOFp\nTaCQIqIjIkYAQ4HNJP2frGPKgqSvA3PT2qHSnyIbFRGbkNSIDkmbkHuUxwTwIvDpkv2h6WtWcJIG\nkhT+EyPiuqzjyYOIeBu4Hdg+61gyMgr4Ztr2/Udga0mXZhxTZiLipfT3P4Fr6GOKnTwmgAeAdSUN\nk7Q0sCdQ6J59/M2m08XAXyPi11kHkiVJn5C0crq9HDCaek6kmGMRcVxEfDoihpOUFbdFxL5Zx5UF\nScunNWQkrQCMAR7r7ZzcJYCIWAR0PiT2OHBFkR8Sk3Q5cDewnqTnJe2fdUxZkDQK+A7w7+kQt4fT\nNSWKaA3gdkmPkPSD3BIRf844JsveJ4G70r6he4EpETG1txNyNwzUzMwaI3c1ADMzawwnADOzgnIC\nMDMrKCcAM7OCcgIwMysoJwAzs4JyArDcSad+/rukj6X7q6T7n+7h+J0ldUhar4xrj5R0VhnHrVry\nvMFLkuaU7A+SdFd63DBJY0vO+6qkKRX8rcMkzery2jhJPyn3Gmb95QRguRMRc4Bzgc41ok8GfhcR\nz/dwyp7AncDYHt4vvfZDEXFEGce9HhEj0nlVzgPO6NyPiA8ionOOlXWAvbqe3tf1qzz+Q9Ipoc0q\n5gRgeXUWySRnhwNfBn7V3UHpI++jgAMpSQBpreDWdHsNSU9JWr30G3q63fmt/qH0Wt3eppv7zks3\nfwlsmV7j8C7HLJ8u6HNvev1vVPQJJNcYLummdHbHv3TWciT9XtJ5ku4FTqnFvax4MlkT2KwvEbFQ\n0tHAzcC26RQh3dkJuDkinpH0qqQRETEjIq6V9G1Jh5BMlPaziHhF0oYs+cb9U+CHEXGPpOWBf1US\nYvr7WOCnnYuQSPpqyTHHA/8vIg5M5+65X9KtEfFel2utK+nhdFskj/Sfnu5PAA6OiL9J2pSkNrJN\n+t6aEbF5et+TyryX2WJOAJZnO5CsCvd54LYejhlLUlsAuJKkOWZGun8YyWRY90TEVd2cOx04U9Jl\nwNURUetZZ8cA35B0VLq/NMlMt091Oe6ZtKkJSPoA0t8rkNR+JknqrIUMKjlvUj/uZbaYE4DlkqSN\nSb7pbg5Ml3RFRMztcswqwL8Dn5MUwFIk38w7C8G1gA6Sb9QfERGnSLoB+Hp6jzERMbuWfwawS0Q8\n3c/zBwBvlCaHLuZ32a/mXlZA7gOwvDqXZNGXOcCpdN8HsBvJWsnrRMTwiBgGPCtpy7Rj9CKSDuIn\nJP2068mShkfE4xFxKsk05BtUEF/nN/J5wOAejrmFpBbSeb+N+7jWh0TEPJK/Z9eSa/S0LnS59zJb\nzAnAciddyu65iOhs9jkP2EDSVl0O3YNk0YtSk0mahY4D7oiIu0na+g+UtH6XY4+QNCudVvl94KYK\nwuzsA3gU6Eg7kw/vcswJwCBJj6ZDPf+7j2t1Z+809kckPQZ8s4dzTizzXmaLeTpoM7OCcg3AzKyg\nnADMzAqn7UUdAAAAKElEQVTKCcDMrKCcAMzMCsoJwMysoJwAzMwKygnAzKygnADMzArq/wOMeihN\naDDMkgAAAABJRU5ErkJggg==\n",
"text/plain": [
""
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"plt.plot(x, y, 'r') # 'r' is the color red\n",
"plt.xlabel('X Axis Title Here')\n",
"plt.ylabel('Y Axis Title Here')\n",
"plt.title('String Title Here')\n",
"plt.show()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Creating Multiplots on Same Canvas"
]
},
{
"cell_type": "code",
"execution_count": 14,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"image/png": "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\n",
"text/plain": [
""
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"# plt.subplot(nrows, ncols, plot_number)\n",
"plt.subplot(1,2,1)\n",
"plt.plot(x, y, 'r--') # More on color options later\n",
"plt.subplot(1,2,2)\n",
"plt.plot(y, x, 'g*-');"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"___\n",
"# Matplotlib Object Oriented Method\n",
"Now that we've seen the basics, let's break it all down with a more formal introduction of Matplotlib's Object Oriented API. This means we will instantiate figure objects and then call methods or attributes from that object."
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Introduction to the Object Oriented Method"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"The main idea in using the more formal Object Oriented method is to create figure objects and then just call methods or attributes off of that object. This approach is nicer when dealing with a canvas that has multiple plots on it. \n",
"\n",
"To begin we create a figure instance. Then we can add axes to that figure:"
]
},
{
"cell_type": "code",
"execution_count": 15,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"text/plain": [
""
]
},
"execution_count": 15,
"metadata": {},
"output_type": "execute_result"
},
{
"data": {
"image/png": "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\n",
"text/plain": [
""
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"# Create Figure (empty canvas)\n",
"fig = plt.figure()\n",
"\n",
"# Add set of axes to figure\n",
"axes = fig.add_axes([0.1, 0.1, 0.8, 0.8]) # left, bottom, width, height (range 0 to 1)\n",
"\n",
"# Plot on that set of axes\n",
"axes.plot(x, y, 'b')\n",
"axes.set_xlabel('Set X Label') # Notice the use of set_ to begin methods\n",
"axes.set_ylabel('Set y Label')\n",
"axes.set_title('Set Title')"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Code is a little more complicated, but the advantage is that we now have full control of where the plot axes are placed, and we can easily add more than one axis to the figure:"
]
},
{
"cell_type": "code",
"execution_count": 16,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"image/png": "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\nGGN8+n8k31hzMLs8rwAAAABJRU5ErkJggg==\n",
"text/plain": [
""
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"# Creates blank canvas\n",
"fig = plt.figure()\n",
"\n",
"axes1 = fig.add_axes([0.1, 0.1, 0.8, 0.8]) # main axes\n",
"axes2 = fig.add_axes([0.2, 0.5, 0.4, 0.3]) # inset axes\n",
"\n",
"# Larger Figure Axes 1\n",
"axes1.plot(x, y, 'b')\n",
"axes1.set_xlabel('X_label_axes2')\n",
"axes1.set_ylabel('Y_label_axes2')\n",
"axes1.set_title('Axes 2 Title')\n",
"\n",
"# Insert Figure Axes 2\n",
"axes2.plot(y, x, 'r')\n",
"axes2.set_xlabel('X_label_axes2')\n",
"axes2.set_ylabel('Y_label_axes2')\n",
"axes2.set_title('Axes 2 Title');"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## subplots()\n",
"\n",
"The plt.subplots() object will act as a more automatic axis manager.\n",
"\n",
"Basic use cases:"
]
},
{
"cell_type": "code",
"execution_count": 18,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"image/png": "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\nTgDzAAAAAElFTkSuQmCC\n",
"text/plain": [
""
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"# Use similar to plt.figure() except use tuple unpacking to grab fig and axes\n",
"fig, axes = plt.subplots()\n",
"\n",
"# Now use the axes object to add stuff to plot\n",
"axes.plot(x, y, 'r')\n",
"axes.set_xlabel('x')\n",
"axes.set_ylabel('y')\n",
"axes.set_title('title');"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Then you can specify the number of rows and columns when creating the subplots() object:"
]
},
{
"cell_type": "code",
"execution_count": 24,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"image/png": "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\nktQwS16SGvZ/GNp0aN6HtcEAAAAASUVORK5CYII=\n",
"text/plain": [
""
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"# Empty canvas of 1 by 2 subplots\n",
"fig, axes = plt.subplots(nrows=1, ncols=2)"
]
},
{
"cell_type": "code",
"execution_count": 25,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"text/plain": [
"array([,\n",
" ], dtype=object)"
]
},
"execution_count": 25,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"# Axes is an array of axes to plot on\n",
"axes"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"We can iterate through this array:"
]
},
{
"cell_type": "code",
"execution_count": 28,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"image/png": "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\nQE8AAAAASUVORK5CYII=\n",
"text/plain": [
""
]
},
"execution_count": 28,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"for ax in axes:\n",
" ax.plot(x, y, 'b')\n",
" ax.set_xlabel('x')\n",
" ax.set_ylabel('y')\n",
" ax.set_title('title')\n",
"\n",
"# Display the figure object \n",
"fig"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"A common issue with matplolib is overlapping subplots or figures. We ca use **fig.tight_layout()** or **plt.tight_layout()** method, which automatically adjusts the positions of the axes on the figure canvas so that there is no overlapping content:"
]
},
{
"cell_type": "code",
"execution_count": 32,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"image/png": "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\nRGRY/w/09Pct8weipgAAAABJRU5ErkJggg==\n",
"text/plain": [
""
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"fig, axes = plt.subplots(nrows=1, ncols=2)\n",
"\n",
"for ax in axes:\n",
" ax.plot(x, y, 'g')\n",
" ax.set_xlabel('x')\n",
" ax.set_ylabel('y')\n",
" ax.set_title('title')\n",
"\n",
"fig \n",
"plt.tight_layout()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"### Figure size, aspect ratio and DPI"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Matplotlib allows the aspect ratio, DPI and figure size to be specified when the Figure object is created. You can use the `figsize` and `dpi` keyword arguments. \n",
"* `figsize` is a tuple of the width and height of the figure in inches\n",
"* `dpi` is the dots-per-inch (pixel per inch). \n",
"\n",
"For example:"
]
},
{
"cell_type": "code",
"execution_count": 33,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"text/plain": [
""
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"fig = plt.figure(figsize=(8,4), dpi=100)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"The same arguments can also be passed to layout managers, such as the `subplots` function:"
]
},
{
"cell_type": "code",
"execution_count": 34,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"image/png": "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\n",
"text/plain": [
""
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"fig, axes = plt.subplots(figsize=(12,3))\n",
"\n",
"axes.plot(x, y, 'r')\n",
"axes.set_xlabel('x')\n",
"axes.set_ylabel('y')\n",
"axes.set_title('title');"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Saving figures\n",
"Matplotlib can generate high-quality output in a number formats, including PNG, JPG, EPS, SVG, PGF and PDF. "
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"To save a figure to a file we can use the `savefig` method in the `Figure` class:"
]
},
{
"cell_type": "code",
"execution_count": 68,
"metadata": {
"collapsed": false
},
"outputs": [],
"source": [
"fig.savefig(\"filename.png\")"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Here we can also optionally specify the DPI and choose between different output formats:"
]
},
{
"cell_type": "code",
"execution_count": 69,
"metadata": {
"collapsed": false
},
"outputs": [],
"source": [
"fig.savefig(\"filename.png\", dpi=200)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"____\n",
"## Legends, labels and titles"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Now that we have covered the basics of how to create a figure canvas and add axes instances to the canvas, let's look at how decorate a figure with titles, axis labels, and legends."
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"**Figure titles**\n",
"\n",
"A title can be added to each axis instance in a figure. To set the title, use the `set_title` method in the axes instance:"
]
},
{
"cell_type": "code",
"execution_count": 41,
"metadata": {
"collapsed": false
},
"outputs": [],
"source": [
"ax.set_title(\"title\");"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"**Axis labels**\n",
"\n",
"Similarly, with the methods `set_xlabel` and `set_ylabel`, we can set the labels of the X and Y axes:"
]
},
{
"cell_type": "code",
"execution_count": 42,
"metadata": {
"collapsed": false
},
"outputs": [],
"source": [
"ax.set_xlabel(\"x\")\n",
"ax.set_ylabel(\"y\");"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"### Legends"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"You can use the **label=\"label text\"** keyword argument when plots or other objects are added to the figure, and then using the **legend** method without arguments to add the legend to the figure: "
]
},
{
"cell_type": "code",
"execution_count": 48,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"text/plain": [
""
]
},
"execution_count": 48,
"metadata": {},
"output_type": "execute_result"
},
{
"data": {
"image/png": "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\nEswY6zgTAAAAAElFTkSuQmCC\n",
"text/plain": [
""
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"fig = plt.figure()\n",
"\n",
"ax = fig.add_axes([0,0,1,1])\n",
"\n",
"ax.plot(x, x**2, label=\"x**2\")\n",
"ax.plot(x, x**3, label=\"x**3\")\n",
"ax.legend()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Notice how are legend overlaps some of the actual plot!\n",
"\n",
"The **legend** function takes an optional keyword argument **loc** that can be used to specify where in the figure the legend is to be drawn. The allowed values of **loc** are numerical codes for the various places the legend can be drawn. See the [documentation page](http://matplotlib.org/users/legend_guide.html#legend-location) for details. Some of the most common **loc** values are:"
]
},
{
"cell_type": "code",
"execution_count": 52,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"image/png": "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\n",
"text/plain": [
""
]
},
"execution_count": 52,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"# Lots of options....\n",
"\n",
"ax.legend(loc=1) # upper right corner\n",
"ax.legend(loc=2) # upper left corner\n",
"ax.legend(loc=3) # lower left corner\n",
"ax.legend(loc=4) # lower right corner\n",
"\n",
"# .. many more options are available\n",
"\n",
"# Most common to choose\n",
"ax.legend(loc=0) # let matplotlib decide the optimal location\n",
"fig"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Setting colors, linewidths, linetypes\n",
"\n",
"Matplotlib gives you *a lot* of options for customizing colors, linewidths, and linetypes. \n",
"\n",
"There is the basic MATLAB like syntax (which I would suggest you avoid using for more clairty sake:"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"### Colors with MatLab like syntax"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"With matplotlib, we can define the colors of lines and other graphical elements in a number of ways. First of all, we can use the MATLAB-like syntax where `'b'` means blue, `'g'` means green, etc. The MATLAB API for selecting line styles are also supported: where, for example, 'b.-' means a blue line with dots:"
]
},
{
"cell_type": "code",
"execution_count": 54,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"text/plain": [
"[]"
]
},
"execution_count": 54,
"metadata": {},
"output_type": "execute_result"
},
{
"data": {
"image/png": "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\n",
"text/plain": [
""
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"# MATLAB style line color and style \n",
"fig, ax = plt.subplots()\n",
"ax.plot(x, x**2, 'b.-') # blue line with dots\n",
"ax.plot(x, x**3, 'g--') # green dashed line"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"### Colors with the color= parameter"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"We can also define colors by their names or RGB hex codes and optionally provide an alpha value using the `color` and `alpha` keyword arguments. Alpha indicates opacity."
]
},
{
"cell_type": "code",
"execution_count": 56,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"text/plain": [
"[]"
]
},
"execution_count": 56,
"metadata": {},
"output_type": "execute_result"
},
{
"data": {
"image/png": "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\n",
"text/plain": [
""
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"fig, ax = plt.subplots()\n",
"\n",
"ax.plot(x, x+1, color=\"blue\", alpha=0.5) # half-transparant\n",
"ax.plot(x, x+2, color=\"#8B008B\") # RGB hex code\n",
"ax.plot(x, x+3, color=\"#FF8C00\") # RGB hex code "
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"### Line and marker styles"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"To change the line width, we can use the `linewidth` or `lw` keyword argument. The line style can be selected using the `linestyle` or `ls` keyword arguments:"
]
},
{
"cell_type": "code",
"execution_count": 57,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"image/png": "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\nAElFTkSuQmCC\n",
"text/plain": [
""
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"fig, ax = plt.subplots(figsize=(12,6))\n",
"\n",
"ax.plot(x, x+1, color=\"red\", linewidth=0.25)\n",
"ax.plot(x, x+2, color=\"red\", linewidth=0.50)\n",
"ax.plot(x, x+3, color=\"red\", linewidth=1.00)\n",
"ax.plot(x, x+4, color=\"red\", linewidth=2.00)\n",
"\n",
"# possible linestype options ‘-‘, ‘–’, ‘-.’, ‘:’, ‘steps’\n",
"ax.plot(x, x+5, color=\"green\", lw=3, linestyle='-')\n",
"ax.plot(x, x+6, color=\"green\", lw=3, ls='-.')\n",
"ax.plot(x, x+7, color=\"green\", lw=3, ls=':')\n",
"\n",
"# custom dash\n",
"line, = ax.plot(x, x+8, color=\"black\", lw=1.50)\n",
"line.set_dashes([5, 10, 15, 10]) # format: line length, space length, ...\n",
"\n",
"# possible marker symbols: marker = '+', 'o', '*', 's', ',', '.', '1', '2', '3', '4', ...\n",
"ax.plot(x, x+ 9, color=\"blue\", lw=3, ls='-', marker='+')\n",
"ax.plot(x, x+10, color=\"blue\", lw=3, ls='--', marker='o')\n",
"ax.plot(x, x+11, color=\"blue\", lw=3, ls='-', marker='s')\n",
"ax.plot(x, x+12, color=\"blue\", lw=3, ls='--', marker='1')\n",
"\n",
"# marker size and color\n",
"ax.plot(x, x+13, color=\"purple\", lw=1, ls='-', marker='o', markersize=2)\n",
"ax.plot(x, x+14, color=\"purple\", lw=1, ls='-', marker='o', markersize=4)\n",
"ax.plot(x, x+15, color=\"purple\", lw=1, ls='-', marker='o', markersize=8, markerfacecolor=\"red\")\n",
"ax.plot(x, x+16, color=\"purple\", lw=1, ls='-', marker='s', markersize=8, \n",
" markerfacecolor=\"yellow\", markeredgewidth=3, markeredgecolor=\"green\");"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"### Control over axis appearance"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"In this section we will look at controlling axis sizing properties in a matplotlib figure."
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Plot range"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"We can configure the ranges of the axes using the `set_ylim` and `set_xlim` methods in the axis object, or `axis('tight')` for automatically getting \"tightly fitted\" axes ranges:"
]
},
{
"cell_type": "code",
"execution_count": 58,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"image/png": "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\nM50TAAAAAElFTkSuQmCC\n",
"text/plain": [
""
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"fig, axes = plt.subplots(1, 3, figsize=(12, 4))\n",
"\n",
"axes[0].plot(x, x**2, x, x**3)\n",
"axes[0].set_title(\"default axes ranges\")\n",
"\n",
"axes[1].plot(x, x**2, x, x**3)\n",
"axes[1].axis('tight')\n",
"axes[1].set_title(\"tight axes\")\n",
"\n",
"axes[2].plot(x, x**2, x, x**3)\n",
"axes[2].set_ylim([0, 60])\n",
"axes[2].set_xlim([2, 5])\n",
"axes[2].set_title(\"custom axes range\");"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# Special Plot Types\n",
"\n",
"There are many specialized plots we can create, such as barplots, histograms, scatter plots, and much more. Most of these type of plots we will actually create using seaborn, a statistical plotting library for Python. But here are a few examples of these type of plots:"
]
},
{
"cell_type": "code",
"execution_count": 60,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"text/plain": [
""
]
},
"execution_count": 60,
"metadata": {},
"output_type": "execute_result"
},
{
"data": {
"image/png": "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\nYII=\n",
"text/plain": [
""
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"plt.scatter(x,y)"
]
},
{
"cell_type": "code",
"execution_count": 65,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"text/plain": [
"(array([ 14., 11., 9., 12., 6., 7., 13., 13., 6., 9.]),\n",
" array([ 28. , 123.5, 219. , 314.5, 410. , 505.5, 601. , 696.5,\n",
" 792. , 887.5, 983. ]),\n",
" )"
]
},
"execution_count": 65,
"metadata": {},
"output_type": "execute_result"
},
{
"data": {
"image/png": "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\n",
"text/plain": [
""
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"from random import sample\n",
"data = sample(range(1, 1000), 100)\n",
"plt.hist(data)"
]
},
{
"cell_type": "code",
"execution_count": 69,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"image/png": "iVBORw0KGgoAAAANSUhEUgAAAW8AAAEACAYAAAB8nvebAAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAADuFJREFUeJzt3X3MZGdZx/Hfr6zQ1kprbNJKN9nHlzRGEOqK2ICBE6Cx\n0Wj/UBNQQ4SkRI20QWKKLckzj38YhDSmvvxDoDQaidHSIBqQbqVnjS99kXZlpdu0Ce62FMHwappG\nYt3LP55pmT6d2Xlmzz1z7uuc7ycZ8jyzp2cu5uz89p77XOc+jggBAHI5p+8CAACrI7wBICHCGwAS\nIrwBICHCGwASIrwBIKEi4W37nbb/3fZnbf+57ReW2C8AYL7O4W37JZLeIelwRLxc0gFJb+q6XwDA\nYgcK7ecFkr7T9mlJ50v6YqH9AgDm6DzyjogvSrpZ0mOSnpD0jYi4q+t+AQCLlZg2uUjSNZIOSXqJ\npAts/1LX/QIAFisxbfJGSZ+PiK9Jku07JL1a0kdmN7LNIioAcBYiwnufK9Ft8pikK22fa9uS3iDp\nxIICBvvY3t7uvQYeHLsxPoZ+/BYpMed9n6TbJT0o6d8kWdIHuu4XALBYkW6TiNiRtFNiXwCA5bjC\nspCmafouAWeJY5fbWI+fzzSnUvSF7NjUawHAUNhWrOmEJQBgwwhvAEiI8AaAhAhvAEiI8AaAhAhv\nAEiI8AaAhAhvAEiI8AaAhAhvAEio1G3QAGAtdlea7maIS3MQ3gCqtix4bWmA2bwU0yYAkBDhDQAJ\nEd4AkBDhDQAJEd4AUtve7ruCfhS5k47tCyV9UNLLJJ2W9LaIuHfPNtxJBwBWtOhOOqVaBW+R9ImI\n+EXbBySdX2i/AIA5Oo+8bb9Y0oMR8QNLtmPkDQArWuc9LL9P0ldsf9j2A7Y/YPu8AvsFACxQIrwP\nSDos6U8i4rCkpyS9u8B+AQALlJjz/oKkxyPiX6e/3y7phnkbTiaTZ39umkZN0xR4eQBjNpnsPoai\nbVu1bbt0u1LdJkclXRsRj9jelnR+RNywZxvmvAEUN/S1TRbNeZcK71dot1XwOyR9XtJbI+Kbe7Yh\nvAEUR3ivvwDCG0BxYw1vrrAEgIQIbwBIiPAGkBprm6z7hZjzBoCVMecNAANCeANAQoQ3ACREeANA\nQoQ3gNSGtK7JKug2AZAaV1gCANIgvAEgIcIbABIivAEgIcIbQGqsbbLuF6LbBABWRrcJAAwI4Q0A\nCRHeAJBQsfC2fY7tB2x/vNQ+AQDzlRx5Xy/poYL7A4Clxrq2SZHwtn1Q0k9L+mCJ/QHAfu3s9F1B\nP0qNvP9A0m9LGm0vYNu2fZcAYEQOdN2B7Z+R9OWIOGa7kfS8fsRnTGa+3zRNo6Zpur58Ndq2HdT/\nHwD9aNt2X4PBzhfp2P49Sb8i6WlJ50n6Lkl3RMRb9mw36It0JpPJc/5xArAZY10StvPIOyJulHTj\n9EVeJ+lde4N7qGb/hdyZmXgb2rcKAPXpHN5jtjekGXnXyV44k7eSIX9zzGysa5sUDe+IOCrpaMl9\nAl0tC92hf+0eurGOmbjCshCmSfIa68gNubGqIABUjFUFAWBACG8ASIjwBpDaWE9YMucNILWhdwsx\n5w0sMNaRG3Jj5I3RG/rIbeiGfvwYeQPAgBDehbAkLIBNIrwLIbyBfoz1ClnCG0BqYz3hzKqCHbAk\n7DCMdeSG3Og2KYSbMQBYB7pN1uzkyZN9lwBgRAhvAEiI8C5ka2ur7xKAURrrbCVz3h3sPWG5PT3z\nxQlLYHPGeoUl3SYdcA/LYZhMxjt6Q16dp01sH7T9adufs33c9nUlCgM2ZabLE0ijxMj7aUm/FRHH\nbF8g6TO274yIhwvsOw2mSQBsUvE5b9sfk/RHEfH3e54f3Jw3hmHoc6ZDN/Tjt5E+b9tbkq6QdG/J\n/QIYpq2t3fDt8pC67yNjs1ixE5bTKZPbJV0fEU/O22b2hF6mjgw/8zekI755AM916lQdo+ZCH/Ei\nZrvYzqTItIntA5L+VtInI+KWBdswbYIq0W3Sn1qmPGqpY551T5vcKumhRcE9Bnz48+LYIaPOI2/b\nr5H0D5KOS4rp48aI+Ls92w165F3zv9xArWr53NRSxzyLRt5cYVlIzQcfqFUtn5ta6piHVQUBYEAI\nbwBIiPDG6HHCEhkR3oVwK628WNsEGXHCEqNX88mqoavlva+ljnk4YQkAA0J4A0BChDcAJER4I72u\nK9NJ41yVDrkR3oXQbtafZ1am6/Nx6lTf7wLGhm6TQmo+Wz10Nbz3NdSQUS3vWy11zEO3CQAMCOEN\nAAkR3gCQEOENAAkR3qrjJqi0mgFYBd0mquNMcw01ZFXDe1dDDRnV8r7VUsc8dJsAwIAQ3gCQUJHw\ntn217YdtP2L7hhL7BAAs1jm8bZ8j6Y8l/ZSkl0p6s+0f6rpfAMBiJUber5L0aEScioj/lfQXkq4p\nsF8AwAIlwvsySY/P/P6F6XMAgDU5sMkXm8wsvdc0jZqm2eTLLxSy9LxGnE3X8O3/BTBebduqbdul\n23Xu87Z9paRJRFw9/f3dkiIifn/PdvR5V15DVjW8dzXUkJJ7HjXNqvQALurzLjHyvl/SD9o+JOk/\nJb1J0psL7BfAwFlRRWba+b73dg7viPg/278p6U7tzqF/KCJOdK4M2CemvTBGXB6vOr7y1lBDVjW8\ndzXUkFEt71stdczD5fEAMCCENwAkRHgDQEIb7fOu1aFD/XcsHTrU7+sDyIUTloXUfMJj6Gp472uo\nIaNa3rda6piHE5YAMCCENwAkRHgDQEKENwAkRHgXsr3ddwUAxoRuE6S3tSWdOtVvDYcOSSdP9ltD\nRrV0edRSxzyLuk0Ib4xezR/coavlva+ljnloFQSAASG8ASAhwhsAEiK8C5m5PScArB3hXcjOTt8V\n4GzR5omM6DYppOaz1UCtavnc1FLHPHSbAMCAdApv2++zfcL2Mdsftf3iUoUBABbrOvK+U9JLI+IK\nSY9K+p3uJQEAlukU3hFxV0Scnv56j6SD3UvKiZNeADap5Jz32yR9suD+qmF76WNnZ/k2qBNtnsho\nabeJ7SOSLpl9SlJIuiki/ma6zU2SDkfEz59hP7E9MzxtmkZN05x95UAhNXcaDF0t730tdUhS27Zq\n2/bZ33d2dtazMJXtX5V0raTXR8S3zrDdoFsFkVdNH9yxqWFFSKnuVSHXsqqg7asl3SzptRHx1SXb\nEt6oEuGd29CP37rC+1FJL5T0THDfExG/sWBbwhtVGvqHf+iGfvxYzxtYYOgf/qEb+vHjCktgAdo8\nkREjbwCpMfIGgITG+s2JkXchbdvStw6gOEbea3bbbbf1XQKAESG8CzlZa4c/gEE60HcBmc1exnr0\n6FFNpotkcOl/LpMJ65sgH0beGD1uYYeMOGFZSNM0z1lMBnkMvdVs6Ib+zYkTlmt27rnn9l0CMEpj\n/eZEeBdy6aWX9l0CgBEhvAvZ2trquwQAI0K3SQez3SY7M9/d6DbJZaxX6CE3TlgWMplMnm0VBLA5\nQz/hzAlLAIM01m9OjLwLYW0TAOvAzRgAICGmTQBgQAhvjB7nmZFRkWkT2++S9H5JF0fE1xZsw7QJ\nqjT0bgXktrZpE9sHJV0l6VTXfQHAqsb6zanzyNv2X0n6XUkfl/RjjLyRDSPv3IZ+/NYy8rb9c5Ie\nj4jjXfYDAFjN0svjbR+RdMnsU5JC0nsk3ajdKZPZP1to9gpELiEHgOebXXbjTM562sT2yyTdJekp\n7Yb2QUlPSHpVRPzXnO2ZNkGVhr4e9NCNddqk2EU6tv9D0uGI+PqCPye8ARQ31vAuuapgaMm0CdAH\nu8xfSwYfdWJtk3W/ECNvAFgZl8cDwIAQ3gCQEOENAAkR3gCQEOENILWx9ujTbQIgtbH2eTPyBoCE\nCG8ASIjwBoCECG8ASIjwBpAaa5us+4XoNgGAldFtAgADQngDQEKENwAkRHgDQEKEN4DUWNtk3S9E\ntwmANWBtk7Pf8Ttsn7B93PZ7u+4PALBcpxsQ224k/aykH4mIp21fXKQqAMAZdR15/7qk90bE05IU\nEV/pXhIAYJmu4X25pNfavsf23bZfWaIoAMCZLZ02sX1E0iWzT0kKSe+Z/vffHRFX2v5xSX8p6fvX\nUSgAzDPWtU2WhndEXLXoz2z/mqQ7ptvdb/u07e+JiK/O234y09PTNI2aplm1XgB4jqG1CrZtq7Zt\nl27XqVXQ9tslXRYR27Yvl3QkIg4t2JZWQQBY0aJWwU7dJpI+LOlW28clfUvSWzruDwCwD1ykAwAV\nY0lYABgQwhtAakM7YblfTJsASI21TQAAaRDeAJAQ4Q0ACRHeAJAQ4Q0gtbGubUK3CQBUjG4TABgQ\nwhsAEiK8ASChrqsKAsBa2c+b7l3ZEM+3Ed4AqjbE4C2BaRMASIjwBoCECG8ASIjwBoCECG8ASKhT\neNt+he1/sf2g7ftsv7JUYQCAxbqOvN8naTsiflTStqT3dy8pp7Zt+y4BZ4ljl9tYj1/X8D4t6cLp\nzxdJeqLj/tIa61+gIeDY5TbW49f1Ip13SvqU7ZslWdKru5cEAFhmaXjbPiLpktmnJIWkmyS9UdL1\nEfEx278g6VZJV62jUADAt3Vaz9v2NyLiopnfvxkRFy7YlmtcAeAszFvPu+u0yRO2XxcRR22/QdIj\nq7w4AODsdA3vayX9oe0XSPofSW/vXhIAYJmN3QYNAFAOV1h2ZPtDtr9s+7N914LV2D5o+9O2P2f7\nuO3r+q4J+2P7RbbvnV4geNz26G5DzMi7I9s/KelJSX8aES/vux7sn+1LJV0aEcdsXyDpM5KuiYiH\ney4N+2D7/Ih4ajpt+0+SrouI+/qua1MYeXcUEf8o6et914HVRcSXIuLY9OcnJZ2QdFm/VWG/IuKp\n6Y8v0u75u1GNRAlvQJLtLUlXSLq330qwX7bPsf2gpC9JOhIR9/dd0yYR3hi96ZTJ7dq94OzJvuvB\n/kTE6em6Sgcl/YTtH+67pk0ivDFqtg9oN7j/LCL+uu96sLqI+G9Jd0u6uu9aNonwLsPTB/K5VdJD\nEXFL34Vg/2xfbPvC6c/naXdZjlGdaCa8O7L9EUn/LOly24/ZfmvfNWF/bL9G0i9Lev205ewB26Ma\nvSX2vZLutn1Mu+cpPhURn+i5po2iVRAAEmLkDQAJEd4AkBDhDQAJEd4AkBDhDQAJEd4AkBDhDQAJ\nEd4AkND/A3l3rO9C5RPQAAAAAElFTkSuQmCC\n",
"text/plain": [
""
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"data = [np.random.normal(0, std, 100) for std in range(1, 4)]\n",
"\n",
"# rectangular box plot\n",
"plt.boxplot(data,vert=True,patch_artist=True); "
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Further reading"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"* http://www.matplotlib.org - The project web page for matplotlib.\n",
"* https://github.com/matplotlib/matplotlib - The source code for matplotlib.\n",
"* http://matplotlib.org/gallery.html - A large gallery showcaseing various types of plots matplotlib can create. Highly recommended! \n",
"* http://www.loria.fr/~rougier/teaching/matplotlib - A good matplotlib tutorial.\n",
"* http://scipy-lectures.github.io/matplotlib/matplotlib.html - Another good matplotlib reference.\n"
]
}
],
"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.5.1"
}
},
"nbformat": 4,
"nbformat_minor": 0
}