{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# Basic exercises for using matplotlib\n", "\n", "by B. H. K. Yung\n", "\n", "*Workshop on: \"Python and astro-statistics\",\n", "Institute of Physics NCU, ToruĊ„
\n", "27-30 June, 2016*\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Question 1\n", "Plot the given fake H$_{2}$O maser VLBI map data (data\\_VLBI-map.dat). There are four columns in the file. Columns 1 and 2 give the offset positions (R.A. offset and Dec. offset) of the maser features with respect to an arbitrary point in milliarseconds (mas). Columns 3 and 4 give the local-standard-of-rest velocity, $V_{\\rm LSR}$, in km s$^{-1}$, and the peak flux in Jy, for each maser feature. The sizes of the markers plotted are to be proportional to the fluxes.\n", "\n", "Hints: \n", "In addition to the common commands, you may wish to look up for the following functions or keywords.\n", "- scatter(), cmap\n", "- colorbar(), set\\_label()\n", "- set\\_xlabel(), set\\_ylabel()\n", "- tick\\_params()\n", "- minorticks\\_on()" ] }, { "cell_type": "code", "execution_count": 1, "metadata": { "collapsed": true }, "outputs": [], "source": [ "### Importing libraries\n", "%matplotlib inline\n", "import matplotlib.pyplot as plt\n", "import numpy as np" ] }, { "cell_type": "code", "execution_count": 2, "metadata": { "collapsed": false }, "outputs": [], "source": [ "### Read the data file (assuming the data file is in the current directory) and store data in different lists\n", "### \"unpack=True\" is needed for storing data in corresponding lists as show below\n", "### \"skiprows=2\" is used for skipping to the two header lines of our data file\n", "RA_off, Dec_off, Vlsr, Flux = np.loadtxt('data_VLBI-map.dat', delimiter='|', usecols=(0,1,2,3), unpack=True, skiprows=2)" ] }, { "cell_type": "code", "execution_count": 3, "metadata": { "collapsed": true }, "outputs": [], "source": [ "### This cell does the same as the above, but in a more primitive manner which does not involve numpy's functions\n", "###\n", "### Read the data file (assuming the data file is in the current directory)\n", "#f = open('data_VLBI-map.dat').readlines()\n", "\n", "### Store data in corresponding lists\n", "#RA_off = []\n", "#Dec_off = []\n", "#Vlsr = []\n", "#Flux = []\n", "#for line in f:\n", "# if line[0] != '#': ## <-- To skip the comment lines of the file\n", "# RA_off.append(float(line.split('|')[0])) ## <-- Here the delimiter is '|', if no arg then it means any space\n", "# Dec_off.append(float(line.split('|')[1]))\n", "# Vlsr.append(float(line.split('|')[2]))\n", "# Flux.append(float(line.split('|')[3]))" ] }, { "cell_type": "code", "execution_count": 4, "metadata": { "collapsed": false, "scrolled": false }, "outputs": [ { "data": { "image/png": "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\nrkJggg==\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "### Plotting\n", "fig, ax = plt.subplots(figsize=(6,6))\n", "map = ax.scatter(RA_off, Dec_off, c=Vlsr, cmap='jet', vmin=min(Vlsr), vmax=max(Vlsr), edgecolor='none', s=np.multiply(30, Flux))\n", "\n", "### Colourbar settings\n", "cbar = fig.colorbar(map)\n", "cbar.set_label(label=r'$V_{\\rm LSR}$ (km s$^{-1}$)', size=12)\n", "cbar.ax.tick_params(labelsize=10)\n", "\n", "### Axis settings\n", "ax.set_xlabel('R.A. offset (mas)', fontsize=12)\n", "ax.set_ylabel('Dec. offset (mas)', fontsize=12)\n", "ax.axis([75, -50, -35, 115], 'equal') ## <-- Note that the R.A. axis is reversed\n", "ax.tick_params(which='major', length=8, width=1, labelsize=10)\n", "ax.tick_params(which='minor', length=4, width=1)\n", "ax.minorticks_on()\n", "\n", "### Save the plot\n", "fig.savefig('fig_VLBI-map.eps')" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Question 2\n", "Plot the given real baseline-subtracted spectra of OH maser (in 1612 and 1665 MHz) in three different ways. The two columns of the file give the $V_{\\rm LSR}$ and flux in Jy for each spectral channel." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "(a) Plot the 1612 MHz spectrum only (data\\_1612-spec.dat). The baseline root-mean-square (rms) noise of this spectrum is 0.01 Jy. Indicate the blue- and red- shifted peaks with the corresponding colours, and the rest of the spectral curve in black. For simplicity, consider the following conditions for this particular scenario.\n", "- Only the line features with fluxes larger than or equal to 3 times the rms (i.e. 3$\\sigma$) are real emission features which require shading in blue or red.\n", "- The systemic velocity of the object is found to be 4 km s$^{-1}$, so the line features with $V_{\\rm LSR}$ < 4 km s$^{-1}$ are considered as blue-shifted, while those with $V_{\\rm LSR}$ > 4 km s$^{-1}$ are red-shifted.\n", "\n", "Hints: You may have to use the **if** and **else** statements and the text() function." ] }, { "cell_type": "code", "execution_count": 5, "metadata": { "collapsed": true }, "outputs": [], "source": [ "### Read the 1612 MHz data file\n", "f_1612 = open('data_1612-spec.dat').readlines()\n", "\n", "### Store data in corresponding lists\n", "Vel_1612 = []\n", "Flux_1612 = []\n", "for line in f_1612:\n", " Vel_1612.append(float(line.split()[0])) ## <-- Here the delimiter is a space character\n", " Flux_1612.append(float(line.split()[1]))" ] }, { "cell_type": "code", "execution_count": 6, "metadata": { "collapsed": false }, "outputs": [ { "data": { "image/png": "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\n57Ng7lwqqqqwO50Jegfxc//997Nnz56Y35jt7OzklVdeoaSkhFWrVmG3n9zM1tzcTF1dHUuWLCE3\nNzemsYwlEAjwzjvv8Oqrr/Laa6+xc+dOqqqqWLFiBStXrmTt2rWUl5ePuG13dzfZ2dnYbKf2o0m6\nRP+LX/yCZcuWsXjxYrKGfYUNBAK0t7dz/Phxmpub8fl85OXlkZ+fj8vloq+vj5aWFlpaWmhsbGT7\n9u1s27aN/fv3M3/+fKqqqpg7dy5z587F7Xazbds2tm3bhjEGm81GV1cXwWAQh8NBWVkZa9asYfXq\n1VRWVuLxeOjv76evr4+GhgYOHDhATU0NBw8eZMaMGSxbtoxly5bhcrl47rnn2L59O+effz7r1q2j\nsrKSyspKKioq6Onp4ciRIxw+fJi6ujrefvttduzYgdvtJjc3l0AgwHnnncd5552H1+tly5YtvPLK\nK7hcLoqKihARbDYbfX19HDhwgHnz5rF8+XKqqqpO6lc7MDCA1+vF6/XS19dHTU0N+/btY2BggAUL\nFjBnzhxmz57NrFmzWLx4Meeccw5FRdYY/apSR1NTE4sWLeLVV1+lsrLylAsov99PW1sbjY2NNDY2\n0tDQQG1tLfv372f//v3U1tZSVlbG0qVLWbp0KdXV1aSlvf+Nq66ujk2bNrF7927Wrl1LU1MTx48f\n59JLL2XdunXs2bOHl156ifr6eqqqqti/fz+zZ89m5cqVVFdXk5eXN5hDSktLBz8TTqeTo0ePsmvX\nLnbt2kV7ezvV1dWcdtppzJ8/n4qKilMSrjGGnTt38tprr9Hf34/P58Pn89He3k5tbS0HDx7k0KFD\nzJ07l3Xr1rFu3TqWL19OXV0d27dvZ8eOHWzdupUzzjiDG2+8kWuvvRYRYcOGDfz2t7/l1VdfJS0t\njTVr1nD22WezatUqSkpKKCwsZMGCBZZI9BE33YyzHwoLCykpKaGkpIT09HS6urro6urC7XaTlZVF\ncXExxcXFlJaWsnz5clavXs2ZZ56Jc5SrJ2MMx44dQ0TIy8sjMzMTYwzvvffe4B+Co0ePkpWVRWZm\nJpmZmZSXlw/+wqurq3G5XKfst729nWeffZa33npr8JvE4cOHyc3NpaKigoqKCubOncuZZ57JihUr\nBhP1oUOH2LJlC1u2bMHpdHLeeedx7rnnMmvWrFOO4fP52Lt3Lzt27ODo0aMYYwYfaWlppKen43Q6\n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\nSUVORK5CYII=\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "## Plotting\n", "## The easier way is to first plot the whole curve in black, and then cover the required regions with red and blue\n", "fig, ax = plt.subplots()\n", "ax.plot(Vel_1612, Flux_1612, c='k')\n", "\n", "## Axis settings\n", "ax.axis([-23, 28, -0.7, 4.5])\n", "ax.set_xlabel(r'V$_{\\rm LSR}$ (km s$^{-1}$)', fontsize=12)\n", "ax.set_ylabel('Flux (Jy)', fontsize=12)\n", "ax.tick_params(which='major', length=8, width=1, labelsize=11)\n", "ax.tick_params(which='minor', length=4, width=1)\n", "ax.minorticks_on()\n", "\n", "## If you wish you can run only the above part of the code to see how the spectrum looks.\n", "\n", "## Cover the peaks with corresponding red and blue curves\n", "## We create new lists to store the \"blue\" and \"red\" ranges of data for convenience sake (though not memory effective)\n", "rms = 0.01\n", "Vel_1612_blue = []\n", "Flux_1612_blue = []\n", "Vel_1612_red = []\n", "Flux_1612_red = []\n", "for i in range(len(Vel_1612)): ## <-- Same if you use len(Flux_1612)\n", " if Vel_1612[i] < 4 and Vel_1612[i] > -23 and Flux_1612[i] >= (5*rms):\n", " Vel_1612_blue.append(Vel_1612[i])\n", " Flux_1612_blue.append(Flux_1612[i])\n", " elif Vel_1612[i] > 4 and Vel_1612[i] < 28 and Flux_1612[i] >= (5*rms):\n", " Vel_1612_red.append(Vel_1612[i])\n", " Flux_1612_red.append(Flux_1612[i])\n", "\n", "ax.plot(Vel_1612_blue, Flux_1612_blue, c='b');\n", "ax.plot(Vel_1612_red, Flux_1612_red, c='r');\n", "\n", "## Add text, the numbers gives the (x,y) coordinates of the lower-left corner of the textbox\n", "ax.text(15, 3.9, '1612 MHz', size=13);\n", "\n", "### Save the plot\n", "fig.savefig('fig_1612-spec_coloured.eps')" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "(b) Plot the 1612 and 1665 MHz (data\\_1665-spec.dat) spectra in two subplots, with the 1612 MHz one above. The two spectra should share the velocity axis." ] }, { "cell_type": "code", "execution_count": 7, "metadata": { "collapsed": true }, "outputs": [], "source": [ "### Read the 1665 data file and store data in lists\n", "f_1665 = open('data_1665-spec.dat').readlines()\n", "\n", "Vel_1665 = []\n", "Flux_1665 = []\n", "for line in f_1665:\n", " Vel_1665.append(float(line.split()[0]))\n", " Flux_1665.append(float(line.split()[1]))" ] }, { "cell_type": "code", "execution_count": 8, "metadata": { "collapsed": false }, "outputs": [ { "data": { "image/png": "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\no0ePctlll3HFFVeQlJTEf//3f7Nnzx7+/d//nVtuuYWzzjqr2bFKS0t58sknee+995g3bx5XX311\nQBcJ1NbW8sEHH/Duu++yaNEiJk2axMMPP+zqrqZg5OXlMXv2bA4dOqSrpSIspgLDGJMEFANjrbV7\nz2xbCnxmrf1Ri30VGA6y1nLttdcyfvx4fvrTnzrdnKg4ffo0xcXFFBUVcfLkSc4999xW1cTmzZt5\n5JFHeOWVVxgzZgxXXHEFM2bM4OWXX2bp0qXMnTuXSy65hGXLlrFt2za+8Y1vMGfOHDIyMkhLSyM1\nNZXPPvuMnTt3snPnTj788EPWrl3LkCFD+MIXvsBVV13FzJkzHToDkaNuqeiItcDIAd631qY02XYv\ncLG19soW+0Y8MOrr6zl27BhpaWlh78cuKyvj1KlT9OnTJ6zHjZS6ujoOHTrE6tWrWbFiBW+99Rb9\n+vVjzZo1JCUlOd0816mpqeG9995rHE+YM2cOd911V7Muot27d7No0SI2btxIWVkZpaWllJeX079/\nf8aOHcvYsWM599xzmTFjhmf+nYTqgQceoLCwkP/+7/92uimuUlNTw/r169m1axc5OTnk5OSQkJAQ\n8vFiLTBmAM9bawc02fZN4OvW2i+02DesgVFZWcmGDRt4//332bx5M3v27GHfvn2kpqZSWVnJqFGj\nmDFjBlOnTsVaS1FREcXFxdTX1zN16lSmT59Oenp6q+Naazl8+DA7d+5kx44dbNq0iU2bNnHo0CG6\nd+/OxIkTmTdvHtdcc027Hwr19fXs3r2b9evXs379erp3786cOXOYNWsWycnJWGvJy8vj9ddfZ/36\n9dTU1GCtpb6+noyMDKZMmcIFF1zQ4T+40tJStm3b1vj45JNPOHDgAEeOHCErK4tp06Yxe/ZsLr30\nUoYNGxaWcy8SSreUtZb8/Hw++ugjPvnkEwYMGEBOTg6DBw9uNeegvr6eTZs28corr/Daa68xYMAA\nrrnmGr7yla+QmZlJdXU1q1ev5rXXXmPfvn1MnjyZCy64gClTppCRkRGJX7mV06dPs2/fPnbt2kVe\nXh4rV65kzZo1jBo1irFjx/Lhhx+ye/ducnJymDNnDrfddhsDBw5sdj7ef/99/vnPfzJ+/HhmzZpF\nv379mr1HrAVGWxXGfcDMtiqM9o71ta99jZkzZ3L06FGOHDnCqVOn6NWrF7169SIjI4PKykqOHTvG\n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\nAAAAAElFTkSuQmCC\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "## Plotting\n", "fig, axes = plt.subplots(2, sharex=True, figsize=(5.5,8)) ## <-- Axes is a list containing two subplot objects\n", "axes[0].plot(Vel_1612, Flux_1612, c='k')\n", "axes[1].plot(Vel_1665, Flux_1665, c='k')\n", "\n", "## Axis settings, note how the shared y-label could be made up using text()\n", "axes[0].axis([-23, 28, -0.7, 4.5])\n", "axes[1].axis([-23, 28, -0.06, 0.17]) ## <--- x-axis is shared, its newest change applies to both subplots\n", "axes[1].set_xlabel(r'V$_{\\rm LSR}$ (km s$^{-1}$)', fontsize=14)\n", "axes[1].text(-30.5, 0.195, 'Flux (Jy)', size=14, rotation=90)\n", "\n", "## Add text\n", "axes[0].text(15, 3.9, '1612 MHz', size=13);\n", "axes[1].text(15, 0.14, '1665 MHz', size=13);\n", "\n", "for ax in axes:\n", " ax.tick_params(which='major', length=8, width=1, labelsize=12)\n", " ax.tick_params(which='minor', length=4, width=1)\n", " ax.minorticks_on()\n", "\n", "## Optimize the separation between the subplots for better appearance\n", "fig.tight_layout()\n", "\n", "### Save the plot\n", "fig.savefig('fig_1612+1665-spec_two-panels.eps')" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "(c) Plot both the 1612 and 1665 MHz lines in one panel, but with different colours. The weaker 1665 MHz line is needed to be scale up by a certain factor (e.g., 20) for proper display." ] }, { "cell_type": "code", "execution_count": 9, "metadata": { "collapsed": false, "scrolled": true }, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "## Plotting\n", "factor = 20\n", "\n", "fig, ax = plt.subplots()\n", "ax.plot(Vel_1612, Flux_1612, c='r', label='1612 MHz')\n", "ax.plot(Vel_1665, np.multiply(Flux_1665, factor), c='b', ls='--', label='1665 MHz')\n", "\n", "## Axis settings\n", "ax.axis([-23, 28, -1.4, 5.4])\n", "ax.set_xlabel(r'V$_{\\rm LSR}$ (km s$^{-1}$)', fontsize=12)\n", "ax.set_ylabel('Flux (Jy)', fontsize=12)\n", "ax.tick_params(which='major', length=8, width=1, labelsize=11)\n", "ax.tick_params(which='minor', length=4, width=1)\n", "ax.minorticks_on()\n", "\n", "## Add legend\n", "ax.legend(numpoints=1, loc='upper right', fontsize=11);\n", "\n", "## Add text\n", "ax.text(20, 1, '(x'+str(factor)+')', color='b', size=13);\n", "\n", "### Save the plot\n", "fig.savefig('fig_1612+1665-spec_overlapped.eps')" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Question 3\n", "\n", "Plot the fake data and model curve (data\\_power2.dat) together with the error bars. Add a residual plot in another panel below. The model curve is assumed to be $y=x^{2}$. \n", "\n", "Hints: You may have to use the following functions.\n", "- GridSpec()\n", "- add_subplot()\n", "- errorbar()\n", "- set_xticklabels()\n", "- set_yticks()\n", "- set_title()" ] }, { "cell_type": "code", "execution_count": 10, "metadata": { "collapsed": true }, "outputs": [], "source": [ "### Read the data file\n", "f = open('data_power2.dat').readlines()\n", "\n", "### Store data in corresponding lists\n", "X = []\n", "Y = []\n", "Y_err = []\n", "for line in f:\n", " if line[0] != '#': ## <-- To skip the comment lines of the file\n", " X.append(float(line.split()[0])) ## <-- Here the delimiter is a \n", " Y.append(float(line.split()[1]))\n", " Y_err.append(float(line.split()[2]))" ] }, { "cell_type": "code", "execution_count": 11, "metadata": { "collapsed": false }, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAagAAAEaCAYAAABEsMO+AAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAIABJREFUeJzt3XecVPW9//HXhyYWQDRSBESUKipgBMG6RrBEA4YgCl4F\nUby/C94YiV0jEKJRVOxoNBYk0pSrEAmogAvCBcEC0kQgNKV4FSlSd+Hz+2POrsu6y5aZ2XNm9v18\nPOYxZ+aU73cOs/Ph283dERERiZoKYWdARESkIApQIiISSQpQIiISSQpQIiISSQpQIiISSQpQIiIS\nSQpQIhFhZq+a2Z+jmqaZrTazXyU7TyI5FKAkZZnZGjPbZWbbzGyLmc0ys/80Myvm+Q3N7ICZRf7v\nwMx6BXl9PN/7XYL3XwkrbyLJEvk/TJFDcOByd68BNAQeBu4CXi7m+RZco1gBLQJWAd3zBdTrgeUh\n5UckqRSgJNUZgLvvcPd3gauBXmZ2CoCZ/drMPgtKWWvNbGCec2cEz1vNbLuZnWVmJ5nZNDP7zsy+\nNbN/mFn1QhM3e9LM1gXXn29m5+bZN9DMxprZiOD6i8zsjDz725jZp8G5Y4CqRXzWTcAi4JLg/JrA\n2cDEfHnqbGaLg1LldDNrXtw0zewKM/vczH4ISqSnFZEnkaRRgJK04u7zga+B84K3fgSuC0pZlwP/\nz8w6B/vOD56ru3t1d/+YWMB7CKgDtADqA4MOkeQ84HSgJjAKeNPMquTZ/5vg/RrAP4HnAMysMvA2\nMAI4BngT+F1RHw94HegVvL4GeAfYl3OAmTUN0vs9cBwwGfinmVUqKk0za0Os9Nk32P83YGJwnkiZ\nU4CSdLSB2A8s7j7T3ZcE24uBMcAF+Y7PreJz91XuPs3ds939e+CJAo4nz/Gj3H2rux9w9yeAw4Bm\neQ6Z5e7veWzSy5HEghlAB6CSuz/t7vvdfTwwvxif7R3ggqBUdz2xgJVXd+Bdd5/u7vuBx4iVks4G\n2heRZl/gBXf/xGNGAnuD80TKnAKUpKN6wBaAoNpuelBdtxX4T+AXhZ1oZrXMbLSZfR0c/48ijr/d\nzJYGVWI/ANXzHb8pz/YuoGrQhlQX+Cbf5dYW9cHcfQ8wCbgfOMbd5+Q75Pi81wkC49fE7snxRaTZ\nEPhjUDW4Jfg89YPzRMqcApSkFTNrS+wH9aPgrTeIlTrqufvRxKqtckpMBU3l/xBwAGgZHP8fFNKJ\nImhvugPo5u413b0msL2w4/PZSCxo5HVCMc6DWElsQPCc3wZigSavBsQC00ZiAaewNNcDD7r7McGj\nprsf5e5ji5kvkYRSgJK0YGbVzOwKYDQw0t2XBruOAn5w9ywzawf0zHPa/xELRifnea8asXarHWZW\nj1gAKkw1IAv43syqmNkDwXuHzGrwPAfINrP/DtqHugLtiv6k4O4zgE7AswXsHgdcbmYXBte9HdgD\n/G+QZtYh0nyJWBtdOwAzOzLoZHJkcfIlkmgKUJLq/mlm24B1wD3E2lz65NnfDxgSHHM/kFsacPfd\nwIPA7KBKqx0wGPglsJVYp4bxh0j7veDxFbCaWBXe+iLy60HaWUBX4Abge+CqItI6+CLuH7r71gLe\n/4pYqe9ZYgH4cuA3QZvaIdN090+JtUM9a2Zbgs/VK+/li5s/kUSw4i5YaGYvA1cAm9399OC9msT+\n4BsCa4Du7r4t2HcPsR+KbOBWd38/4bkXEZG0VZIS1KsE4y/yuBuY6u7NgOnE/gdLMAalO7FuupcB\nw4s7ul9ERARKEKDcfRbwQ763uxAbU0HwfGWw3RkYE1QrrAFWUMz6dREREYi/DaqWu28GcPdNQK3g\n/XocXBf/DT/vsSQiIlKoSgm+XokbUc1MDa8iIuWAu5eoqSfeEtRmM6sNYGZ1gG+D978hNvYiR31+\nPkAwl7vrUczHwIEDQ89DKj10v3S/dK+i8SiNkgYo4+BBiBOB3sF2L2BCnvevCcaGNAIaE5uzTERE\npFiKXcVnZqOADOBYM1sHDCS2vMGbZtaH2JQp3QHcfamZjQOWEhvI2M9LG0JFRKRcKnaAcveehezq\nWMjxfwX+WppMSeEyMjLCzkJK0f0qGd2v4tO9Sr5iD9RNWgbMVLgSEYnD5nnz2Dx/fu527XaxUT21\n27bN3U6mvXv3Mnr0aHr16kVhQ17NDC9hJwkFKBGRNDKqZUt6LllSZumtWLGCa665hgYNGjB69GgO\nP/zwAo8rTYBKdDdzERFJIfGUvt544w3+8Ic/MGjQIPr161do6am0VIISEUkj8ZSginvuzp07ueWW\nW/ho+nQe6tmT5vXrFxncVIISEZGkWrhwIVdffTXt27dnwZIlHHXUUQCMGj6cTiNGFHF2yWi5DRER\nKZK789xzz9GxY0fuv/9+XnvttdzglCwqQYmIyCF9//339O3blzVr1jB79myaNm1aJumqBCUiIoX6\n8MMPad26NY0aNWLOnDllFpxAJSgRkUgIeyxTfllZWQwaNIhXX32VV155hUsvvbTM86AAJSISAbXb\ntcsNRMnocFASq1atomfPnhx77LF8/vnn1K5dO5R8qIpPRERy/eMf/6B9+/b07NmTSZMmhRacQCUo\nEREBtm3bxvBvvmHLQw8xdepUWrVqFXaWVIISESnvZs2aRevWrTmsQgU++eSTSAQnUIASESm3srKy\nuO+++7jqqqt4+umnubFuXY444oiws5VLAUpEpBxavnw5Z599NgsWLGDBggX85je/CTtLP6MAJSKS\nJrJ27jzouSDuzt/+9jfOPfdcbrjhBt59991QO0IcijpJiIikgaydO/nguusA+OC66+g0ciSVjzzy\noGO+/fZbbrzxRjZs2MDMmTNp0aJFGFktNpWgRETSwNYVK9i2ahUA21etYtvKlQftnzhxIq1ataJl\ny5bMmTPnZ8GpOKWvsqYAJSKSBo5u0oQaJ58MQPWTT6ZG48YAbN++nRtvvJE//OEPjBs3jocffpgq\nVaocdG7+0ldUgpQClIhIhJS2JFP5yCPpNHIkQG713syZM2nVqhUVK1Zk4cKFnHfeeQWeW1TpKywJ\nCVBmdpuZLTazL8zsDTOrYmY1zex9M1tuZu+ZWY1EpCUikq7iLcnktDntr1iR22+/nWuuuYZnnnmG\nF198kWrVqhV6XmGlr5LkO+9zosQdoMzseOC/gTPc/XRiHS96AHcDU929GTAduCfetERE0lkiSjJr\n9uyhbdu2rF69moULF3LFFVcUeU5Bpa/iSmb1YKKq+CoCR5pZJeBw4BugC5Az2+EI4MoEpSUikpbi\nKclkZ2fz4IMP8sjatdx555289dZbHHfcccU+PycolSQ4QXKrB+MOUO6+AXgcWEcsMG1z96lAbXff\nHByzCagVb1oiIumstCWZpUuX0qFDB2bMmMGQk07iuuuuw8ySmdVc8VYPHkrc46DM7GhipaWGwDbg\nTTO7FvB8h+Z/nWvQoEG52xkZGWRkZMSbLRGRlFSSksz+/fsZNmwYQ4cO5S9/+Qs333wzo089NdlZ\nPEhOUH2zXbuDgmpmZiaZmZlxXTsRA3U7Av929y0AZvY2cDaw2cxqu/tmM6sDfFvYBfIGKBERKdpX\nX31F7969Oeyww5g3bx6NGjUKLS8FBdX8hY3BgweX+LqJaINaB7Q3s6oWK1NeBCwFJgK9g2N6ARMS\nkJaISLl24MABnnrqKc4++2x69OjBtGnTQg1OyRR3Ccrd55nZW8DnQFbw/CJQDRhnZn2AtUD3eNMS\nESnPVq5cyY033kh2djZz5syhSZMmYWcpqRLSi8/dB7t7C3c/3d17uXuWu29x947u3szdL3b3rYlI\nS0SkvNm/fz9PPvkk7du3p0uXLsycOTPtgxNoslgRkUhbvnw5ffr0oWLFiuWi1JSXpjoSEYmg7Oxs\nhg4dyjnnnEOPHj3IzMwsV8EJVIISETnI5nnz2Dx/fu527XbtAKjdtm3udrJ9vWcPZ599NtWqVWP+\n/Plp2wmiKApQIiJ51G7XLjcQjRo+nE4jRhRxRuLs27ePoUOHMnTtWh676y769u1bZgNuo0hVfCIi\nETBv3jzOPPNM5syZw19OOombb765XAcnUAlKRCRUO3fu5E9/+hOjRo1i2LBh9OjRo8SzQeStljzu\nzDP54rnngLKtlkwGBSgRkZBMnTqVm2++mbPPPpvpr79O9ooVLBo+vMRBJm+1JP37JzvbZUYBSkSk\njG3ZsoU//vGPTJ8+nRdeeIHLLrsstuPii2PPZRhkolz6UoASESkj7s7YsWMZMGAA3bp1Y/HixYdc\nSLAsRLn0pQAlIlIGVq9eTb9+/fj6668ZP348HTp0CDtLkadefCIiBUjUMubZ2dk8+uijtG3blvPP\nP5/PPvtMwamYVIISEckn/zLmJV0GPcf8+fPp27cvxx13HB9//DEnBwv7SfEoQImI5FPQMua/aNWq\n2Ofv2LGD+++/n7Fjx/LYY49x7bXXpuWYpmR3sFCAEhHJJ2cZ863Ll5doGXN3Z/z48dx222107NiR\nJUuWcOyxxyY5t+FJdgcLcy90JfYyYWYedh5EJL0kYj69rJ07ebNdO66aN69Y1XurVq3illtuYd26\ndTz//POcf/75pf8AacjMcPcSFSMVoEQkrY1q2ZKeS5Yk7dy9e/fy6KOP8uSTT3LHHXdw2223UaVK\nlVKll85KE6BUxSciUkrTp0+nX79+NGvWjE8//ZSGDRuGnaW0ogAlIlJCmzZt4vbbb2fWrFk8/fTT\ndO7cOewspSWNgxIRKabs7GyefPJJTjvtNOrXr8+SJUsUnJJIJSgRSVt5B9uWZhxTXjNnzqR///7U\nqVOHjz76iObNm//smCgsdphOEtJJwsxqAH8HTgUOAH2Ar4CxQENgDdDd3bcVcK46SYhIwuUMtt26\nfDlHN2tWqsG2o1q25MKpU7njjjuYOXMmw4YN43e/+12xxjTF0zkjHZWmk0SiqvieAv7l7i2AVsCX\nwN3AVHdvBkwH7klQWiIiRSposG1JZGVl8a/vv+e0007jhBNOYNmyZXTr1i0tB9xGVdwBysyqA+e5\n+6sA7p4dlJS6ADlrJY8Arow3LRGR4soZbAuUaLAtwLRp02jTpg1f/Pgjs2fP5qGHHuLIOKsIpeTi\nruIzs1bAi8BSYqWnT4A/AN+4e808x21x92MKOF9VfCKSFCUdbLt69Wpu6dOHhYsW8ceuXWm5Zw91\nzjoLKHk7kqr4DhbWOKhKwBlAf3f/xMyeIFa9lz/qFBqFBg0alLudkZFBRkZGArIlIuVdTlAqKjjt\n3LmThx9+mOHDhzNgwADGT55M1apVyyKLaSszM5PMzMy4rpGIElRtYI67nxS8PpdYgDoZyHD3zWZW\nB/gwaKPKf75KUCKSNIcqyeQsIHjnnXdy7rnnMnToUOrXr5/0dMujUEpQQQBab2ZN3f0r4CJgSfDo\nDTwC9AImxJuWiEiifP7559x6663s2LGDN954g/POOy/sLEk+iRoH9XvgDTOrDPwbuAGoCIwzsz7A\nWqB7gtISESm1jRs3cv/99zNp0iQGDx7MTTfdRMWKFcPOlhQgIQHK3RcCbQvY1TER1xcRidfu3bt5\n4oknGDZsGH369GH58uXUqFEj7GzJIWgmCRFJO3lndPjFL3/J0D59eGrCBNqcfrpWtk0hClAiknZy\nFtKbP38+g0eNYvfu3Yz6n//hggsuCDtrUgKaLFZE0s6aNWu49tprufLKK7npppuYP3++glMKUoAS\nkbSxdetW7rzzTn75y1/StGlTli9fzg033KBOEClKVXwiEjklnRV83759PP/88zz44INceeWVLF68\nmLp165ZpnvNK5Czq5ZmWfBeRSCtqoO348eO5++67adasGUOHDqVly5ZlnMODJWIW9XSkJd9F0pTW\nGfq5mTNnctddd7Fnzx5eeOEFOnaMxqiWgmZR/0WrViHnKjUpQImkgJxeaQCjhg+n04gRRZyRvhYt\nWsQ999zDkiVL+Mtf/kKPHj2oUCE6zek5s6hvXb68xLOoy8EUoETKSCqWgqKU57Vr1zJw4EAmT57M\nvffey/jx4znssMPKNA/FUfnII+k0ciRvtmun6r04qQ1KJATxTCQa1iSkJU03UcHtb82a8dUVV/Da\na6/Rr18/br/99pSYAUKTxR5MbVAiEhnxVkvu2LGDp556ikdWreK63btD75knZS86FbciIsCePXt4\n8sknadKkCUuXLmXwiScyfPhwBadySAFKRCIhKyuLl156iSZNmvDhhx/y/vvvM2rUKOpEsJ1Jyoaq\n+EQkVAcOHGDcuHE88MADNGjQgDfffJP27duHnS2JAAUokRSSTjMUuDvvvPMOAwcO5IgjjuD555/n\noosuCjtbEiEKUCIpImeGAoAPrrsuZbswuzvvvvsuAwcOBOChhx7i8ssvx6xEHbykHFCAEkkRqT5D\ngbszZcoUHnjgAfbt28fgwYPp0qWLApMUSgFKJEWk6gwF+378kUU//sjT7duz48cfGTx4MF27do3U\n7A8STfqGiKSInBkKgJSo3nN3Jk2YQOuGDRmxaRMXuPPpnDl069ZNwUmKJWElKDOrAHwCfO3unc2s\nJjAWaAisAbq7+7ZEpSdSHuUEpSgHJ3fnX//6F3/+85/Z9t13dDrqKM6qXZtKe/fy4+rVVE2hakkJ\nVyL/G3MrsDTP67uBqe7eDJgO3JPAtERSVt6eeOnE3ZkwYQJnnnkm99xzD7fffjsLFyzgsl/+kgpm\nKVUtKdGQkBKUmdUHfg08CAwI3u4C5KyxPALIJBa0RFJWvPPLpWpPvEN1bz9w4ABvv/02Q4YMwcx4\n4IEH6NKlS241XnmaODXv9+O4M8/ki+eeA6I9IXCUJaqK7wngDiDvDI613X0zgLtvMrNaCUpLJDTx\nzi+Xij3xCguqWVlZjB49mr/+9a9Uq1aNIUOGcMUVV/ysV14qVEsmSt7vB/37h5uZNBB3gDKzy4HN\n7r7AzDIOcaimLJdyLxV74uUPqpuXLGHiJ58wdOhQTjrpJJ599ll+9atfJaW7eDoNTJaSS0QJ6hyg\ns5n9GjgcqGZmI4FNZlbb3TebWR3g28IuMGjQoNztjIwMMjIyEpAtkehJxbWCcoLqxqVL+V8zBnTp\nwplt2zJ69Gg6dOiQtHRTtTpUYjIzM8nMzIzrGnEHKHe/F7gXwMwuAP7o7teZ2VCgN/AI0AuYUNg1\n8gYokXRXmiqvMNs2fti5k9lNm/LMxIn8umtXptx/P6effnpS04TUrA6Vn+QvbAwePLjE10jmQN2H\ngXFm1gdYC3RPYloiaS2Mto1Vq1YxbNgwRo8eTffu3Rl04okMGDeuTNKG1KwOlcRK6Gg5d5/h7p2D\n7S3u3tHdm7n7xe6+NZFpiUhyfPrpp1x99dW0b9+emjVrsmzZMl544YUyX/Yi1QYmS+JpqiMRwd35\n4IMPeOSRR/jqq68YMGAAf//736lWrVqpr5mIasny1ANQfk4BSqQc27t3L6NGjWLYsGEA3HHHHfTo\n0YPKlSvHfW11uZZ4KUBJKOId8Crx+f7773n++ed57rnnaNWqFY8//jidOnXSzOISKQpQEop4B7xK\n6Xz11Vc88cQTjBkzhq5du/LBBx9w6qmnhp0tkQIpQImkuU0ff8zEf/yDUZmZLFi5kqszMhh/5520\nvOgiais4SYQpQImkqV27djFy5EiefvppKlSowO9//3t6DRvGDZMnh501kWLRoiwiaWbt2rXceeed\nnHDCCUyePJlnn32WL774gr59+3KY1mGSFKJvq0gacHc+/PBDunXrxhlnnMH+/fuZN28e77zzDhde\neKE6P0hKUhWfSArbvn07r7/+OsOHD8fM6N+/P6+99hpHHXVU2FkTiZsClEgplGaW7UTOp7d48WKG\nDx/OmDFj6NixI88//zznn3++SkqSVhSgREqotLNsxztwdd++fbz99tsMHz6cFStWcPPNN7N48WKO\nP/74El9LJBUoQImUUFnPsr1y5UpeeuklXnvtNVq2bEn//v357W9/m5DZHoqiFWIlTApQIiVUFrNs\n79u3jwkTJvDiiy+ycOFCrr/+ej766COaNm2a8LQORdMVSZgUoERKKJmLDq5atYqXX36ZV155hebN\nm3PzzTfTtWtXqlatGve1tTqtpBoFKCm18jyfXiJn2d69ezfjx4/n5ZdfZsmSJfzHf/wHmZmZNG/e\nPO5r59DqtJKKFKCk1BIxn155/V+9u/PZZ5/x8ssvM3bsWNq1a0f//v3p3LkzVapUSXh6Wp1WUpEG\n6kpo8v+vPidYpbPvvvuOZ555hjZt2tCtWzfq1q3LggULmDx5Mt26dUtKcIKf2s0ArU4rKUMBSkJT\n0P/q09G+fft45513+O1vf0vjxo2ZO3cujz/+OKtWreJPf/oTDRo0SHoetDqtpCJV8UloyqI3XFhy\nqvBGjBjBmDFjaN68Ob1792bEiBFUr149lDxpdVpJNQpQEppk9oYLy/r16xk1ahQjR45k165dXH/9\n9cydO5eTTjop7KylFI2/EkhAgDKz+sDrQG3gAPCSuz9tZjWBsUBDYA3Q3d23xZuepJd0+F/9Dz/8\n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\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "## Plotting\n", "fig = plt.figure() ## <-- Note that here we use figure(), and will add subplots later\n", "gs = plt.GridSpec(4,1)\n", "ax1 = fig.add_subplot(gs[:3, :])\n", "ax2 = fig.add_subplot(gs[3, :])\n", "\n", "## The data including error bars\n", "ax1.errorbar(X, Y, yerr=Y_err, fmt='.', c='brown');\n", "## The y=x^2 model curve\n", "X_m = np.arange(0, 10, 0.2)\n", "Y_m = X_m**2 ## <-- Some element-wise operations could be done as simple as this\n", "ax1.plot(X_m, Y_m, 'k',)\n", "\n", "## Residuels\n", "Y_res = np.subtract(Y, np.asarray(X)**2) ## <-- Turn \"normal\" list into numpy array\n", "ax2.plot(X, Y_res, '.', c='b')\n", "\n", "## Axis settings\n", "ax1.axis([0, 10, -20, 100]);\n", "ax1.set_xticklabels([]);\n", "ax1.set_title('Data and Model');\n", "ax2.axis([0, 10, -25, 25]);\n", "ax2.set_yticks([-20, 0, 20]);\n", "ax2.set_title('Residuals');\n", "\n", "## Add a y=0 line to the residuel plot for illustration purpose\n", "ax2.plot([0, 10], [0, 0], c='k', ls='--');\n", "\n", "## Better appearance\n", "fig.tight_layout()\n", "\n", "### Save the plot\n", "fig.savefig('fig_power2.eps')" ] } ], "metadata": { "kernelspec": { "display_name": "Python 2", "language": "python", "name": "python2" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 2 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython2", "version": "2.7.11" } }, "nbformat": 4, "nbformat_minor": 0 }