Skip to content

Instantly share code, notes, and snippets.

@laudb
Last active June 4, 2018 00:20
Show Gist options
  • Select an option

  • Save laudb/f99a27322068893493911edabf1baa28 to your computer and use it in GitHub Desktop.

Select an option

Save laudb/f99a27322068893493911edabf1baa28 to your computer and use it in GitHub Desktop.

Revisions

  1. laudb revised this gist Jun 4, 2018. 1 changed file with 4 additions and 4 deletions.
    8 changes: 4 additions & 4 deletions plotdata_no_save_2.ipynb
    Original file line number Diff line number Diff line change
    @@ -6,16 +6,16 @@
    "metadata": {},
    "outputs": [],
    "source": [
    "import io\n",
    "import matplotlib\n",
    "import matplotlib.pyplot as plt\n",
    "from IPython.display import Image"
    "import matplotlib.pyplot as plt"
    ]
    },
    {
    "cell_type": "code",
    "execution_count": 6,
    "metadata": {},
    "metadata": {
    "scrolled": true
    },
    "outputs": [
    {
    "data": {
  2. laudb revised this gist Jun 4, 2018. 2 changed files with 48 additions and 250 deletions.
    89 changes: 48 additions & 41 deletions plotdata_no_save_2.ipynb
    Original file line number Diff line number Diff line change
    @@ -2,12 +2,14 @@
    "cells": [
    {
    "cell_type": "code",
    "execution_count": 9,
    "execution_count": 40,
    "metadata": {},
    "outputs": [],
    "source": [
    "import io\n",
    "import matplotlib\n",
    "import matplotlib.pyplot as plt"
    "import matplotlib.pyplot as plt\n",
    "from IPython.display import Image"
    ]
    },
    {
    @@ -33,9 +35,16 @@
    "x = plt.show()"
    ]
    },
    {
    "cell_type": "markdown",
    "metadata": {},
    "source": [
    "### 1. plotdata returns an image ( saving to file )"
    ]
    },
    {
    "cell_type": "code",
    "execution_count": 19,
    "execution_count": 46,
    "metadata": {},
    "outputs": [],
    "source": [
    @@ -56,16 +65,16 @@
    " self.fname = fname\n",
    " \n",
    " \n",
    " def __repr__(self):\n",
    " def _repr_png_(self):\n",
    " plt.plot(self.row, self.column) # plot graph using row & column\n",
    " plt.savefig(self.fname+'.png')\n",
    " return \"%s.png\" % (self.fname)\n",
    " plt.savefig(self.fname+'.png') # save to a file appending filetype .png\n",
    " return open(self.fname+'.png', 'r').read() #open image from saved file\n",
    " \n"
    ]
    },
    {
    "cell_type": "code",
    "execution_count": 20,
    "execution_count": 47,
    "metadata": {},
    "outputs": [],
    "source": [
    @@ -74,28 +83,19 @@
    },
    {
    "cell_type": "code",
    "execution_count": 21,
    "execution_count": 48,
    "metadata": {},
    "outputs": [
    {
    "data": {
    "image/png": "iVBORw0KGgoAAAANSUhEUgAAAbAAAAEgCAYAAADVKCZpAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADl0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uIDIuMS4wLCBodHRwOi8vbWF0cGxvdGxpYi5vcmcvpW3flQAAIABJREFUeJzt3WdcFGf79vHfLCACCoiAYEVFI/aCJYnYW+wFe+/GBhqjd3o3xljAHmLsPcYWW4wdjcZgicYSK4oIUhRQOrvzvEj+Pre3DRSYHTi/r5SdnTk+o8yxMztzXYqqqipCCCGEzhi0DiCEEEK8DCkwIYQQuiQFJoQQQpekwIQQQuiSFJgQQghdkgITQgihS1JgQgghdEkKTAghhC5JgQkhhNAlKTAhhBC6JAUmhBBCl6TAhBBC6JIUmBBCCF2SAhNCCKFLUmBCCCF0SQpMCCGELkmBCSGE0CUpMCGEELokBSaEEEKXpMCEEELokhSYEEIIXZICE0IIoUtSYEIIIXRJCkwIIYQuSYEJIYTQJSkwIYQQuiQFJoQQQpekwIQQQuiSFJgQQghdkgITQgihS1JgQgghdEkKTAghhC5JgQkhhNAlKTAhhBC6ZKl1gJzi7OyMh4eH1jGEEEJXQkNDiYmJ0TpGpuTZAvPw8CAkJETrGEIIoSve3t5aR8g0uYQohBBCl6TAhBBC6JIUmBBCCF2SAhNCCKFLUmBCCCF0SQpMCCGELkmBCSFEHnEk+BADAuaxedsWraPkijz7HJgQQuR1SYmJBKxYxuE0O0JTipAcZ4miliVRCaeL1uFygRSYEELoSEjIcRYc+YO/cCU6rhBqigcAFnYqpdziqaVGM7lLfqgvKTAhhDB7M4MWsi/ZmhupRUmKs0QxlUO1gMKOaZQvEsNbRSwYNWCI1jFznRSYEEKYmfMXzjHnlwP8qbgQlWCPKak0AAZbKO6aQE2imdC2JRUremmcVFtSYEIIYQYWLP2BXQkq19OceXjfCsVUHtUAdo7plHWIpaVdBv7DRmod06xIgQkhhAauX7/GzK3bOW1w4W6CA8ZENwAUG3BzfUg1ohjXrCE1qtfSOKn5kgITQohcsnztKrZGJXEl3ZkH963B6ImqgI1jBhUd7tGkQDLj+g/E1s5O66i6IAUmhBA5JCIinG/Wb+Sk4kzEAwcyHhYBiqBYg7NzIlWVKEa+XovX67+pdVRdkgITQohstH7TBjaG3edyhjPx9wtCxj9nWQUdjJRzv0dDiwdMGjxEzrKygRSYEEK8gujoaKavWc0fFCU80ZH0BDvADgooODkl4mWIZkCVcrRu2U7rqHmOFJgQQmTRth1bWXPlDpdMLsTdt4X0CqiAtYOJ8u6xvK7EMXngAOwdHLWOmqdJgQkhxAskJSYy9YcfOKY6EpZUhNR4SxRKg5WCY5EkKhmi6VOhOB3bddI6ar4iBSaEEE+xf/9efjh7mYsmF+7F20FqeQCs7E2Udb9PXWKY3KcvLi4uGifNv6TAhBCCf86yZixdwhFjYW4mO5ESb4GilgFLcCiSTEXLGLoWd6R3955aRxX/kgITQuRbx34/StBvZ/gLF2Li7VBTygFgUUiltFscddQYpvT0xd29hMZJxdNIgQkh8o2kxETmrlzOwTQbbiQ7/Tv9iAdYQKEiaVQoEkNHZ2sG9x2gdVSRCVJgQog87c+zp5m7/wjncCUqvhBqchkALOyghFs8tUzRvNOpPeXKldc4qcgqKTAhRJ4TuDiIXxMtuJ5alMQ4q3+mHzFAoSLplHOMoXVhGDtkmNYxxSvSTYHNnj2bxYsXoygK1apVY+nSpRQsWFDrWEIIM3D58kVm7/yVM7hwN8EeU9I/31kZbMHdNYHqxODXqglVKlfTOKnITroosPDwcObMmcOFCxewsbGhR48erFu3jkGDBmkdTQihkaAVS9l5P4Orac48iCuAYvxn+hFbxwzKOsTSzDaVScPf1jqmyEG6KDCAjIwMkpOTsbKyIikpieLFi2sdSQiRi8Ju3WL6ps2cUVy488Ae40NXAJSC4Or8kGpKFKMb1sXbu4HGSUVu0UWBlShRgkmTJlG6dGlsbGxo1aoVrVq10jqWECKHXb58kfd3HebvdBcexFk/GhjXxjGDCu73aVQgEf8Bg2Rg3HxKFwV2//59tm7dyo0bN3B0dKR79+6sWrWKfv36PbZcUFAQQUFBwD8DbAoh9CkpMZG3v1/G4XgP1OSSYA3ORROprEQxpJYXTRo31zqiMAO6KLC9e/dStmzZR0O2dO3ald9+++2JAhsxYgQjRowAwNvbO9dzCiFe3efz5rImsTQp9z2wsIMWxa4xe8RQOcsST9BFgZUuXZrjx4+TlJSEjY0N+/btk4ISIo/ZtmMrX11OIfJuORRLharuEXzfow3u7jINiXg6XRRY/fr18fX1pXbt2lhaWlKrVq1HZ1pCCH0Lu3WLUZv3cj7aDdVoiZvbQz6oUJCO7YZqHU2YOUVVVVXrEDnB29ubkJAQrWMIIZ5jVMAcfn1QHmMiFCySQd9Ct/hozDitY+Vrejp26uIMTAiRt8z4fiFL49xIjC2PYgNNi4Uyf4TcTSiyRgpMCJFrDh7axwen73L7bmkUA7xWPJq5bepTsaJ8zyWyTgpMCJHjoqOjGblmM6diS6KmOeDsmsTEkhn07TFI62hCx6TAhBA5yj8gkO2J5cl4UIICDka6Fr3OND8/rWOJPEAKTAiRIxatWMLCaAfioz1RrKGB2y2WDB+ArV0HraOJPEIKTAiRrU6fPsmEwxe4cbcYAGXd7zHjzQp4e8v3XCJ7SYEJIbJFUmIiQ79fwfG40qgpTji6pPC2SzyjBgzROprIo6TAhBCv7L05gfyUWI60+NJYFlZp53iNQH/5nkvkLCkwIcRLW71hLbNuWxIT5YlSQKG2+22+69MFF5f2WkcT+YAUmBAiyy5fvsi43b/z910XVBOUcI/ny2quNGsmQ7yJ3CMFJoTItKTERMYELeNgggdqsgt2RdMY7BgpMx8LTUiBCSEy5Yv5c1n98J9pTgx20NLtOkH+Mm6h0I4UmBDiubbv3s6Xlx4ScbccigVUdr/Ld11aUKq03BYvtCUFJoR4qoiIcIZv2M1fMe6o6YUp5vaQ98pZ06Wj3BYvzIMUmBDiCaNnz+GXh+UxJrph7ZhBn0I3+WSsXC4U5kUKTAjxSMDi71h835WH/05z0sjtBouGD5ZpToRZkgL7H4tXLmf3vRQ2+o3UOooQueZI8CHeOxXOrciSYICK7jEEtKxNlcryPZcwX1Jg/+P7mILcvetM34AFrPYfrXUcIXJUQnwcg5dt4GRsSUhzwMk1GX/3FAb2Hqh1NCFeyKB1AHMT1LwiBRxMHIkqwzsBAVrHESLHTAgMpPa8YE5GlMCqoJEe7lc4PdGXgb37aR1NiEyRAvsfNarX4psqRiys4afYigQs/k7rSEJkq8Url1Nj5k9sjvAkI81AffcwTo7xYbqfv9bRhMgSKbCn6NKxM6OL3wJgzp2SbNuxVeNEQry6P8+eptmclXxx0Zm42IKUcb/P2raOrPcbhb2Do9bxhMgyKbBnmDT8bToXvYIxGSadVTh/4ZzWkYR4KUmJifQNWEDnTXe4fscJe6dU3vWM4JBfP16v/6bW8YR4aXITx3ME+PtxN2AhxyJL02fXZYJLlJJPqkJXPpwzhx8TPUiNL4NFIZW2bteYK9OciDxCzsBeYK3/21RwjyE+uiDtl+3QOo4QmbJ+0wa8Z29g5Z3ypCZZUtP9DsdH1pfyEnmKFFgmbB3mi3OxRG5FONI1MEjrOEI80/Xr12gTuIwpp+yIjrKjuFsC3zUysMVvOC4uLlrHEyJbSYFlgq2dHZu7NcCmSAYnI0swKmCO1pGEeExSYiJDAubSYtUlLkW4YGufzugyNznm35vWLdtoHU+IHCEFlkmlSpdmYYNCWNqp7I4pz2fz5modSQgApi6cT535e9kfWQ6AFm7XuTC5M1NGyYP4Im+TAsuCJo2bM6V0NFjAsphyLF+7SutIIh/b+csOGgSs5btbHiQnWFLZPYpDg6qxWOboEvmEFFgWjRgwmH5Fr2FKhy+uO3Ls96NaRxL5TEREOB0CFzP6iEJEpD2uronMqJPMTr/BlCpdWut4QuQaKbCX8OX48bR0uU76A4Whh6KJiAjXOpLIJ0YHzKHhD6c5F+GOtV0GA0pc448JPfDt4qt1NCFynRTYS1rsP44axSNIumdFp/VHSEpM1DqSyMMCFwdRbcYmdkaWx5Sh4OMWyulxzfli3HitowmhGSmwV7Bt/DBKuMUTFVmIrj9s0DqOyIOO/X6URoGrmXW9BAn3rCnvHsuWrsVZ6T9G5ugS+Z4U2CvaNbgthZ1TuXjHlf4B87WOI/KIhPg4ugd+R++d8dyKcMTJOZlPq8Syz28ANarX0jqeEGZBCuwV2Ts4sqpVWQrYmzgc5cGkgECtIwmdmxQQSJ35wfwRURIrayO+blc5PdGXwX0HaB1NCLMiBZYNalSvxddeqRisYWNsBQIXy2gdIuuWrl5BzVkb2RjpSXqqBXXdb3NyjA8zZPgnIZ5KNwUWFxeHr68vlSpVwsvLi2PHjmkd6TG+XXwZ7X4TgMA7Jdi+e7vGiYRe/Hn2NM0DV/Dp+aLcj7ahlHscq1rY8aPfSBk8Wojn0M1o9H5+frRp04aNGzeSlpZGUlKS1pGe8O6I0dwOCGTLXU/eOWOiYrmLVKzopXUsYaaSEhMZ/v1yfosrg5pSFHvnVIY5xuA3bITW0YTQBUVVVVXrEC+SkJBAjRo1uH79OoqiZOo93t7ehISE5HCyp+sZuJDfI0rj6JLCb6PayN1i4gkfz5nD+iQPUuMssCik0rrQdRb4yy3xQntaHjuzSheXEK9fv46LiwuDBw+mVq1aDBs2jEQzfu5qvd/beBaPIS66IG8t3qx1HGFG9u/fS93ZG1h+pzypiZZUc4/gyNBaUl7PkJ6ayOHfA8lIT9E6ijBDuiiwjIwMTp06xdtvv83p06exs7Nj2rRpTywXFBSEt7c33t7eREdHa5D0/9s21JeirkncjChCN5mCRQCLVixh+NFUoqLscHdLYEFDlZ/9huHuXkLraGZJNZn4cGM7xlxazOo9Mr6jeJIuCqxkyZKULFmS+vXrA+Dr68upU6eeWG7EiBGEhIQQEhKi+dxHtnZ2bPGtT8EiGYREluBtmYIlX3tvTiDTrrphTIV2rtc47t+btq3baR3LrM3b2pudGbG4GFUWRR0jJuaS1pGEmdFFgbm5uVGqVCn+/vtvAPbt20flypU1TvVipUqXZkFdOyxtVXbFlOdzmYIlXxo0ex5rIj1RDCpD3a+zYIJcLnyRzXvfJSjhAt0KuPNDs3mkKDDvV9lv4nG6KDCAuXPn0rdvX6pXr86ZM2d4//33tY6UKc2ateDdMlFgobA0phwr163WOpLIRe0Df+DA3bJY2al8WTmBj8bIpbAXOXZyEZ/f3sUb2PCB7xbKejShj115NqXe4cKlLVrHE2ZEF3chvgxzu5Pm/TlzWH23PFa2KitbFOH1+m9qHUnkoOjoaDqu3ktEpD12RdNY3tQdb+8GWscye1eu7mZA8CTcsWCF724KFXYHICE+jA6b3sJDsWbZgD9QDLr57K075nbsfB75X5BLpo4fT/N/p2AZdjhK85tMRM45ffokTZcfISLSHje3Bxwc1FDKKxOio84z+vAkbFVY0GbZo/ICsHcoxbiSrTilpPHLkS81TCnMiRRYLlriP47q7pEkxhag/er9MgVLHrT2x/X02HWHBzEFqFz8Lsf9e2l+Q5EeJD2MYsyOvsQrMO/Nr3Bzf3LA4i5Np1HJZGDW1Q0kJ93TIKUwN1Jguexnv6EUd4vnbmQhfBfLFCx5ydSF83n/fCHSHhpo4hbKzvFDtI6kC8aMNCZv6sTfSgYzKg/H67VOT13OwrIAU2pNIMJCYZncVi+QAtPE7n+nYDkf4cqAgHlaxxHZYOzsQILCPVBNCr2KXWW5/xitI+mCajIx7afOHFIf8r57MxrVf/7Axd41B9HKwpEl9/8kMuJ0LqUU5koKTAP2Do6saF6GAvYmDkWVZXJggNaRxCvoGbCIn6M8MVjDJI87fOMno8dn1srdo1iXEsYgO096ts7cs5ITm85EBWbt88/ZcMLsSYFppFatOnxZKRmDNWyIrcjcH77XOpLIoqTERJoGruT3yFIUdDAyrx6MHTJM61i6se/oNGZE/UZLgwMTuvyY6feVKFGPQY5V2WW8x+mzq3IwoTB3UmAa6tm1ByOK3QATzL5TnJ2/7NA6ksik69ev8eZ3u7gR4UQR12R29agiI2tkwdnz6/nP5VVUUwsw1fdnDBZZmxhjSOt5uBpVpp2cgcmYkUMphbmTAtPYe6PG0sH5CsYkmHDayPXr17SOJF7gl1930/bHv7gfZUNZ93scHfkW5cqV1zqWboSFHWPciS9wVhXmdtpAQZsiWV6Hra0zE8t15YLByNaD+hjUQGQ/KTAzMNffjwZuYaTGWdBty2m5vd6MzVuymNHHjSTHWVLX/TYH/PrLdDlZEB9/izG/jiQDWNBsLk5Oni+9rraNPqWGyYrAmzt5+CAi+0IK3ZACMxPr/UZRzj2W+1E2tF28Ses44in+ExjIjNDiGFOhvetVfvQbqXUkXUlLfcCEzV25bTARWGsSZT2avNL6FIOB/9R/j1gLhaA9ctdnfiQFZka2D+uGk2sSoRFO+AZ+p3Uc8V8GBcxj7d1/BuQdUSKU+RPkTsOsUE0mPtnYkT+UVL7w6Ip3zUHZst6qlbvTyaoYqx5c5tatI9myTqEfUmBmxNbOjo2da1OwSAZ/RJZktEzBYhbaBi7hQGRZChQyMbXKQ95/Wz7tZ9WCrX3ZnhHDuCI1adfk82xdt1+LQKxUmHFwSrauV5g/KTAzU65ceQJrW2NpCztjyvPVAnnQWSvR0dE0CFjLhYhiFC6axoa3itO7e0+tY+nO1v3/YVHCX3QpUIzh7Zdn+/pdXKswwrkuB9QEfgtZkO3rF+ZLCswMtW7ZhndKRoJBYXFUWVZvWKt1pHwnJOQ4TZcdITLSHne3BA4MakitWnW0jqU7x09+x6e3ttMAGz7y3ZZjo8j3bzWHkkaYfnYRGekpObINYX6kwMzU6MFD6e18BVMafHKlECEhx7WOlG+s3rCWXr9E8yC2AFXc73LMv7cMyPsSrl7bw8Szc/FQLZjVZTNWVrY5tq0C1oWZVKkf1yxUNux7J8e2I8yLFJgZ+3q8H01dbpD+wMDAAxEyBUsu+GrBPD68YE96ooFmxULZ4ScD8r6MmOiLjD40EWsVFrReQmH7Ejm+zWYN3qU+BZkfcYi4+zdyfHtCe1JgZm7ZhLFU/XcKlg6r92od5zHp6Un8cfoH9h75Ok+MhjA6YA7f3ymLalLo43aVpRPkZo2XkZQUw9jtvYlTYP4bX+JePHcuvSoGA1Pe/IKHCizYMzZXtim0JQWmAzv8huLulkBkpD1t5yzRNEvU3b/YtHcSE1Y2xGdVPYacDWDCtTVMXtuM1JR4TbO9Ct/A79hxtzwW1jC5bARfj5fb5F+GMSONKRs7clHJ4FuvIVSu1DlXt1/Bsw09bEqzIfkmV67uztVti9ynqKqqah0iJ+hpWuzMiI6OpunyIzyIKUBTtxss88+dT5gZ6Smcu7iR4KtbCY6/zCWDCYBiRpWGNsXxKdOcG7EXCbx3kpqqFXM6/kgRJ/0Mq5SUmEjbxZsJjShCwSIZBNa2pnXLNlrH0q1pGzqwOjmU94s1pncbbe6gjbt/g3ZbOuBlsOH7/r/n2I0jeZWejp1ZG0FTaMbFxYWVzUvTY9cdDkSVZUpgYI5N2xEbc5nfzi0nOPwIR9NjSTAoWKgqNZWC+DtVw8erBxXKtX7swFAq+Avev7aefls6s6D5AsqU8cmRbNnp+vVrdNtymvtRRXByTWJj59oypuErWLVrFKuTQxlgW06z8gJwLFKW0W6NmBYVzIHjM2j2xmTNsoicJWdgOrP2x/W8f74QqklhksedbJm+w2TM4PylzQRf3sSRuEv8paSjKgpFjSoNC7rhU6oxr1cfhL1Dqeeu58y51YwP+RoVCKw9mdo1Brxytpyy85cdTDhtJDXOgnLusWwf1k3GNHwF+3+bjv/lFTS3cGRmn4NZHl0+u6WnJ9F9ZQPSUNnS9zcKWBfWNI+e6OnYKQWmQ1MXzico3AODNSxsYPFSl7zi40L57c9lBN8+zNG0KO4ZFBRVpbpagIZOlfF5rSteFTpm+UB069YRRu99mzsGlanlutOm0SdZzpbT5v7wPbPvFMeYBA3cwljvN0rrSLr214UfGfz7Z1TAih967sPG1knrSAD8FrKAkecXMsGpLkM6aPvdsZ7o6dgpBaZTY2YHsj3Kk4IORnb1qPLCS1+qycTfV7YT/PdGgu+d509SMSkKjiaVNwu44FPChzeqD8yW76/i7t/Ab6svp5Q0/JzqMLTdErP5HmJyYAAbYiuCCTo4X2Guv9ys8SrCw0/QZ88QbFSFVR1/xNm5ktaRHjNuxRucMCawo/2POLt4aR1HF/R07JQC07EeAd9xIrIkRVyTOTryrScugT1ICOf42eUEh+3nSHIk0RYKAJVNFvg4VsKnQmeqVuqKhWWBbM+WmhLPRxs7sst4j24F3PnAd0uOPsiaGQMC5nEoqiwGaxhR7AbvjZJbrV9FQnwY/X9qR7RiYlWTOZQr20zrSE+4desInfaPon0BN77oY16PoZgrPR07pcB0rmngSm5EOFHW/R77x/Xl2o29BF9cT3DMn5wmhQxFobBJ5Q0rJ3yKv8Gb1Qbm2idRkzGDeVt78/2DS7yJLTO6bqFQYfdc2fZ/S0pMpNsPG7hwx5UC9ia+rJRMz649cj1HXpKemsiotY05RQpBNSdSt6b5PvA9a2MXliZeZW3dj6laubvWccyeno6dUmA6FxN9E7/Vn2MwXOKOXRxRlv9cqqtoMuBjXwEfzw7UqNwTS6uCmmX86dd3+CL8F8qpFixosww391q5tu3o6Gjar97P3chCFHZOZVWrstSonnvbz4tUk4kP17VgW3o0U0t3okPTL7WO9FwPH0TQbmNLSlGAlQNDzOZytrnS07FTbqPXGdVk4uatYIIvrCE4+jQhahLpRRRsTSbKJdlQx+jKxB5TcXOrqXXUR7q1nIn7H+WY+NdC+u7qz/w3p1LptY45vt1jvx9l2OFoEmMLUdwtnt2D22Lv4Jjj283rFm3rx7b0aMY41jD78gIoVNgd/1Jv8XH4bnYe/jTbp3MR2pEzMB1ISb5PyLlVBIf+QvDDm4RZ/PPzckYFn8Ll8CnfltgoV8b9YYUxFUaUCDXLOasuX93FmMPvkqDAt5WH06h+zt1AsXLdaj675kD6A4Xq7pH87Dc0x7aVn2zb/z4fhP1MJ6tifNFrj27OZkzGDHqv8CZWzWBbr4PY2jprHcls6enYKQVmpm7fPs6Rv1YTHBXCCeMDUgwKBU0q9SwK4+PqTcOqfSlZssFj75m3ZDEzQoujGFSmVnlolnNXRd39i7E7+/G3ksH77s3o2Tr7J+38fN5clsaUw5QOzV2us8R/XLZvIz86cXoxI/8MoI5iw8JeB7Gy1tdzc6fPrmLA6W8YZV+VMV1kiqJn0dOxUwrMTKSnJnLyr1UEX99J8IMb3LD455+llBF8CpXBx6M13tX6UdCmyHPXMyUwkHV3PSlQyMSGt4qb5RxWSQ+jeHdTJw6rDxlk58mELj9m24OvbwfMYVdMebBQ6FP0KlPHj8+W9eZ312/so99BP1xVAyu67XjhQ+3mavKqxuxPj2Vb62UUL+6tdRyzpKdjpxSYhiIjz3Dk3AqCI3/neEY8SQYFK1WlrmKLj2ttfCr3fakhmQYFzONAZFkKO6dxYGBDs5zLKiM9hWk/dWF96m1aGhyZ6rvtheX8It0CgwiJLIGlrcqUMtGMGDA4m9LmbzExl+i3rTupqKxuo+8Df2TEaTrs7k9jKydm9DusdRyzpIdj5/+RAstF6elJ/Hl+A8HXfiY44SpX/h0Y192o4mNbEh+PltSrPjBbrs+3DVzChYhiuLslcMy/9yuvLyeoJhMrdo1kZvQxqqkFmNtpA05OnlleT1JiIm8t3szNfwfkXVDXjmbNWuRA4vwnOekeQ9Y35xrpLG3wGVW8umkd6ZUt3NKHBfHnWFrjHbxrDtI6jtkxx2Pns0iB5bCY6IscObuM4IjfOJZ+nwcGBUtVpTYF8XGuSUOvHpQv2yJHvgxvELCWyEh7qrjfNeuJGX89MpX3rqzBRVVY0GwuZT2aZPq9ly9fpPvPF4iPLohzsUQ2d2tAqdKlcy5sPmLMSGPi2qYcMMYT+Nogmr4+SetI2SI56R4d1zWiiGLJ2v4ncuRBfj0zl2NnZkiBZTNjRhrnLm3kyJVtBMdd4oLBCICLUcXHxh2fUs1oUGNQrjzQGx0dTdNlR3gQW4CmxW6wbIL5jjzx51/rGP/Hl2QAgbUmZeqT8fbd23nnjInUOAs83WPYNsxXBuTNRt/82JFVSTf4j6sPfd9aoHWcbLX78Ge8e2MjnxZvRbeWM7WOY1akwMxAbv4j3L93jaNnlxEcHsxvaTHEGRQMqkoNrPFxqoLPa768VqG9Jrcch4Qcp9cv0aQnGujjdtWsJ2oMCzvG6F9HEm4w8YVH1+c+rxO4OIjAOyUwJsPrxW6xzv/tXEya963eNZppUcH0sy3LlO7btI6T7VSTiUEr6hKqprK92y8Uti+hdSSzIQWWQ4xGI97e3pQoUYLt27c/d9mc/EcwGTO4eGUbwX9vIvjeBc4paaiKgpNJpaG1Kw1LNOKNGoNwcPTIke1n1eoNa/nwgj2qSWFy2QhGDzbfZ6Li40Lx2+LLSSWVcUVqMrz98ieKf1JAIBtjKwDQqegVAmVA3mx14NgM/P9eRmODA7P7HMizl9guXNpCr+MfMsDOk0ndt2gdx2zoqcB0NRJHYGAgXl5eJCQk5Pq2E+LDOHZ2GcFhhziSEkmsxT/Tj1TFircdq+NTsQuVX+ui+TxIT9O3R29CF8zj+ztlmXnbjfK/7jbbWYcdHD0I6n2Ajzd2ZO79M9xe34qPfLc9Ggi4f8B8Dkdvpj3MAAAcLElEQVR5YrBWGe1+k3dHSHllp/MXf2LKpWVUxoppvlvzbHkBVK7UmS6n57M68Sq+oYfw8GisdSSRRbo5A7t9+zYDBw7kgw8+YNasWTl+BqaaTFy+tovgSz8SHHuOP0nFqCjYm1TetCqKT4mGvFFtIEWdK770NnLb6IA57LhbHhvHDHZ2r2rWsw+rJhPzt/bhu4TzNMCGr9qsYcC6I1yMcMHawcTUSqn4dvHVOmaecudOCH12D6Ig5jk1Sk6IiblE+5998bYozLwBx7SOYxbkDCwH+Pv7M336dB48eJCj2/njzBJ2XFxHcPIdov6dfsRLtWCIQ2UaVehE1UrdNB0Y91Us8B+Pb+B3hESUxHfLKY6MdDPbmx4Ug4GxXdZRYt9kPg/byeBtnYmLHomDsz0rZUDebJcQH8aY3UNIU+CHRrPyRXkBODtXYpRLA2bG/s6RE3NpWE9GbdETXQxktn37dlxdXalT5/mjSgQFBeHt7Y23tzfR0dEvta2Q0L3sTrlDDStHPi/Rhn1t1rJh8BnGd91AzWp9dVte/2ej30g83O9xL8qW9ot/0jrOC7kV6kT52KbEWqpYl13E0mbJUl7ZLD01kYlbuhJqMDG7xnjKl2+pdaRc1bdlIGWMMP2v70lPT9I6jsgCXVxCfO+991i5ciWWlpakpKSQkJBA165dWbVq1TPf87KnwYkPIylgba/55Is5KSkxkTe/28X9KBvqu4ex3m+U1pGeavnaVXxx3ZH0hwrN3PYTXvgX4hT41msIjRtM1DpenqCaTHy0rhVb0+/yVakOdGw2VetImjh0fBZj/17KFNc36ffWIq3jaEpPlxB1cQb29ddfc/v2bUJDQ1m3bh3NmjV7bnm9CrtCbnm6vABs7ez4qXMtrB2NHI8sxbiAQK0jPeGzeXP59FIRMpIUWha7zlK/maxuvx4PLBl/aQlrd5vvM216EvTzQLam32W0Q7V8W14Ajer58wY2LIg8wr17V7WOIzJJFwUmsl+5cuWZXcsCC1v4OaYCXy+ap3WkR0bOnsPSiHKoQH+3ayz+dzR5F9cqLOu+h0YGe6bePcS3P3bCZMzQNqyO/XzgQ+bFnaGjlQujOubMB0K9UAwGJjf8iiQF5u+RD0d6obsCa9KkyQvvQBSZ07Z1OyYUvwMGCLpblvWbNmgdiS6B37M7qjwWNiofesbwxbjHR5O3LeRKQJ+D9LEpw4qk67yzpgnJSfc0Sqtff5xZwsc3t1BPtebTbj/rZl6vnFS+fEt62ZZlY8pt/r6yQ+s4IhPkf20+N27ocHoUvYwpFT68ZMOfZ09rkiMhPg6fwNWcjiiObZEMfvCxYVj/gU9d1sKyAO/12M5klzfYZ4xj6PrmxMZczuXE+nX9xn78Ts+itMnArC6bdDevV056u/V87FWYfvQTVJNJ6zjiBaTABNP9/GnseoO0BAP99twgIT4uV7d//sI5fBbvIyzCEediiezpVYsmjZu/8H39237H7Ar9uEI6fbd14/qN/bmQVt9iYy4z+oAfVsCC1otxcJCBj/+bg0NpxhZvxgkllX2/faN1HPECUmACgBX+Y6niHsWDGGvaLN2Za9vdtmMrXbbeID66IBXdozk8ol2WRpNv/uZ/WFLvE5IVlX4Hx/PHmSU5mFbfkpPuMf7nnsQqKvPqfUKJEvW0jmSWujWbjqfJwIzLa0hNidc6jngOKTDxyMZhPSjm9pA7kQ60D/whx7c3M2gh/ictSX1gwRvut9jjN+ilHqyuVqU7q1suxkU1MOLMLH4+8GEOpNU3kzGD93/qyDklnWmv9adale5aRzJbllYFmVJ9NOEWsGKPPNhszqTAxCO2dnZs79sMu6JpnItwY0jA3Bzb1oTAQOaGlcGUrtDF9Qpr/F5tNPmSJRuwott2alGQ929tZdHWfvIdxn+ZtcmXvaZ4JhdrSPM3pmgdx+w1qDOS5gZ7vo89RdTdv7SOI55BCkw8xsXFheVN3bEqrLIvuhzvz5mT7dvoG7CATXc9MViqjCt1kwB//2xZr4NDab7rfYgOli7Mj/uTj9a1Ij01MVvWrWdrd49ledI1+tiUyfcP6WbFO01mkKFA4L7xL15YaEIKTDzB27sBn5SPx2AFa2I9WbQie75XSkpMpFXgMo5GlsG6sImZtdJ5Z0T2zuNlZW3HV733MtqhGlvT7/L2uiYkxIdl6zb05NDxWUyLPEgTpTCTu27SOo6ulCr1OgMLV2JbejRnz6/XOo54Cikw8VT9e/VliMt1MKp8e9OV/fv3vtL6IiLCaRy0g8sRLji4pLC5kwddOnbOprSPUwwG3u68hi9LteOkmsyAn9px544+hsbJThcubeHdi0uopFryje+2PD01Sk4Z1noeLkaVb05Mk4fmzZAUmHimj8aM4y3na2QkKYz+I5GwW7deaj1Hgg/RbGUI0XftKOUeR/Cw5lSpXC2b0z6pU7NpLKo+nijFRJ/dgzh/0fwHL84uEXdOMva3D3FUYX77tdjaOmsdSZfsCrnh59Ges4YMdhz+ROs44n9IgYnnWug/Hm+3cFLuW9J54+8kJWbtO6XFK5cz8NADku5bUtP9DsF+fbF3cMyhtE+qX3sEKxvNxhqFwcc/4cCxGbm2ba08SAhn9C9DSFZgQeNZOLt4aR1J1zo0/pKqJktm39hK0sMoreOI/yIFJl7oJ78RlHG/T2yULR1/2Jjp9308Zw5fXnXGmKzQuth1tvgNz8GUz1a+fEtWd9hAeazw+3sZq3dl7/du5iQ9PYmJm7sQqhiZXX0cnuVbaR1J9wwWlkyp+y7RFgqLZZxEsyIFJjJl17AuOLqkcPWOM70CFr5w+eGz57LibnkUYKDbNYL8tX2extnFiyU999HE4MC0qCN8s6EDxow0TTNlN9Vk4ouNHTlOMp+UakeDOiO1jpRn1Kzah/aWzixPuMDt28e1jiP+JQUmMsXWzo4NHSpj7Wjk2N3S+D1nCpbOgd+zJ6ocljYqH1eM5bNx5nEbso2tE7P7HKCfbVlWJYcyYU1TkpJitI6VbRZvH8TmtLuMtK9C5+YyDFJ2828RiIUKsw5M0jqK+JcUmMi0ihW9mFnTgIUNbI2twDeLFjz2ekJ8HA0D13Amojh2RdJZ1rgwg/sO0Cjt01lYFmBK9238x9WHQ6Z4hq5vSUzMJa1jvbIdBz9mzv3TtLd0ZkynNVrHyZOKFavOUKda/GqK58TpxVrHEUiBiSxq36Y9fsXDAVh0twwbN//zndj5C+do+P1+bkc44FLsIfv616WhT2Mtoz5X37cWEPDaIK6RTr9t3bl27VetI720k38u56PQTXir1nzmu02mRslBA1vNobgRvjkzN89dgtYj+Z8ussxv2Ai6O/8zBct7F60JWrGULltDSYix5rXi0Rwa0R539xJax3yhpq9PYmmDz0hBpf/hCfx+KkjrSFl2I/Qgfqe+pYTJQECXTRSwLqx1pDytoE0R3qnQk8sGEz/tn6x1nHxPCky8lG/9/GnkGkpagoGvLrqS+sDAm243+WX8yw3Iq5UqXt1Y02YZxVQDo87OYdv+97WOlGn37l1l9P5xWAALWn4nU6PkkpZvvo+3as3c8L3Ex7/cs5Eie0iBiZe20n8MVd3vYlEQfF2vsNp/tNaRXkrx4t4s77aDOooNH4T9zILNvc1+IOCU5PuM29qDaEVlbr2PKFXqda0j5RuKwcCU1z8mQYFFclu9pqTAxCvZ4TeE65+0Y2Y2DcirFXuHUizsdZBOVsVYmPAXH6xtYbYDAZuMGby/sQPnlDSmVehL9So9tY6U71R6rSPdCpZkXeJ1rt/Yp3WcfEsKTIh/WVnb8UWvPYxxrMHPGdGMXNvYLC8RBWzuzq+meN5xeYMWDd/TOk6+NbbVPGxUmH5YP5ed8xopMCH+i2IwMKrTKqaW7sRpUuj/U3uzenB1/S/jWZp4lV4FSzFApkbRlJOTJ6OKvcFRkjj8+7OfixQ5RwpMiKfo0PRLgmpOJFYx0ffXYZw7/6PWkTj8eyBTI/bTWCnElK6b5HZ5M9C7+Ww8jArfnl9stpec8zL5DRDiGerWHMLKJnOwURWGnPiMfb9pN7rFxb+3MunC97ymWjK961YsrQpqlkX8f1bWdkyuOoxQC1izd4LWcfIdKTAhnqNc2Was7vgTFbFiwuWVrNw5MtfvUIyMOM3Yox/goMK8tquwLeSaq9sXz+dTbzw+ih2Lon4jNuay1nHyFSkwIV6gqHNFFvfcR3MLR6ZH/8a0jR1zbRSGhw8iGL17EEkKzG/0La7FqubKdkXWvNtoGikKzP1VbqvPTVJgQmSCja0TM/scZKBtedYk38R/TZMcHwg4PT2JdzZ14oZiZFb1sVT0fCtHtydeXlmPJvS2K8+m1Dtc/Hur1nHyDSkwITLJYGHJpO5beL9YYw6bEhi8vgXRUedzZFuqycRXGzvzG8l8XPItXq8zKke2I7LPqFbzcFThm2NfmP2D8HmFFJgQWdS7zTzmVBrCDTLou70nV6/tyfZt/LBjCD+lRTC8sBddWnyb7esX2c/eoRTjSrTkpJLKnqNfaR0nX5ACE+IlNG4wkWWvf0kG0P/wRI6dzL5nsnYd+pTAeydpa1mUcZ3XZdt6Rc7r2uwbXjMZmHllPSnJ97WOk+dJgQnxkipX6szqNstxw4LR5+axed+rj05+6s8VfHBjI7XVAnzh+7M866UzFpYFmFLLjwgLhWV7tJ2FPD+Q3w4hXoF78Tqs6LaTuootH9/exdzNPV/6+4+bN4MZf2o6JUwKgZ02ytQoOlW35hBaGhxZcu8MkZFntI6Tp0mBCfGKCtuXYH6fg3Qt4EZQwgXeW9uctNQHWVrHvXtXeXvfaAzAgpaLcCxSNmfCilzxTrOZGBUI2CcPN+ckKTAhsoGVlS2f9vyF8UVqsSMjhhFrmxIfF5qp96amxOO3rQdRisqcuu9TqtSbORtW5LgSJeoxyKEKOzJiOHNutdZx8iwpMCGyiWIwMLzjCr7x6MpZUui3qSNhYcee+x6TMYMPNnbgjJLOVM9e1KzaJ5fSipw2tPV8XI0q00K+xWTM0DpOniQFJkQ2a9v4M76v9S73FRP99g7nz7+efSdh4Jae/GK8zztF69PK58NcTClymq2tMxPKdeG8wci2gx9oHSdP0kWBhYWF0bRpU7y8vKhSpQqBgTJ1gTBvdWoMZFXT+dipCkP/+JJfj0x9YpkNe/xZ8vAyPa1LMrBtkAYpRU5r1+gzqpusCLy5g8SHkVrHyXN0UWCWlpbMnDmTixcvcvz4cebPn8+FCxe0jiXEc3l4NGZV581UogDvXF3D8h3DH92heOTEXKbe2YuPYsd/um2W2+XzKMVg4D/13iPGQuH7X2ScxOymi98ad3d3ateuDUDhwoXx8vIiPDxc41RCvJiTkyeLe+2jhUURZsQc56sf23P+0ibeOf8dFVQLvu26RaZGyeOqVelORytXVjy4RFjYUa3j5Cm6KLD/FhoayunTp6lfv77WUYTIlII2RZjR5wCD7TxZnxJG3+MfU1iFeW1XYlfITet4Ihf4t5iDlQozDr76w+7i/9NVgT18+JBu3boREBCAvb39E68HBQXh7e2Nt7c30dHRGiQU4ukMFpZM9N3MR+7NKWsyMN/nG4oVq651LJFLXFyrMNzZm/2mhGwddiy/U1RVVbUOkRnp6em0b9+e1q1bM3HixBcu7+3tTUhISC4kE0KIF0tNiafzmoYUROHH/ifM9tKxno6dujgDU1WVoUOH4uXllanyEkIIc2Nd0IFJr/XlqoXKj/smaR0nT9BFgR09epSVK1eyf/9+atasSc2aNdm5c6fWsYQQIkuavT6Z+hRkfsTBTI/UIp7NUusAmdGwYUN0cqVTCCGeSTEYmPzm53Q/8i4L9ozlvR7btY6ka7o4AxNCiLyioudbdLcpzfqk0ByZDDU/kQITQohcNrbVfOxUmH7kw5eefkdIgQkhRK5zLFKW0W4+HCOZg7/P0jqObkmBCSGEBnq0mEk5o8KMi8uzPH+c+IcUmBBCaMDKypbJ1UZwywJW/+qvdRxdkgITQgiNvFl3LE2UwnwX/Tsx0Re1jqM7UmBCCKGhSY2/IVWBOXvHaR1Fd6TAhBBCQ2XK+NC/UAW2pEZy/uJPWsfRFSkwIYTQ2IjWCyiiwje/T5Xb6rNACkwIITRWqLA7fqXacFpJY3fw51rH0Q0pMCGEMAOdmkzFy2TBzGsbSU66p3UcXZACE0IIM2BhWYD/1J7IXQuFpb+M0TqOLkiBCSGEmahdYwBvWTixJO4cEXdOah3H7EmBCSGEGZnQbBYKMGv/BK2jmD0pMCGEMCPuxesw2LEau433Ofnncq3jmDUpMCGEMDODW8+nmFHlm1OzMWakaR3HbEmBCSGEmbGxdeKd8r5cNBjZevB9reOYLSkwIYQwQ218PqaWWoDAsN08SAjXOo5ZkgITQggzpBgMTGnwAfcVCNozVus4ZkkKTAghzFSVSl3pbO3GqodXuHkzWOs4ZkcKTAghzNj4FnOxVmHGoSlaRzE7UmBCCGHGnF28GOlSn4PqA47+MU/rOGZFCkwIIcxc35YBlDbC9HNBpKcnaR3HbEiBCSGEmStgXZh3Kw/iuoXKhr3vaB3HbEiBCSGEDjSuN4HXsWF+ZDD3713TOo5ZkAITQggdUAwGJjf8kiQF5v86Tus4ZkEKTAghdMKzfCt62nrwY/ItLl/dpXUczUmBCSGEjoxuNY/CKnxz5CNUk0nrOJqSAhNCCB1xcPRgrHtTTiip7D82Xes4mpICE0IInfFt/i2eJgPf/r2a1JR4reNoRgpMCCF0xtKqIFOqjybcAlb+6qd1HM1IgQkhhA41qDOSZgZ7gmJCiLr7l9ZxNCEFJoQQOjWpyXQyFAjclz/PwqTAhBBCp0qVepMBhSuxLT2Kc+d/1DpOrpMCE0IIHRveeh7ORpVpJ6ZiMmZoHSdX6abAdu/ezWuvvYanpyfTpk3TOo4QQpgFu0Ju+JVpx1lDBjsOf6p1nFyliwIzGo2MGTOGXbt2ceHCBdauXcuFCxe0jiWEEGahY5OvqGKyIODGFpIeRmkdJ9foosBOnDiBp6cn5cqVo0CBAvTq1YutW7dqHUsIIcyCwcKS/9SdTJSFwg/5aJxEXRRYeHg4pUqVevT3kiVLEh4ermEiIYQwLzWr9qGdpTPL4s8THn5C6zi5QhcFpqrqEz9TFOWJnwUFBeHt7Y23tzfR0dG5EU0IIcyGf/PZOJjgSliw1lFyhaXWATKjZMmShIWFPfr77du3KV68+BPLjRgxghEjRgDg7e2da/mEEMIcuLnV5Je+v2Nlbad1lFyhizOwunXrcuXKFW7cuEFaWhrr1q2jY8eOWscSQgizk1/KC3RyBmZpacm8efNo3bo1RqORIUOGUKVKFa1jCSGE0JAuCgygbdu2tG3bVusYQgghzIQuLiEKIYQQ/0sKTAghhC5JgQkhhNAlKTAhhBC6JAUmhBBClxT1acNc5AHOzs54eHi81Hujo6NxcXHJ3kDZQHJljeTKGsmVdeaa7VVyhYaGEhMTk82JckaeLbBX4e3tTUhIiNYxniC5skZyZY3kyjpzzWauubKbXEIUQgihS1JgQgghdMni008//VTrEOaoTp06Wkd4KsmVNZIrayRX1plrNnPNlZ3kOzAhhBC6JJcQhRBC6FK+LbAhQ4bg6upK1apVn/q6qqqMHz8eT09PqlevzqlTp8wi18GDB3FwcKBmzZrUrFmTzz//PFdyhYWF0bRpU7y8vKhSpQqBgYFPLKPFPstMLi32WUpKCvXq1aNGjRpUqVKFTz755IllUlNT6dmzJ56entSvX5/Q0FCzyLVs2TJcXFwe7a/FixfneK7/YzQaqVWrFu3bt3/iNS32V2ZyabW/PDw8qFatGjVr1nzq/IdaHcNylZpPHTp0SD158qRapUqVp76+Y8cOtU2bNqrJZFKPHTum1qtXzyxyHThwQG3Xrl2uZPlvd+7cUU+ePKmqqqomJCSoFSpUUM+fP//YMlrss8zk0mKfmUwm9cGDB6qqqmpaWppar1499dixY48tM3/+fHXkyJGqqqrq2rVr1R49ephFrqVLl6pjxozJ8SxPM3PmTLV3795P/ffSYn9lJpdW+6tMmTJqdHT0M1/X6hiWm/LtGVijRo1wcnJ65utbt25lwIABKIpCgwYNiIuLIyIiQvNcWnF3d6d27doAFC5cGC8vL8LDwx9bRot9lplcWlAUhUKFCgGQnp5Oeno6iqI8tszWrVsZOHAgAL6+vuzbtw81h7+Szkwurdy+fZsdO3YwbNiwp76uxf7KTC5zpdUxLDfl2wJ7kfDwcEqVKvXo7yVLljSLAyPAsWPHqFGjBm+99Rbnz5/P9e2HhoZy+vRp6tev/9jPtd5nz8oF2uwzo9FIzZo1cXV1pWXLls/dX5aWljg4OBAbG6t5LoCffvqJ6tWr4+vrS1hYWI5nAvD392f69OkYDE8/LGm1v16UC7TZX4qi0KpVK+rUqUNQUNATr2v9+5gbpMCe4Wmf7Mzhk2rt2rW5efMmf/75J+PGjaNz5865uv2HDx/SrVs3AgICsLe3f+w1LffZ83Jptc8sLCw4c+YMt2/f5sSJE/z111+Pva7V/npRrg4dOhAaGsrZs2dp0aLFo7OenLR9+3ZcXV2fe+u3FvsrM7m02F8AR48e5dSpU+zatYv58+dz+PDhx14312NYdpICe4aSJUs+9knq9u3bFC9eXMNE/7C3t390Caht27akp6fn2rhl6enpdOvWjb59+9K1a9cnXtdqn70ol5b7DMDR0ZEmTZqwe/fux37+3/srIyOD+Pj4XL18/KxcRYsWxdraGoDhw4dz8uTJHM9y9OhRtm3bhoeHB7169WL//v3069fvsWW02F+ZyaXF/gIe/W65urrSpUsXTpw48djr5noMy05SYM/QsWNHVqxYgaqqHD9+HAcHB9zd3bWORWRk5KNPVidOnMBkMlG0aNEc366qqgwdOhQvLy8mTpz41GW02GeZyaXFPouOjiYuLg6A5ORk9u7dS6VKlR5bpmPHjixfvhyAjRs30qxZsxz/hJyZXP/9Pcm2bdvw8vLK0UwAX3/9Nbdv3yY0NJR169bRrFkzVq1a9dgyWuyvzOTSYn8lJiby4MGDR3/es2fPE3cum+sxLDtZah1AK7179+bgwYPExMRQsmRJPvvsM9LT0wEYNWoUbdu2ZefOnXh6emJra8vSpUvNItfGjRtZuHAhlpaW2NjYsG7duly5LHD06FFWrlz56LZdgKlTp3Lr1q1H2bTYZ5nJpcU+i4iIYODAgRiNRkwmEz169KB9+/Z8/PHHeHt707FjR4YOHUr//v3x9PTEycmJdevW5WimzOaaM2cO27Ztw9LSEicnJ5YtW5bjuZ5F6/2VmVxa7K+7d+/SpUsX4J+z0T59+tCmTRsWLVoEaHsMy00yEocQQghdkkuIQgghdEkKTAghhC5JgQkhhNAlKTAhhBC6JAUmhBBCl6TAhBBC6JIUmBBCCF2SAhNCCKFLUmBCCCF0SQpMCCGELkmBCSGE0CUpMCGEELokBSaEEEKXpMCEEELokhSYEEIIXZICE0IIoUtSYEIIIXRJCkwIIYQuSYEJIYTQJSkwIYQQuvT/ALKDD0m8ZMpJAAAAAElFTkSuQmCC\n",
    "text/plain": [
    "testfile.png"
    "<__main__.PlotData at 0x7efc22f20690>"
    ]
    },
    "execution_count": 21,
    "execution_count": 48,
    "metadata": {},
    "output_type": "execute_result"
    },
    {
    "data": {
    "image/png": "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\n",
    "text/plain": [
    "<matplotlib.figure.Figure at 0x7f8e77389fd0>"
    ]
    },
    "metadata": {},
    "output_type": "display_data"
    }
    ],
    "source": [
    @@ -106,12 +106,24 @@
    "cell_type": "markdown",
    "metadata": {},
    "source": [
    "### re-write plotdata to return a plot without saving to file"
    "### 2. re-write plotdata, returns an image ( without saving to file )"
    ]
    },
    {
    "cell_type": "code",
    "execution_count": 63,
    "metadata": {},
    "outputs": [],
    "source": [
    "import matplotlib\n",
    "import matplotlib.pyplot as plt\n",
    "from IPython.core.pylabtools import print_figure\n",
    "plt.ioff()"
    ]
    },
    {
    "cell_type": "code",
    "execution_count": 22,
    "execution_count": 64,
    "metadata": {},
    "outputs": [],
    "source": [
    @@ -126,48 +138,43 @@
    " self.row = row\n",
    " self.column = column\n",
    " \n",
    " def __repr__(self):\n",
    " s = plt.plot(self.row, self.column)\n",
    " return repr(s)"
    " def _repr_png_(self):\n",
    " fig = plt.figure()\n",
    " plt.plot(self.row, self.column)\n",
    " data = print_figure(fig, 'png')\n",
    " plt.close()\n",
    " return data\n",
    " "
    ]
    },
    {
    "cell_type": "code",
    "execution_count": 23,
    "execution_count": 65,
    "metadata": {},
    "outputs": [],
    "source": [
    "sample_one = PlotData([1,2,3,4,5], [4,5,2,6,0])"
    "sample_one = PlotData([1,2,3,4,5], [4,5,2,6,0]) "
    ]
    },
    {
    "cell_type": "code",
    "execution_count": 24,
    "execution_count": 66,
    "metadata": {},
    "outputs": [
    {
    "data": {
    "text/plain": [
    "[<matplotlib.lines.Line2D object at 0x7faaa70aed50>]"
    ]
    },
    "execution_count": 24,
    "metadata": {},
    "output_type": "execute_result"
    },
    {
    "data": {
    "image/png": "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\n",
    "text/plain": [
    "<matplotlib.figure.Figure at 0x7faaa70f4c50>"
    "<__main__.PlotData at 0x7efc22bcf3d0>"
    ]
    },
    "execution_count": 66,
    "metadata": {},
    "output_type": "display_data"
    "output_type": "execute_result"
    }
    ],
    "source": [
    "sample_one"
    "sample_one "
    ]
    },
    {
    209 changes: 0 additions & 209 deletions plotdata_no_save_3.ipynb
    Original file line number Diff line number Diff line change
    @@ -1,209 +0,0 @@
    {
    "cells": [
    {
    "cell_type": "code",
    "execution_count": 40,
    "metadata": {},
    "outputs": [],
    "source": [
    "import io\n",
    "import matplotlib\n",
    "import matplotlib.pyplot as plt\n",
    "from IPython.display import Image"
    ]
    },
    {
    "cell_type": "code",
    "execution_count": 6,
    "metadata": {},
    "outputs": [
    {
    "data": {
    "image/png": "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\n",
    "text/plain": [
    "<matplotlib.figure.Figure at 0x7effe79d4dd0>"
    ]
    },
    "metadata": {},
    "output_type": "display_data"
    }
    ],
    "source": [
    "# example plot\n",
    "plt.plot([1,2,3,4,5,6])\n",
    "plt.ylabel('some numbers')\n",
    "x = plt.show()"
    ]
    },
    {
    "cell_type": "markdown",
    "metadata": {},
    "source": [
    "### 1. plotdata returns an image ( saving to file )"
    ]
    },
    {
    "cell_type": "code",
    "execution_count": 46,
    "metadata": {},
    "outputs": [],
    "source": [
    "class PlotData(object):\n",
    " \"\"\"\n",
    " Takes an object and plots data into a graph\n",
    " \n",
    " step 1: take row, column, filename\n",
    " step 2: plot a graph \n",
    " step 3: save graph into filename\n",
    " step 4: the name when called should display the image\n",
    " \n",
    " \"\"\"\n",
    " \n",
    " def __init__(self, row, column, fname):\n",
    " self.row = row\n",
    " self.column = column\n",
    " self.fname = fname\n",
    " \n",
    " \n",
    " def _repr_png_(self):\n",
    " plt.plot(self.row, self.column) # plot graph using row & column\n",
    " plt.savefig(self.fname+'.png') # save to a file appending filetype .png\n",
    " return open(self.fname+'.png', 'r').read() #open image from saved file\n",
    " \n"
    ]
    },
    {
    "cell_type": "code",
    "execution_count": 47,
    "metadata": {},
    "outputs": [],
    "source": [
    "sample_one = PlotData([1,2,3,4,5], [4,5,2,6,0], 'testfile')"
    ]
    },
    {
    "cell_type": "code",
    "execution_count": 48,
    "metadata": {},
    "outputs": [
    {
    "data": {
    "image/png": "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\n",
    "text/plain": [
    "<__main__.PlotData at 0x7efc22f20690>"
    ]
    },
    "execution_count": 48,
    "metadata": {},
    "output_type": "execute_result"
    }
    ],
    "source": [
    "sample_one"
    ]
    },
    {
    "cell_type": "markdown",
    "metadata": {},
    "source": [
    "### 2. re-write plotdata, returns an image ( without saving to file )"
    ]
    },
    {
    "cell_type": "code",
    "execution_count": 63,
    "metadata": {},
    "outputs": [],
    "source": [
    "import matplotlib\n",
    "import matplotlib.pyplot as plt\n",
    "from IPython.core.pylabtools import print_figure\n",
    "plt.ioff()"
    ]
    },
    {
    "cell_type": "code",
    "execution_count": 64,
    "metadata": {},
    "outputs": [],
    "source": [
    "class PlotData(object):\n",
    " \"\"\"\n",
    " Step 1: takes an object\n",
    " Step 2: plot y and x axes\n",
    " Step 3: return plot\n",
    " \"\"\"\n",
    " \n",
    " def __init__(self, row, column):\n",
    " self.row = row\n",
    " self.column = column\n",
    " \n",
    " def _repr_png_(self):\n",
    " fig = plt.figure()\n",
    " plt.plot(self.row, self.column)\n",
    " data = print_figure(fig, 'png')\n",
    " plt.close()\n",
    " return data\n",
    " "
    ]
    },
    {
    "cell_type": "code",
    "execution_count": 65,
    "metadata": {},
    "outputs": [],
    "source": [
    "sample_one = PlotData([1,2,3,4,5], [4,5,2,6,0]) "
    ]
    },
    {
    "cell_type": "code",
    "execution_count": 66,
    "metadata": {},
    "outputs": [
    {
    "data": {
    "image/png": "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\n",
    "text/plain": [
    "<__main__.PlotData at 0x7efc22bcf3d0>"
    ]
    },
    "execution_count": 66,
    "metadata": {},
    "output_type": "execute_result"
    }
    ],
    "source": [
    "sample_one "
    ]
    },
    {
    "cell_type": "code",
    "execution_count": null,
    "metadata": {},
    "outputs": [],
    "source": []
    }
    ],
    "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.14"
    }
    },
    "nbformat": 4,
    "nbformat_minor": 2
    }
  3. laudb revised this gist Jun 4, 2018. 1 changed file with 209 additions and 0 deletions.
    209 changes: 209 additions & 0 deletions plotdata_no_save_3.ipynb
    Original file line number Diff line number Diff line change
    @@ -0,0 +1,209 @@
    {
    "cells": [
    {
    "cell_type": "code",
    "execution_count": 40,
    "metadata": {},
    "outputs": [],
    "source": [
    "import io\n",
    "import matplotlib\n",
    "import matplotlib.pyplot as plt\n",
    "from IPython.display import Image"
    ]
    },
    {
    "cell_type": "code",
    "execution_count": 6,
    "metadata": {},
    "outputs": [
    {
    "data": {
    "image/png": "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\n",
    "text/plain": [
    "<matplotlib.figure.Figure at 0x7effe79d4dd0>"
    ]
    },
    "metadata": {},
    "output_type": "display_data"
    }
    ],
    "source": [
    "# example plot\n",
    "plt.plot([1,2,3,4,5,6])\n",
    "plt.ylabel('some numbers')\n",
    "x = plt.show()"
    ]
    },
    {
    "cell_type": "markdown",
    "metadata": {},
    "source": [
    "### 1. plotdata returns an image ( saving to file )"
    ]
    },
    {
    "cell_type": "code",
    "execution_count": 46,
    "metadata": {},
    "outputs": [],
    "source": [
    "class PlotData(object):\n",
    " \"\"\"\n",
    " Takes an object and plots data into a graph\n",
    " \n",
    " step 1: take row, column, filename\n",
    " step 2: plot a graph \n",
    " step 3: save graph into filename\n",
    " step 4: the name when called should display the image\n",
    " \n",
    " \"\"\"\n",
    " \n",
    " def __init__(self, row, column, fname):\n",
    " self.row = row\n",
    " self.column = column\n",
    " self.fname = fname\n",
    " \n",
    " \n",
    " def _repr_png_(self):\n",
    " plt.plot(self.row, self.column) # plot graph using row & column\n",
    " plt.savefig(self.fname+'.png') # save to a file appending filetype .png\n",
    " return open(self.fname+'.png', 'r').read() #open image from saved file\n",
    " \n"
    ]
    },
    {
    "cell_type": "code",
    "execution_count": 47,
    "metadata": {},
    "outputs": [],
    "source": [
    "sample_one = PlotData([1,2,3,4,5], [4,5,2,6,0], 'testfile')"
    ]
    },
    {
    "cell_type": "code",
    "execution_count": 48,
    "metadata": {},
    "outputs": [
    {
    "data": {
    "image/png": "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\n",
    "text/plain": [
    "<__main__.PlotData at 0x7efc22f20690>"
    ]
    },
    "execution_count": 48,
    "metadata": {},
    "output_type": "execute_result"
    }
    ],
    "source": [
    "sample_one"
    ]
    },
    {
    "cell_type": "markdown",
    "metadata": {},
    "source": [
    "### 2. re-write plotdata, returns an image ( without saving to file )"
    ]
    },
    {
    "cell_type": "code",
    "execution_count": 63,
    "metadata": {},
    "outputs": [],
    "source": [
    "import matplotlib\n",
    "import matplotlib.pyplot as plt\n",
    "from IPython.core.pylabtools import print_figure\n",
    "plt.ioff()"
    ]
    },
    {
    "cell_type": "code",
    "execution_count": 64,
    "metadata": {},
    "outputs": [],
    "source": [
    "class PlotData(object):\n",
    " \"\"\"\n",
    " Step 1: takes an object\n",
    " Step 2: plot y and x axes\n",
    " Step 3: return plot\n",
    " \"\"\"\n",
    " \n",
    " def __init__(self, row, column):\n",
    " self.row = row\n",
    " self.column = column\n",
    " \n",
    " def _repr_png_(self):\n",
    " fig = plt.figure()\n",
    " plt.plot(self.row, self.column)\n",
    " data = print_figure(fig, 'png')\n",
    " plt.close()\n",
    " return data\n",
    " "
    ]
    },
    {
    "cell_type": "code",
    "execution_count": 65,
    "metadata": {},
    "outputs": [],
    "source": [
    "sample_one = PlotData([1,2,3,4,5], [4,5,2,6,0]) "
    ]
    },
    {
    "cell_type": "code",
    "execution_count": 66,
    "metadata": {},
    "outputs": [
    {
    "data": {
    "image/png": "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\n",
    "text/plain": [
    "<__main__.PlotData at 0x7efc22bcf3d0>"
    ]
    },
    "execution_count": 66,
    "metadata": {},
    "output_type": "execute_result"
    }
    ],
    "source": [
    "sample_one "
    ]
    },
    {
    "cell_type": "code",
    "execution_count": null,
    "metadata": {},
    "outputs": [],
    "source": []
    }
    ],
    "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.14"
    }
    },
    "nbformat": 4,
    "nbformat_minor": 2
    }
  4. laudb revised this gist Jun 1, 2018. 1 changed file with 202 additions and 17 deletions.
    219 changes: 202 additions & 17 deletions plotdata_no_save_2.ipynb
    Original file line number Diff line number Diff line change
    @@ -1,17 +1,202 @@
    import matplotlib
    import matplotlib.pyplot as plt

    class PlotData(object):
    """
    Step 1: takes an object
    Step 2: plot y and x axes
    Step 3: return plot
    """

    def __init__(self, row, column):
    self.row = row
    self.column = column

    def __repr__(self):
    s = plt.plot(self.row, self.column)
    return repr(s)
    {
    "cells": [
    {
    "cell_type": "code",
    "execution_count": 9,
    "metadata": {},
    "outputs": [],
    "source": [
    "import matplotlib\n",
    "import matplotlib.pyplot as plt"
    ]
    },
    {
    "cell_type": "code",
    "execution_count": 6,
    "metadata": {},
    "outputs": [
    {
    "data": {
    "image/png": "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\n",
    "text/plain": [
    "<matplotlib.figure.Figure at 0x7effe79d4dd0>"
    ]
    },
    "metadata": {},
    "output_type": "display_data"
    }
    ],
    "source": [
    "# example plot\n",
    "plt.plot([1,2,3,4,5,6])\n",
    "plt.ylabel('some numbers')\n",
    "x = plt.show()"
    ]
    },
    {
    "cell_type": "code",
    "execution_count": 19,
    "metadata": {},
    "outputs": [],
    "source": [
    "class PlotData(object):\n",
    " \"\"\"\n",
    " Takes an object and plots data into a graph\n",
    " \n",
    " step 1: take row, column, filename\n",
    " step 2: plot a graph \n",
    " step 3: save graph into filename\n",
    " step 4: the name when called should display the image\n",
    " \n",
    " \"\"\"\n",
    " \n",
    " def __init__(self, row, column, fname):\n",
    " self.row = row\n",
    " self.column = column\n",
    " self.fname = fname\n",
    " \n",
    " \n",
    " def __repr__(self):\n",
    " plt.plot(self.row, self.column) # plot graph using row & column\n",
    " plt.savefig(self.fname+'.png')\n",
    " return \"%s.png\" % (self.fname)\n",
    " \n"
    ]
    },
    {
    "cell_type": "code",
    "execution_count": 20,
    "metadata": {},
    "outputs": [],
    "source": [
    "sample_one = PlotData([1,2,3,4,5], [4,5,2,6,0], 'testfile')"
    ]
    },
    {
    "cell_type": "code",
    "execution_count": 21,
    "metadata": {},
    "outputs": [
    {
    "data": {
    "text/plain": [
    "testfile.png"
    ]
    },
    "execution_count": 21,
    "metadata": {},
    "output_type": "execute_result"
    },
    {
    "data": {
    "image/png": "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\n",
    "text/plain": [
    "<matplotlib.figure.Figure at 0x7f8e77389fd0>"
    ]
    },
    "metadata": {},
    "output_type": "display_data"
    }
    ],
    "source": [
    "sample_one"
    ]
    },
    {
    "cell_type": "markdown",
    "metadata": {},
    "source": [
    "### re-write plotdata to return a plot without saving to file"
    ]
    },
    {
    "cell_type": "code",
    "execution_count": 22,
    "metadata": {},
    "outputs": [],
    "source": [
    "class PlotData(object):\n",
    " \"\"\"\n",
    " Step 1: takes an object\n",
    " Step 2: plot y and x axes\n",
    " Step 3: return plot\n",
    " \"\"\"\n",
    " \n",
    " def __init__(self, row, column):\n",
    " self.row = row\n",
    " self.column = column\n",
    " \n",
    " def __repr__(self):\n",
    " s = plt.plot(self.row, self.column)\n",
    " return repr(s)"
    ]
    },
    {
    "cell_type": "code",
    "execution_count": 23,
    "metadata": {},
    "outputs": [],
    "source": [
    "sample_one = PlotData([1,2,3,4,5], [4,5,2,6,0])"
    ]
    },
    {
    "cell_type": "code",
    "execution_count": 24,
    "metadata": {},
    "outputs": [
    {
    "data": {
    "text/plain": [
    "[<matplotlib.lines.Line2D object at 0x7faaa70aed50>]"
    ]
    },
    "execution_count": 24,
    "metadata": {},
    "output_type": "execute_result"
    },
    {
    "data": {
    "image/png": "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\n",
    "text/plain": [
    "<matplotlib.figure.Figure at 0x7faaa70f4c50>"
    ]
    },
    "metadata": {},
    "output_type": "display_data"
    }
    ],
    "source": [
    "sample_one"
    ]
    },
    {
    "cell_type": "code",
    "execution_count": null,
    "metadata": {},
    "outputs": [],
    "source": []
    }
    ],
    "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.14"
    }
    },
    "nbformat": 4,
    "nbformat_minor": 2
    }
  5. laudb revised this gist Jun 1, 2018. 1 changed file with 1 addition and 1 deletion.
    2 changes: 1 addition & 1 deletion plotdata_no_save_2.ipynb
    Original file line number Diff line number Diff line change
    @@ -5,7 +5,7 @@ class PlotData(object):
    """
    Step 1: takes an object
    Step 2: plot y and x axes
    Step 3: return graph
    Step 3: return plot
    """

    def __init__(self, row, column):
  6. laudb revised this gist Jun 1, 2018. 1 changed file with 1 addition and 2 deletions.
    3 changes: 1 addition & 2 deletions plotdata_no_save_2.ipynb
    Original file line number Diff line number Diff line change
    @@ -5,13 +5,12 @@ class PlotData(object):
    """
    Step 1: takes an object
    Step 2: plot y and x axes
    Step 3: return name
    Step 3: return graph
    """

    def __init__(self, row, column):
    self.row = row
    self.column = column
    self.fname = fname

    def __repr__(self):
    s = plt.plot(self.row, self.column)
  7. laudb revised this gist Jun 1, 2018. 1 changed file with 18 additions and 0 deletions.
    18 changes: 18 additions & 0 deletions plotdata_no_save_2.ipynb
    Original file line number Diff line number Diff line change
    @@ -0,0 +1,18 @@
    import matplotlib
    import matplotlib.pyplot as plt

    class PlotData(object):
    """
    Step 1: takes an object
    Step 2: plot y and x axes
    Step 3: return name
    """

    def __init__(self, row, column):
    self.row = row
    self.column = column
    self.fname = fname

    def __repr__(self):
    s = plt.plot(self.row, self.column)
    return repr(s)
  8. laudb created this gist Jun 1, 2018.
    16 changes: 16 additions & 0 deletions plotdata_no_save.ipynb
    Original file line number Diff line number Diff line change
    @@ -0,0 +1,16 @@
    class PlotData(object):
    """
    Step 1: takes an object
    Step 2: plot y and x axes
    Step 3: return name
    """

    def __init__(self, row, column, fname):
    self.row = row
    self.column = column
    self.fname = fname

    def __repr__(self):
    plt.plot(self.row, self.column)
    return self.fname