{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "Visualização de dados\n", "================\n", "\n", "O objetivo da computação científica é promover a compreensão do significado dos muitos números que calculamos. Precisamos de pós-processamento, análise estatística e visualização gráfica dos nossos dados. As seções seguintes descrevem\n", "\n", "- Matplotlib/Pylab - que permitem gerar gráficos de alta qualidade do tipo $y = f(x)$ (e um pouco mais).\n", "\n", "\n", "\n", "Matplotlib (Pylab): plotando $y = f(x)$ (e um pouco mais)\n", "-------------------------------------------------------\n", "\n", "*Matplotlib* é uma biblioteca Python para plotagem 2D que produz figuras com qualidade de publicação em uma variedade de formatos impressos e interativos. O Matplotlib tenta fazer as coisas fáceis ainda mais fáceis, e as difíceis, possíveis. Você pode gerar gráficos, histogramas, espectros de energia, gráficos de barras, de erros, de dispersão, etc, com apenas algumas linhas de código.\n", "\n", "Para informações mais detalhadas, verifique estes links\n", "\n", "- Uma introdução muito boa sobre Matplotlib orientado a objetos e um resumo de todos os modos relevantes para mudança de estilo, tamanho de figura, largura de linhas, etc. pode ser encontrada nesta útil referência:\n", "\n", "- Tutoriais do Matplotlib\n", "\n", "- Homepage do Matplotlib\n", "\n", "- Lista de exemplos simples (capturas de tela) \n", "\n", "- Galeria de exemplos: \n", "\n", "### Matplotlib e Pylab\n", "\n", "Podemos ver o Matplotlib como uma *biblioteca de plotagem orientada a objetos*. Pylab é uma interface para o mesmo conjunto de funções que imita a interface de plotagem do Matlab.\n", "\n", "Pylab é um pouco mais conveniente de usar para plotagens fáceis e o Matplotlib dá um controle muito mais detalhado sobre a forma como os plots são criados. Se você usa o Matplotlib rotineiramente para produzir figuras, aconselhamos você a aprender sobre a interface orientada a objetos do Matplotlib (em vez da interface Pylab).\n", "\n", "Este capítulo concentra-se na interface Pylab." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Primeiro exemplo\n", "\n", "A forma recomendada de usar Matplotlib em um exemplo simples é mostrada aqui (vamos chamá-lo de exemplo 1a):" ] }, { "cell_type": "code", "execution_count": 1, "metadata": { "collapsed": true }, "outputs": [], "source": [ "%matplotlib inline" ] }, { "cell_type": "code", "execution_count": 2, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "[]" ] }, "execution_count": 2, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAYYAAAD8CAYAAABzTgP2AAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAIABJREFUeJzt3XlclWX+//HXBxAQRJBFRQRRwQU3NNwqW1xya7Q9rSn7\nTuVMZVnN+M2WmWaa/E4zNS1TTpuWVpZZ2W5japr7guZOIgIKbuCGIDtcvz84zg8MRDyHc59z+Dwf\nj/Pw3Pe573Pep5QP131d93WJMQallFLqLC+rAyillHItWhiUUkrVoIVBKaVUDVoYlFJK1aCFQSml\nVA1aGJRSStWghUEppVQNWhiUUkrVoIVBKaVUDT5WB7gY4eHhJjY21uoYSinlVjZv3nzMGBNR33Fu\nWRhiY2NJTk62OoZSSrkVEdl/IcfppSSllFI1aGFQSilVgxYGpZRSNWhhUEopVYMWBqWUUjU4pDCI\nyDsikiMiO+t4XUTkXyKSJiLbRaRftdcmiche22OSI/IopZS6eI5qMcwBRp3n9dFAvO0xGXgdQERC\ngaeBgcAA4GkRaeWgTEoppS6CQ+5jMMasFJHY8xwyHnjPVK0jul5EQkQkErgKWGKMOQEgIkuoKjAf\nOSKXUsp1GGM4lFdM6tF8ck+XcLKwlOKySnx9vPDz8SIy2J/o0AA6RQQS4OuWt1h5DGf9148Csqpt\nZ9v21bX/F0RkMlWtDWJiYhonpVLKobJOFLIs5Sgr9x5jU+YJ8ovL6z3H20voHhlE/9hQRiS0YWDH\nMLy9xAlp1VluU5aNMW8BbwEkJSUZi+MopepQXFbB19sO8cnmbDZmnACgQ1gA1/ZuR492LenSJojI\nYH9aBfrSvJk3ZRWVFJVWcCiviAPHC9l9+DTJmSf5aOMB3l2TSXgLX8YnRjFpcCwxYQEWf7umwVmF\n4SAQXW27vW3fQaouJ1Xfv8JJmZRSDlRQUs689fuZtTqD3PwSOoUHMm1kV8b2iiQ2PLDO87y9vPFv\n5k2rQF96tAtmdK9IAApLy1mxJ5dvth9i7tpM3lmTwYjubXhkRBe6R7Z01tdqkqTqsr8D3qiqj+Eb\nY0zPWl4bC0wBxlDV0fwvY8wAW+fzZuDsKKUtwCVn+xzqkpSUZHSuJKVcQ0Wl4dPNWTy/OJVjBSUM\niQ/nvis7M7hzGCKOuQR0JK+YD9bv5711meSXlDO+TzumjepGVEhzh7x/UyEim40xSfUe54jCICIf\nUfWbfzhwlKqRRs0AjDFvSNXfjteo6lguBP7HGJNsO/c3wBO2t5phjHm3vs/TwqCUa9h5MI/HPtvO\nrkOnSerQiifHdqdvTOMNLMwrLOONlft4d00GXiI8OqILd10ai4+33pJ1IZxaGJxNC4NS1iqrqGTm\n8jRe+yGNVoG+PDW2O+P6tHNYC6E+2ScLefrLXSz7OYfe7YN5+dZEOkW0cMpnuzMtDEqpRnE4r4j7\n523hpwOnuL5vFE//KoGQAF+n5zDGsGjHEZ78Ygel5ZU8M74nN/aLclpxckcXWhjcZlSSUsp6a9KO\n8eBHP1FSVsFrt/Xl2t7tLMsiIoztHUm/DiE88vFW/vDJNjbvP8FfxvXE10cvLdlD/+sppS7IO6sz\nuGP2BsICffnqwcstLQrVRQY3Z949g3jg6s58tDGLX8/ewIkzpVbHcmtaGJRS51VZaXj2m908881u\nrkloyxcPXEZnF7ue7+0lTBvZjVcmJLI16xTjXlvNvtwCq2O5LS0MSqk6lZRX8ND8n5i1OoO7Lo1l\n5u39CPRz3SvQ4xOjWPDbwRSXVXDLG+vYeTDP6khuSQuDUqpWxWUV/Pb9zXyz/TBPjOnG079KcIup\nKRKjQ1jw28H4+Xgx8e31JGee97YoVQstDEqpXzhbFFbsyeVvN/Ri8hWd3Wq0T6eIFnxy36VEtPDj\njtkbWZ9+3OpIbkULg1KqhrNF4cfUXJ67oRcTB7jnpJVRIc35+LeDiWrVnLvnbOKnAyetjuQ2tDAo\npf6rotIwdf5P/Jiay99v7MUENy0KZ0UE+THvnoGEB/kx6Z2N7DqkfQ4XQguDUgqoumHsqS92snjX\nUf50bQK39nfvonBWm5b+zLtnIC38fLhz9kYyj52xOpLL08KglALgpSWpfLTxAPdf1ZnfXN7R6jgO\n1b5VAPPuHUSlMdz17ka9z6EeWhiUUixIzuJfP6Rxa1I000Z2tTpOo+gYHsisSUkcyivm3veSKS6r\nsDqSy9LCoFQTtynzBE9+voPL48KZcX1Ptxp91FCXdAjl5VsT2XLgJL9fsI3KSvebK84ZtDAo1YRl\nnSjkd+9vpn2rAGbe1q9JTF89plckj4/uxrc7DvPvFWlWx3FJnv+3QClVqzMl5dz7XjKlFZXMmpRE\ncEAzqyM5zb1DOnFdYjv+uSSV5T/nWB3H5TikMIjIKBHZIyJpIjK9ltdfEpGttkeqiJyq9lpFtde+\nckQepdT5GWOY9uk2Uo/m89pt/Vxu7qPGJiL87YbedG/bkofm/6Qjlc5hd2EQEW9gJjAaSAAmikhC\n9WOMMY8YYxKNMYnAq8DCai8XnX3NGDPO3jxKqfrNXZvJoh1HmDayG1d2ibA6jiWa+3rz5h2X4O0l\nTH4/mYKScqsjuQxHtBgGAGnGmHRjTCkwHxh/nuMnAh854HOVUhdha9YpZixKYVi31vz2ik5Wx7FU\ndGgAr03sR1pOAU99vgN3XLisMTiiMEQBWdW2s237fkFEOgAdgR+q7fYXkWQRWS8i1zkgj1KqDqcK\nS3lg3hZaB/nzz1v64OUGk+I1tsvjw5k6rAtfbD3EZ1sOWh3HJTi783kC8KkxpvoA4g62peZuA14W\nkc61nSgik20FJDk3N9cZWZXyKMYY/vDJdnLyi5l5ez9LluN0VVOGxjGwYyh//GKnruOAYwrDQSC6\n2nZ7277aTOCcy0jGmIO2P9OBFUDf2k40xrxljEkyxiRFRDTNa6JK2WPehgMsTTnK46O7kxgdYnUc\nl+LtJbw8IRH/Zl48+OFPTf7mN0cUhk1AvIh0FBFfqn74/2J0kYh0A1oB66rtayUifrbn4cBlwG4H\nZFJKVZOeW8CMb1MYEh/OXZfGWh3HJUUGN+eFm/uw+/BpnvvuZ6vjWMruwmCMKQemAIuBFGCBMWaX\niDwjItVHGU0A5puavTvdgWQR2QYsB54zxmhhUMqByioqeeTjrfg18+KFm7Vf4XyGdW/DXZfGMmdt\nJmvSjlkdxzLijr3wSUlJJjk52eoYSrmFl5ak8sqyvfz79n6M6RVpdRyXV1xWwZhXVlFSXsl3Dw+h\npb/n3PgnIpttfbrnpXc+K+XBfjpwkteWp3FD3ygtChfIv5k3L9zSh8N5RTz7TdO8gKGFQSkPVVxW\nwaMLttG2pT9/Ht/D6jhupV9MK353ZWcWJGezLOWo1XGcTguDUh7q5aV7yTh2hn/c1NujLoc4y9Th\n8XRrG8T0hTs42cTWb9DCoJQH2pGdx9ur0pnQP5rL4sKtjuOW/Hy8+ectfTh5ppQ/f73L6jhOpYVB\nKQ9TVlHJ/362nbBAXx4f093qOG6tR7tg7r86ji+3HmLFnqYzC6sWBqU8zFsr00k5fJq/XteT4OZ6\nCcleD1zdmU4RgTz1xU4KS5vGRHtaGJTyIGk5BbyydC9je0Uyskdbq+N4BD8fb/52fS+yTxbx8tK9\nVsdxCi0MSnkIYwyPL9xOc19v/jxORyE50sBOYUwcEM3s1RnsPJhndZxGp4VBKQ/x2ZaDbMo8yRNj\nuhER5Gd1HI8zfVR3WgX48vjCHVR4+FrRWhiU8gB5hWX8bVEK/WJCuPmS6PpPUA0WHNCMP49LYMfB\nPOaszbQ6TqPSwqCUB3jh+z2cLCzlr9f11LmQGtHYXpFc2SWCl5akkpNfbHWcRqOFQSk3tyM7jw82\n7OfOwbH0aBdsdRyPJiL8eVwPSssrPXoGVi0MSrmxykrDU1/uJCzQj0ev6WJ1nCahY3gg9wzpyMIt\nB0nOPGF1nEahhUEpNzZ/Uxbbsk7x5NhuOu2FE00ZGkdksD9/+nKXR3ZEa2FQyk2dPFPK3//zMwM7\nhnJdYq3LrKtGEuDrw5Nju7P78Gk+3HjA6jgOp4VBKTf18tJU8ovLeGZ8T0S0w9nZxvaKZHCnMF5Y\nvIcTHjbJnkMKg4iMEpE9IpImItNref0uEckVka22xz3VXpskInttj0mOyKOUp9t7NJ8PNhzg9oEd\n6No2yOo4TZKI8JfxPSgoKef5xZ7VEW13YRARb2AmMBpIACaKSEIth35sjEm0PWbZzg0FngYGAgOA\np0Wklb2ZlPJ0z36bQoCvN4+M0A5nK3VpE8SkwbHM35TF7kOnrY7jMI5oMQwA0owx6caYUmA+MP4C\nzx0JLDHGnDDGnASWAKMckEkpj7V8Tw4/puYydVg8oYG+Vsdp8qYOiye4eTNmLNqNOy6VXBtHFIYo\nIKvadrZt37luFJHtIvKpiJy9NfNCz1VKUTWl9oxvU4gNC+DOwbFWx1FU3RE9dVg8a9KOs9xDpuZ2\nVufz10CsMaY3Va2CuQ19AxGZLCLJIpKcm5vr8IBKuYMPNxwgLaeAJ8cm4OujY0dcxa8HdaBTeCAz\nvk2hrKLS6jh2c8TfrINA9clZ2tv2/Zcx5rgxpsS2OQu45ELPrfYebxljkowxSREREQ6IrZR7OVVY\nyktLU7m0cxjDu7e2Oo6qppm3F9NHd2Nf7hnme8DwVUcUhk1AvIh0FBFfYALwVfUDRCSy2uY4IMX2\nfDFwjYi0snU6X2Pbp5Q6xyvL9nK6qIw/Xpugw1Nd0IiENgzqFMpLS/dyurjM6jh2sbswGGPKgSlU\n/UBPARYYY3aJyDMiMs522EMisktEtgEPAXfZzj0B/JWq4rIJeMa2TylVTeaxM7y/bj+39o+me2RL\nq+OoWogIT41N4GRhKTOXp1kdxy7ijr3oSUlJJjk52eoYSjnNlA+3sCwlhx+nXUXrlv5Wx1Hn8fsF\n2/h62yGW/f5KokMDrI5Tg4hsNsYk1Xec9l4p5eK2ZZ3im+2HuXdIRy0KbmDayK54ecHf/+O+N71p\nYVDKhRljeO67nwkN9OXeKzpZHUddgLbB/tw7pBPfbD/Mjmz3XAZUC4NSLmzl3mOsSz/Og0PjCNLZ\nU93GvVd0olVAM/7hplNlaGFQykVVVla1FqJDm3PbwBir46gGaOnfjAeujmPV3mOsTTtmdZwG08Kg\nlIv6atshUg6f5g/XdMXPx9vqOKqBfj2oA+2C/fn74j1uN1WGFgalXFBJeQUvfL+HhMiW/Kp3O6vj\nqIvg38ybh0d0YVvWKRbvOmJ1nAbRwqCUC5q3/gDZJ4uYProbXl56M5u7uqFvFHGtW/D84j2Uu9FU\nGVoYlHIx+cVlvPrDXi6LC2NIfLjVcZQdfLy9mDayK/tyz/DZlmyr41wwLQxKuZhZqzI4WVjG9FHd\ndeoLD3BNQhv6xoTw8tK9FJdVWB3ngmhhUMqFnDxTyuzVGYzu2ZZe7YOtjqMcQER4bFQ3DucV8/66\n/VbHuSBaGJRyIW+uTOdMabmuzOZhBnUK48ouEcxckeYWE+xpYVDKReTkFzNnbQbj+rSjSxtdx9nT\nTBvZlVOFZbyzOsPqKPXSwqCUi3h9xT7KKgxTh8VbHUU1gp5RwYzq0ZbZqzI4VVhqdZzz0sKglAs4\ndKqIeesPcGO/KDpFtLA6jmokj4zoQkFpOW+vSrc6ynlpYVDKBby2PA2D4cGh2lrwZF3bBjG2VyTv\nrsnkeEFJ/SdYRAuDUhbLOlHIgk1ZTOgf43Lz9yvHe3h4F4rLKnhzpeu2GhxSGERklIjsEZE0EZle\ny+uPishuEdkuIstEpEO11ypEZKvt8dW55yrl6V5ZthdvL2HK0DiroygniGvdgusSo3hvXSY5+cVW\nx6mV3YVBRLyBmcBoIAGYKCIJ5xz2E5BkjOkNfAr8o9prRcaYRNtjHEo1IftyC1i4JZs7BnWgjS7C\n02Q8NCyesgrD6yv2WR2lVo5oMQwA0owx6caYUmA+ML76AcaY5caYQtvmeqC9Az5XKbf38tK9+Dfz\n5ndXdbY6inKi2PBAbuwXxbwNBzicV2R1nF9wRGGIArKqbWfb9tXlbuC7atv+IpIsIutF5Lq6ThKR\nybbjknNzc+1LrJQLSDl8mq+3HeKuS2MJb+FndRzlZA8OjccYw8zlaVZH+QWndj6LyK+BJOD5ars7\n2Banvg14WURq/dXJGPOWMSbJGJMUERHhhLRKNa6Xl6YS5OfDZF2ys0mKDg3glqRoPt6URfbJwvpP\ncCJHFIaDQHS17fa2fTWIyHDgSWCcMea/47SMMQdtf6YDK4C+DsiklEtLOXyaxbuO8j+XdyQkwNfq\nOMoiU4bGIQivLnOtVoMjCsMmIF5EOoqILzABqDG6SET6Am9SVRRyqu1vJSJ+tufhwGXAbgdkUsql\n/WvZXoL8fLj7so5WR1EWigyuWrb10y3ZZB47Y3Wc/7K7MBhjyoEpwGIgBVhgjNklIs+IyNlRRs8D\nLYBPzhmW2h1IFpFtwHLgOWOMFgbl0X4+cprvdh7hrstiCQ5oZnUcZbH7r+qMj5fwmgv1Nfg44k2M\nMYuARefs+1O158PrOG8t0MsRGZRyF68uSyPQ15u7L9fWgoLWLf25fWAH5q7L5MGhcXQIC7Q6kt75\nrJQzpR7NZ9HOw0y6NFb7FtR//fbKTnh7icuMUNLCoJQTvfpDGs2beXPPEB2JpP6/Ni39uW1ADAu3\nHCTrhPUjlLQwKOUkaTn5fLP9EHcOjiU0UFsLqqbfXdkZLxH+vcL6VoMWBqWc5NUf0vD38ebeIdq3\noH6pbbA/EwZE80lytuX3NWhhUMoJ9uUW8PW2Q9w5uANhepezqsN9V51tNVg7h5IWBqWc4LUf0vDz\n8eZevctZnUdkcHNu6d+eT5KzOHjKujmUtDAo1cjScwv4cutBfj0oRudEUvW676qq6ddft7CvQQuD\nUo1s5vJ9NPP2YvIVOoOqql9USHNuuiSaBZuyLZt5VQuDUo1o//EzfLH1ILcP7EBEkLYW1IW5/6rO\nVBrDGxb1NWhhUKoRvfZDGj5ewu+u1L4FdeGiQwO46ZL2fLQpi6Onnb/KmxYGpRrJgeOFLPzpIBMH\nxNBaV2dTDfTA1XFUVFqzypsWBqUayczlaXh7Cffp6mzqIkSHBnBD3yg+2niAHCe3GrQwKNUIsk4U\n8tmWbCb2j9a1nNVFmzI0jvJKw5sr0536uVoYlGoE/16RhpeIruWs7NIhLJDrEqOYt2E/ufkl9Z/g\nIFoYlHKw7JOFfJKcza39o4kMbm51HOXmpgyNo7S8krdWOq+vwSGFQURGicgeEUkTkem1vO4nIh/b\nXt8gIrHVXnvctn+PiIx0RB6lrPT6in2IoH0LyiE6hle1Gt5fv59jBc5pNdhdGETEG5gJjAYSgIki\nknDOYXcDJ40xccBLwN9t5yZQtRRoD2AU8G/b+ynllg6dKmJBcha3JEXTLkRbC8oxHrC1Gt52Ul+D\nI1oMA4A0Y0y6MaYUmA+MP+eY8cBc2/NPgWEiIrb9840xJcaYDCDN9n5KuaWzQwu1taAcqXNEC37V\npx3vr9/PiTOljf55jigMUUBWte1s275aj7GtEZ0HhF3guQ6zaMdhPli/v7HeXjVxh/OK+HhTFjdd\n0p72rQKsjqM8zJSr40iKDSW/uKzRP8shaz47g4hMBiYDxMTEXNR7fLP9ECtTj3Ft70hdVlE53Bsr\n9lFpDPfbJkFTypHi2wTx3m+cc0HFES2Gg0B0te32tn21HiMiPkAwcPwCzwXAGPOWMSbJGJMUERFx\nUUEfGhZPQUk576zOuKjzlarL0dPFfLQpixv7tSc6VFsLyr05ojBsAuJFpKOI+FLVmfzVOcd8BUyy\nPb8J+MEYY2z7J9hGLXUE4oGNDshUq25tWzKqR1veXZNJXmHjN8dU0/HGj/uoqDQ8cLW2FpT7s7sw\n2PoMpgCLgRRggTFml4g8IyLjbIfNBsJEJA14FJhuO3cXsADYDfwHeMAYU2FvpvN5aFg8+SXlvLNG\nWw3KMXJOF/PhhgPc0DeKmDBtLSj355A+BmPMImDROfv+VO15MXBzHefOAGY4IseFSGjXkmsS2vDO\nmgx+c3lHgps3c9ZHKw/15sp0yrW1oDxIk7zz+aFh8eQXlzNnTabVUZSby80vYd6G/YxPbEdseKDV\ncZRyiCZZGHpGBTO8extmr07ntBOGfinP9faqdErLK3lwaLzVUZRymCZZGACmDovndHE5c7XVoC7S\nsYIS3l+3n/GJUXTU1oLyIE22MPRqH8ywbq2ZtTrDKTeMKM/z9qp0issrtG9BeZwmWxgApg6PJ6+o\njPfW6d3QqmFOnCnl/XX7+VXvdsS1bmF1HKUcqkkXht7tQ7i6awRvr0qnoKTc6jjKjcxalU5RWQUP\nDdPWgvI8TbowAEwd3oVThWW8ty7T6ijKTZw8U8rctZmM7RVJXOsgq+Mo5XBNvjAkRodwZZcI3l6Z\nzhltNagL8M6aDM6UVuhIJOWxmnxhgKq+hpOFZbyvM6+qeuQVljFnTSZjerWla1ttLSjPpIUB6BfT\niiHx4by9Mp3CUm01qLrNXpNBfkk5Dw3T1oLyXFoYbB4eHs/xM6W6XoOqU15RGe+uyWBUj7Z0a9vS\n6jhKNRotDDaXdAjl8rhw3lqZTlFpo87jp9zUnDWZ5BeX86CORFIeTgtDNQ8Ni+dYQSnzNmirQdV0\nuriM2avTGZHQhh7tgq2Oo1Sj0sJQzYCOoQzuFMYbP2qrQdU0d00mp4vLmap9C6oJ0MJwjqnD4zlW\nUMKHGw9YHUW5iIKScmatzmB499b0jNLWgvJ8WhjOMahTGAM7hvLGj/soLtNWg4K5azPJKyrTkUiq\nybCrMIhIqIgsEZG9tj9b1XJMooisE5FdIrJdRG6t9tocEckQka22R6I9eRxl6vB4cvNLmK+thibv\ndHEZb61MZ1i31vRuH2J1HKWcwt4Ww3RgmTEmHlhm2z5XIXCnMaYHMAp4WUSq/wubZoxJtD222pnH\nIQZ3CmNAbCiva6uhyXtndQZ5RWU8MqKL1VGUchp7C8N4YK7t+VzgunMPMMakGmP22p4fAnKACDs/\nt1GJCFOHx3P0dAkfb8qyOo6yyKnCUmavymBkjzbat6CaFHsLQxtjzGHb8yNAm/MdLCIDAF9gX7Xd\nM2yXmF4SET878zjMpZ3DGNAxlNeWp+kIpSbq7VXpFJSWa2tBNTn1FgYRWSoiO2t5jK9+nDHGAOY8\n7xMJvA/8jzGm0rb7caAb0B8IBR47z/mTRSRZRJJzc3Pr/2Z2EhF+P6ILufklejd0E3S8oIR311TN\noKp3Oaumpt7CYIwZbozpWcvjS+Co7Qf+2R/8ObW9h4i0BL4FnjTGrK/23odNlRLgXWDAeXK8ZYxJ\nMsYkRUQ450rUwE5hDIkP5/Uf9+l6DU3MmyvTKS6r4OHh2lpQTY+9l5K+AibZnk8Cvjz3ABHxBT4H\n3jPGfHrOa2eLilDVP7HTzjwO9/trunLiTClz1mRYHUU5SU5+Me+ty2R8YpSuzqaaJHsLw3PACBHZ\nCwy3bSMiSSIyy3bMLcAVwF21DEudJyI7gB1AOPCsnXkcLjE6hOHd2/DmynTyCnVt6Kbg9RX7KKsw\nepezarJ87DnZGHMcGFbL/mTgHtvzD4AP6jh/qD2f7yyPjujCmH+tYtbqdH5/TVer46hGdDiviHkb\nDnBjvyhiwwOtjqOUJfTO5wuQ0K4lY3tH8s7qDI4XlFgdRzWimcvTqKw0ujqbatK0MFygR4bHU1RW\nwZsr062OohpJ9slCPt6UxS39o4kODbA6jlKW0cJwgeJaB3Fd3yjmrs0k53Sx1XFUI3h1WRqCMOVq\nXW9BNW1aGBpg6rB4KioNM5enWR1FOdi+3AI+3ZLNbQNjaBfS3Oo4SllKC0MDdAgL5OakaD7ceIDs\nk4VWx1EO9M/v9+Dn48WUodpaUEoLQwM9ODQOQXh1mbYaPMW2rFMs2nGEe4Z0IryFy8zKopRltDA0\nULuQ5tw+KIZPNmeRlpNvdRzlAM8v3kNooC/3DulodRSlXIIWhosw5eo4Anx9+Md/9lgdRdlp9d5j\nrE47xgNXxxHk38zqOEq5BC0MFyGshR+/vaIT3+8+yub9J6yOoy6SMYZ/LP6ZqJDm3D4wxuo4SrkM\nLQwX6e4hHYkI8uO5736mamJZ5W6+23mE7dl5PDKiC/7NvK2Oo5TL0MJwkQJ8fXh4eDybMk+yLKXW\nSWWVCyuvqOSFxXuIb92C6/tGWR1HKZeihcEOtyRF0yk8kL//52cqKrXV4E4+2ZxN+rEzTBvZFW8v\nsTqOUi5FC4Mdmnl7MW1kV/bmFPDZ5myr46gLVFxWwctLU+kXE8KIhPMuOqhUk6SFwU6jeralT3QI\nLy5JpbhMlwB1B7NWpXP0dAmPjepG1VIgSqnqtDDYSUR4fHQ3jpwuZs7aTKvjqHrk5Bfz+op9jOzR\nhoGdwqyOo5RL0sLgAIM6hTG0W2v+vTyNk2dKrY6jzuOlJXspKa9k+ujuVkdRymXZVRhEJFRElojI\nXtufreo4rqLa6m1fVdvfUUQ2iEiaiHxsWwbULT02qhsFJeW8smyv1VFUHfYcyefjTQe4Y3AHOuoi\nPErVyd4Ww3RgmTEmHlhm265NkTEm0fYYV23/34GXjDFxwEngbjvzWKZr2yBuGxjD++v361QZLmrG\nohSC/Jvpkp1K1cPewjAemGt7Phe47kJPlKpev6HApxdzvit6ZHgXAny9efbbFKujqHP8mJrLytRc\nHhwaR0iA2zZMlXIKewtDG2PMYdvzI0BdY//8RSRZRNaLyNkf/mHAKWNMuW07G6jzTiMRmWx7j+Tc\n3Fw7YzeOsBZ+PDQ0nhV7clm+R296cxXlFZXM+HY3sWEB3Dk41uo4Srm8eguDiCwVkZ21PMZXP85U\nzQtR111eHYwxScBtwMsi0rmhQY0xbxljkowxSREREQ093WkmXRpLbFgAM75Noayi0uo4CliQnE3q\n0QKmj+6Gr4+Ot1CqPvX+KzHGDDfG9Kzl8SVwVEQiAWx/1vprsjHmoO3PdGAF0Bc4DoSIiI/tsPbA\nQbu/kcU7FTfRAAAPXklEQVR8fbx4Ykx30nIK+GjjAavjNHmni8t4cUkqA2JDGdmjrdVxlHIL9v76\n9BUwyfZ8EvDluQeISCsR8bM9DwcuA3bbWhjLgZvOd747GpHQhks7h/HiklTyCsusjtOkvbJ0L8fP\nlPDHaxP0ZjalLpC9heE5YISI7AWG27YRkSQRmWU7pjuQLCLbqCoEzxljdtteewx4VETSqOpzmG1n\nHpcgIvzx2gROF5Xx8rJUq+M0WalH85mzNpOJA2Lo1T7Y6jhKuQ2f+g+pmzHmODCslv3JwD2252uB\nXnWcnw4MsCeDq+oe2ZJb+8fw/rr9TBwQQ5c2QVZHalKMMfz5q10E+fsw7ZquVsdRyq1oT1wjmjay\nKy38fXjqi526ZoOTLdpxhLX7jvOHa7rSKlCHpyrVEFoYGlFooC+PjerGxowTfP6T2/eru43C0nKe\n/XY3Pdq1ZOIAXZlNqYbSwtDIbk2KJjE6hP9blEJekXZEO8PM5WkczivmL+N66FoLSl0ELQyNzMtL\nePa6npw4U8o/v99jdRyPl3HsDG+vzOCGflEkxYZaHUcpt6SFwQl6RgVzx6AOfLB+PzsP5lkdx2MZ\nY3jy8x34NfNi+uhuVsdRym1pYXCSR6/pSmigH09+sZNKXQa0USzccpC1+44zfXQ3Wgf5Wx1HKbel\nhcFJgps344kx3diWdYp5G/ZbHcfjHC8o4dlvd5PUoRUT+2uHs1L20MLgRNf3jeLyuHCe++5nDp4q\nsjqOR5nxbQoFJeX83w298NIOZ6XsooXBiUSEv93Qi0oDT36+Q+9tcJBVe3NZ+NNB7ruys95IqJQD\naGFwsujQAKaN7MqKPbl8ufWQ1XHcXlFpBU9+vpNO4YHcf3Wc1XGU8ghaGCww6dJY+saE8Jevd3Gs\noMTqOG7t+cV7OHCikBnX98K/mbfVcZTyCFoYLODtJfzjxt6cKangL1/vrv8EVav16cd5Z00GkwZ3\nYHDnMKvjKOUxtDBYJL5NEFOGxvH1tkP8Z+fh+k9QNRSUlDPt023EhgXwmN6zoJRDaWGw0H1XdaZX\nVDCPL9xBzuliq+O4lf9blEL2ySJeuLkPAb52TRKslDqHFgYLNfP24qVbEykqq2Dap9t1lNIF+jE1\nlw83HODeIZ102gulGoEWBovFtW7BE2O682NqLu+v1xvf6nOqsJTHPt1OXOsWPDqii9VxlPJIdhUG\nEQkVkSUistf2Z6tajrlaRLZWexSLyHW21+aISEa11xLtyeOu7hjUgSu7RDDj2xTScgqsjuOyjDE8\n9tl2jhWU8OItfXQUklKNxN4Ww3RgmTEmHlhm267BGLPcGJNojEkEhgKFwPfVDpl29nVjzFY787gl\nEeH5m3oT4OvNIx9vpbS80upILumDDQdYvOsoj43qRu/2IVbHUcpj2VsYxgNzbc/nAtfVc/xNwHfG\nmEI7P9fjtG7pz99u6M2Og3n87bsUq+O4nJTDp/nrN7u5sksEd1/e0eo4Snk0ewtDG2PM2bGWR4A2\n9Rw/AfjonH0zRGS7iLwkIn51nSgik0UkWUSSc3Nz7Yjsukb1bMtdl8by7ppMvtuhQ1jPKiwt58GP\nfiK4eTP+eUsfnQtJqUZWb2EQkaUisrOWx/jqx5mqITV1DqsRkUigF7C42u7HgW5AfyAUeKyu840x\nbxljkowxSREREfXFdltPjOlOn+gQ/vfT7WQeO2N1HMsZY3jqi53syy3gpVsSCW9R5+8OSikHqbcw\nGGOGG2N61vL4Ejhq+4F/9gd/znne6hbgc2PMf9e3NMYcNlVKgHeBAfZ9Hffn6+PFzNv64uUl3D9v\nC8VlFVZHstR76/azcMtBpg6L5/L4cKvjKNUk2Hsp6Stgku35JODL8xw7kXMuI1UrKkJV/8ROO/N4\nhPatAnjp1j7sPnyaJz/f2WTvb9iYcYK/frOb4d1b89DQeKvjKNVk2FsYngNGiMheYLhtGxFJEpFZ\nZw8SkVggGvjxnPPnicgOYAcQDjxrZx6PMbRbG6YOi+ezLdnMWpVhdRynO5JXzP3zNhMTGsCLtyZq\nv4JSTmTXXALGmOPAsFr2JwP3VNvOBKJqOW6oPZ/v6aYOiyctp4D/+y6Fzq0DGdqtvr59z1BcVsFv\nP9hMUWkFH907iJb+zayOpFSTonc+uzAvL+GFm/vQo11LHvpoK6lH862O1OgqKg0Pz9/K9uxTvHhr\nIvG68I5STqeFwcU19/Xm7TuTaO7rzW/mbPL4yfb+tiiF/+w6wlNjExjZo63VcZRqkrQwuIHI4ObM\nujOJE2dKmfTuJvKKyuo/yQ3NWZPBrNUZ3HVprN7EppSFtDC4iT7RIbx5xyWk5eRz73vJHjeMdeGW\nbP7yzW5GJLThj9cmWB1HqSZNC4MbGRIfwT9vSWRT5gmmfLjFY+ZU+m7HYf7wyTYGdwrj1Yl98dYR\nSEpZSguDmxnXpx3PjO/J0pQc7p+3mZJy9245LP85h4fm/0TfmFa8fWeSzpiqlAvQwuCG7hjUgb+O\n78HSlBzu+2CL2xaH73YcZvL7yXRtG8Q7d/Un0E9XYlPKFWhhcFN3DI7l2et68sPPOdwzN5mCknKr\nIzXIJ8lZPPDhFnq3D2HePYMIbq73KijlKrQwuLFfD+rAP27qzdp9x7n1zXVuMZTVGMOsVelM+3Q7\nl8WF8/7dA7QoKOVitDC4uVuSopk1KYmMY2e4/t9rSctx3ZvgSssreXzhDp79NoXRPdsya1ISAb56\n+UgpV6OFwQNc3bU1H08eTEl5JeNfW8MiF1zL4XhBCb+evYH5m7KYcnUcM2/rh5+PdjQr5Yq0MHiI\nXu2D+frBy+jaNoj7523hma93U1bhGsNZ1+07zph/rWJr1ilemZDIH0Z21UnxlHJhWhg8SGRwc+ZP\nHsxdl8byzpoMrv/3GvYcse7SUkl5Bf/8fg+3zVpPoK8PC++7lPGJv5hLUSnlYrQweBhfHy/+PK4H\nb/y6H4dPFXPtq6v417K9Tr9TelPmCcb+azWv/pDGTf3a8/WDl9MzKtipGZRSF0d7/jzUqJ6R9I8N\n5U9f7eLFJaksSM7iiTHdGd2zLVXrIjWOA8cLeXHJHr7Yeoj2rZoz53/6c1XX1o32eUopx7OrxSAi\nN4vILhGpFJGk8xw3SkT2iEiaiEyvtr+jiGyw7f9YRHztyaNqCmvhx8zb+jHvnoEE+vpw/7wtXPvq\nar7ZfoiKSseuCpeeW8BTX+xg2Isr+M+uI9x/VWe+f+QKLQpKuSGxZ9lIEekOVAJvAn+wLdBz7jHe\nQCowAsgGNgETjTG7RWQBsNAYM19E3gC2GWNer+9zk5KSTHLyLz5KnUd5RSULfzrIGyv2kX7sDFEh\nzbnxkvbc2C+KDmGBF/WeZ0rKWfZzDgu3ZLNiTy6+3l7ceEl7Hh4eT5uW/g7+Bkope4nIZmNMnb/E\n//c4R6wnLCIrqLswDAb+bIwZadt+3PbSc0Au0NYYU37uceejheHiVVQavt91hA83HmB12jGMgbjW\nLbg8Lpyk2FZ0bRNEbHggzbxrNiaNMeTkl5Cee4YtB06SnHmCtfuOU1JeSesgP24bGMPtAzsQEeRn\n0TdTStXnQguDM/oYooCsatvZwEAgDDhljCmvtl+HrDQyby9hdK9IRveK5NCpIhbtOMzKvceYv+kA\nc9ZmAiACQX4+BAc0QxBKyivIKyqjuOz/D3+Na92CCf2jGdMrkqTYUJ0RVSkPUm9hEJGlQG1LaT1p\njPnS8ZHqzDEZmAwQExPjrI/1aO1CmnPPkE7cM6QTJeUVpOUUkHo0n4xjheQVlnKqqAwvEfx8vAjy\n9yEmNIDo0AB6tw8hNFC7g5TyVPUWBmPMcDs/4yAQXW27vW3fcSBERHxsrYaz++vK8RbwFlRdSrIz\nkzqHn483PdoF06OdDilVqqlzxn0Mm4B42wgkX2AC8JWp6txYDtxkO24S4LQWiFJKqdrZO1z1ehHJ\nBgYD34rIYtv+diKyCMDWGpgCLAZSgAXGmF22t3gMeFRE0qjqc5htTx6llFL2c8ioJGfTUUlKKdVw\nFzoqSafEUEopVYMWBqWUUjVoYVBKKVWDFgallFI1aGFQSilVg1uOShKRXGB/I7x1OHCsEd7XWdw9\nP7j/d3D3/KDfwRU0Vv4OxpiI+g5yy8LQWEQk+UKGcrkqd88P7v8d3D0/6HdwBVbn10tJSimlatDC\noJRSqgYtDDW9ZXUAO7l7fnD/7+Du+UG/gyuwNL/2MSillKpBWwxKKaVq0MJwDhH5q4hsF5GtIvK9\niLSzOlNDiMjzIvKz7Tt8LiIhVmdqKBG5WUR2iUiliLjNyBIRGSUie0QkTUSmW52noUTkHRHJEZGd\nVme5GCISLSLLRWS37e/PVKszNZSI+IvIRhHZZvsOf7Ekh15KqklEWhpjTtuePwQkGGN+Z3GsCyYi\n1wA/2NbR/juAMeYxi2M1iIh0ByqBN6ljLXFXIyLeQCowgqplajcBE40xuy0N1gAicgVQALxnjOlp\ndZ6GEpFIINIYs0VEgoDNwHVu9v9AgEBjTIGINANWA1ONMeudmUNbDOc4WxRsAgG3qpzGmO+rraO9\nnqqV8dyKMSbFGLPH6hwNNABIM8akG2NKgfnAeIszNYgxZiVwwuocF8sYc9gYs8X2PJ+q9V/cah15\nU6XAttnM9nD6zyAtDLUQkRkikgXcDvzJ6jx2+A3wndUhmogoIKvadjZu9kPJk4hILNAX2GBtkoYT\nEW8R2QrkAEuMMU7/Dk2yMIjIUhHZWctjPIAx5kljTDQwj6rV51xKffltxzwJlFP1HVzOhXwHpS6G\niLQAPgMePucKgFswxlQYYxKpau0PEBGnX9bzcfYHugJjzPALPHQesAh4uhHjNFh9+UXkLuBaYJhx\n0U6kBvw/cBcHgehq2+1t+5QT2a7LfwbMM8YstDqPPYwxp0RkOTAKcOqAgCbZYjgfEYmvtjke+Nmq\nLBdDREYB/wuMM8YUWp2nCdkExItIRxHxBSYAX1mcqUmxddzOBlKMMS9anediiEjE2ZGEItKcqsEM\nTv8ZpKOSziEinwFdqRoVsx/4nTHGbX7zE5E0wA84btu13p1GVQGIyPXAq0AEcArYaowZaW2q+onI\nGOBlwBt4xxgzw+JIDSIiHwFXUTWz51HgaWPMbEtDNYCIXA6sAnZQ9e8X4AljzCLrUjWMiPQG5lL1\nd8gLWGCMecbpObQwKKWUqk4vJSmllKpBC4NSSqkatDAopZSqQQuDUkqpGrQwKKWUqkELg1JKqRq0\nMCillKpBC4NSSqka/h+rmznkN3y53wAAAABJRU5ErkJggg==\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "# exemplo 1a\n", "import numpy as np # obtém acesso aos arrays do numpy\n", "import matplotlib.pyplot as plt # funções de plotagem\n", "\n", "x = np.arange(-3.14, 3.14, 0.01) # cria eixo x de dados\n", "y = np.sin(x) # calcula eixo y de dados\n", "plt.plot(x, y) # cria plot" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Como importar tudo isso: matplotlib, pylab, pyplot, numpy \n", "\n", "O sub-módulo `matplotlib.pyplot` fornece uma interface orientada a objetos para a biblioteca de plotagem. Muitos dos exemplos na documentação do Matplotlib seguem a convenção de importação do `matplotlib.pyplot` como `plt` e o `numpy` como `np`. Evidentemente, a decisão sobre importar a biblioteca `numpy` com o mome `np` (como é frequentemente feito nos exemplos da documentação), ou com o nome `N` como feito neste texto (e nos primórdios do `Numeric`, predecessor do NumPy), ou ainda com qualquer outro nome, é uma decisão plena do usuário. Da mesma forma, é uma questão de gosto pessoal se o submódulo de plotagem `matplotlib.pyplot` deve ser importado como `plt`, como é feito na documentação do Matplotlib, ou como `plot`, se a argumentação for por uma escrita mais clara, etc." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Como sempre, um equilíbrio deve ser encontrado entre preferências pessoais e consistência com a prática comum ao escolher esses nomes. A consistência com o uso comum é, certamente, mais importante se o código estiver propenso a ser usado por outros ou publicado.\n", "\n", "Uma plotagem quase sempre precisa de *arrays* de dados numéricos e é por esta razão que o módulo NumPy é bastante usado: ele fornece manipulação rápida e eficiente de memória em Python. \n", "\n", "Poderíamos, portanto, ter escrito o exemplo 1a acima como o exemplo 1b (que é idêntico em funcionalidade ao anterior na criação da mesma plotagem):" ] }, { "cell_type": "code", "execution_count": 3, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "[]" ] }, "execution_count": 3, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "# exmplo 1b\n", "import pylab\n", "import numpy as N\n", "\n", "x = N.arange (-3.14, 3.14, 0.01)\n", "y = N.sin(x)\n", "\n", "pylab.plot(x, y)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Pelo fato de `numpy.arange` e `numpy.sin` serem objetos já importados para o espaço de nomes (conveniente) `pylab`, também poderíamos ter escrito o exemplo 1c:" ] }, { "cell_type": "code", "execution_count": 4, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "[]" ] }, "execution_count": 4, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "# exemplo 1c\n", "import pylab as p\n", "\n", "x = p.arange(-3.14, 3.14, 0.01)\n", "y = p.sin(x)\n", "\n", "p.plot(x, y)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Se realmente quisermos reduzir a digitação de caracteres, também poderíamos importar toda a funcionalidade do módulo conveniente `pylab` e reescrever o código como no exemplo 1d:" ] }, { "cell_type": "code", "execution_count": 5, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "# exemplo 1d\n", "from pylab import * # geralmente não recomendado\n", " # OK para testes interativos\n", "\n", "x = arange(-3.14, 3.14, 0.01)\n", "y = sin(x)\n", "plot(x, y)\n", "show()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Isto pode ser extremamente conveniente, mas vem com um grande e \"salutar\" aviso:\n", "\n", "- Enquanto usar `from pylab import *` é aceitável no prompt de comando para criar gráficos interativamente e analisar dados, isto nunca deve ser usado como regra de uso nos scripts de plotagem.\n", "\n", "- O Pylab fornece mais de 800 objetos diferentes que são todos importados para o espaço de nomes global quando executamos o comando `from pylab import *`. Isto não é uma boa prática, e pode gerar conflitos com outros objetos que já existam ou com os que serão criados mais tarde.\n", "\n", "- Como uma regra de uso: nunca invoque `from somewhere import *` em programas que salvamos. Esta é uma opção razoável no *prompt* de comando.\n", "\n", "Nos exemplos a seguir, usamos a interface do `pylab` para as rotinas de plotagem, mas isto é puramente uma questão de gosto e hábito. De nenhuma maneira, é a única opção a seguir (note que os autores do Matplotlib recomendam o estilo de importação do exemplo 1a. Veja também: [Matplotlib FAQ](http://matplotlib.sourceforge.net/faq) e [Matplotlib, pylab, and pyplot: how are they related?](http://matplotlib.sourceforge.net/faq/usage_faq.html#matplotlib-pylab-and-pyplot-how-are-they-related))" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Modo `inline` do IPython\n", "\n", "Dentro do Jupyter Notebook ou Qtconsole, podemos usar o comando mágico `%matplotlib inline` para fazer novas plotagens aparecerem dentro do próprio console ou notebook. Em vez disso, para forçar janelas *pop-up*, use `%matplotlib qt`.\n", "\n", "Há também o nome mágico `%pylab`, o qual não só irá mudar para a plotagem `inline`, mas também executará automaticamente `from pylab import *`." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Salvando figuras como arquivos\n", "\n", "Depois de ter criado uma figura (usando o comando `plot`) e adicionado legendas, rótulos, etc, você tem duas opções para salvar a plotagem.\n", "\n", "1. Exibir a figura (usando `show`) e salvá-la de forma *interativa* clicando no botão de salvamento .\n", "\n", "2. Sem exibir a figura, salvá-la do seu código Python diretamente para arquivo. O comando a usar é `savefig`. O formato é determinado pela extensão do nome do arquivo que você fornece. Aqui está um exemplo (`pylabsavefig.py`). " ] }, { "cell_type": "code", "execution_count": 6, "metadata": { "collapsed": true }, "outputs": [], "source": [ "# pylabsavefig.py\n", "\n", "import pylab\n", "import numpy as N\n", "\n", "x = N.arange(-3.14, 3.14, 0.01)\n", "y = N.sin(x)\n", "\n", "pylab.plot(x, y, label='sin(x)')\n", "pylab.savefig('static/data/15-meuplot.png') # salva arquivo png \n", "pylab.savefig('static/data/15-meuplot.eps') # salva arquivo eps\n", "pylab.savefig('static/data/15-meuplot.pdf') # salva arquivo pdf\n", "pylab.close()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Uma nota sobre formatos de arquivo: escolha o formato de arquivo `png` se você pretende incluir o seu gráfico em um documento do Word ou em uma página web. Escolha os formatos `pdf` ou `eps` se você pretende incluir a figura em um documento LaTeX - dependendo se você for compilar usando `latex` (requer `eps`) ou `pdflatex` (pode usar `pdf` [melhor] ou `png`). Se a versão do Microsoft Word (ou outro software de processamento de texto que você usa) puder lidar com arquivos `pdf`, é melhor usar `pdf` do que `png`.\n", "\n", "Tanto `pdf` quanto `eps` são formatos vetoriais de arquivo, o que significa que podemos ampliar a imagem sem que ela perca a qualidade (as linhas ainda serão nítidas). Formatos de arquivos como `png`, `jpg`, `gif`, `tif` e `bmp` salvam a imagem em formato de mapa de bits (*bitmap*), ou seja, uma matriz de valores de cor, que aparecerá desfocada ou pixelizada ao ser ampliada ou impressa em alta resolução." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Modo interativo\n", "\n", "O Matplotlib pode ser executado de dois modos:\n", "\n", " - não interativo (padrão)\n", " \n", " - interativo.\n", " \n", "No modo não interativo, nenhum plot será exibido até que o comando `show()` tenha sido chamado. Neste modo, o comando `show()` deve ser a última declaração do seu programa. \n", "\n", "No modo interativo, os plots serão imediatamente mostrados depois que o comando de plotagem tiver sido chamado. \n", "\n", "Pode-se ativar o modo interativo com o comando `pylab.ion()` e desativá-lo com o comando `pylab.ioff()`. O comando mágico `%matplotlib` do IPython também habilita o modo interativo." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Lidando com os detalhes de sua plotagem\n", "\n", "O Matplotlib permite-lhe fazer o \"ajuste fino\" de suas plotagens nos mínimos detalhes. Aqui está um exemplo:" ] }, { "cell_type": "code", "execution_count": 7, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "" ] }, "execution_count": 7, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAU4AAAFNCAYAAABvx4bHAAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAIABJREFUeJzsnXd8VFX6/99POoEUkpBKQuiQQoDQBCs2qqCigqtiW3fd\ndd3vuruWXX+r6+rq9uKuW+xlFUQRqSJSVKS3EAi9JqSQAqSQOjm/P+4EQ0jPzNxJ7nm/XvPKzL3n\nnvOZOzNPznOec54jSik0Go1G03o8zBag0Wg0nQ1tODUajaaNaMOp0Wg0bUQbTo1Go2kj2nBqNBpN\nG9GGU6PRaNqINpyaDiEiYSKyS0RGObGNvSJydTuvjRcRJSJeDtBxr4is72g97Wj3DhFZX/89iEiE\niHwlIiUi8icR+YWIvOZqbValw18mjbmIyHEgArDVO/yWUuqRFq5TwECl1OEOtO0NvA38QCm1rb31\nNKjzLSBLKfV03TGlVGK9888CA5RSdzmiPXdHREKBp4EblVI19U49BBQAgUpPxnY52nB2DaYrpb5w\ndaNKqWpgqqvb7eqIiFc9I5kAfFcpld2gWB8gQxtNc9CuehdGRAaIyJcick5ECkRkvv34V/YiaSJS\nKiJ32I9Ps7vdZ0Vkg4gMa6buISKySkSKROSAiNzeTNloEVlsL3tYRL7bRLmHgO8Aj9t1LbEfPy4i\n14nIJOAXwB3282n1z9er51kRea8jWuxlQ+1li0VkC9C/wfnxIrLVfn+3isj4ZuoaKSI77a71AhGZ\nLyLP289dLSJZIvKEiOQCb4pITxFZCiwEVojIUhHpbS//FjC33n26ruF7FpHL7Z/hWRHJFJF77ceD\nROQdEckXkRMi8rSIaDvQVpRS+tGJH8Bx4Lomzn0A/BLjH6QfcHm9cwrD5a17PQI4DYwFPDF+mMcB\n30bq7Q5kAvdheC0jMNzGhCZ0fAW8YtcwHMgHJjZR9i3g+abeI/As8F5z96B+GSDe/l692qFlHvCh\n/f0mAaeA9fZzIcAZ4G77PZhjfx3aSD0+wAngx4A3cAtQVfc+gauBGuB3gC/QDQgFZgH+QACwAFjU\n1H1q8J77ACV2Td72uobbz70DfGqvMx44CDxg9ve4sz30f5quwSJ7z6LuUdeLqsb4EUUrpSqUUs0F\nNh4C/qOU2qyUsiml3gYqgXGNlJ0GHFdKvamUqlFK7QQ+Bm5rWFBEYoEJwBN2DbuA14B72v1u20lb\ntIiIJ3Ar8CulVJlSag/GeG4dU4FDSql37ffgA2A/ML2RpsdhGNe/K6WqlVILgS0NytQCzyilKpVS\n5UqpQqXUR0qp80qpEuAF4KpWvtU7gS+UUh/Y2ytUSu2yv6fZwFNKqRKl1HHgTxjGX9MGtOHsGsxU\nSgXXe7xqP/44IMAWe2T6/mbq6AP8tL4BBmKB6CbKjm1Q9jtAZCNlo4Ei+4+/jhNATBvfoyNoi5Ze\nGMYus0HZ+nWd4GKaqisaOKXsXT47mQ3K5CulKupeiIifiPzNPgySCSwFgu3GryVigSONHA/D6IHW\n123WZ9Gp0YazC6OUylVKfVcpFQ18D3hFRAY0UTwTeKGBAfa396QaK/tlg7I9lFIPN1I2GwgRkYB6\nx+Iw3N5GZbf0tho5Vobh0tbRmAFvq5Z8DPc5tkHZ+nX1aXBNU3XlADEiIvWOxTYo0/B9/RRjeGCc\nUiqWb3uyQstk0mA81k4B33ohLWnWNIM2nF0YEbmtLqCAMf6mMFxCgDygX73irwLfF5GxYtBdRKY2\nMDJ1LAUGicjdIuJtf4wWkaENCyqlMoENwIv2XtQw4AGg0eBNI7oaOx/fIKCxC5ht1zEKY2zwEtqi\nRSllwwjMPCsi/iKSgDHuW8dy+z24U0S87AG2BIx705CNGNPFHrGXnQGMaeY9AgRjGO4KEQkBftVC\n+fr8D7hORG63txcqIsPt7+lD4AURCRCRPsBjjb1/TfNow9k1WGKPrtY9PrEfHw1sFpFSYDHwY6XU\nUfu5Z4G37a727cqYh/ld4B8YRvYwcG9jjdld3RswxsuygVy+DWw0xhyMQEQ28AnGWF5T06deBxLs\nuhY1cn6B/W+hiOywP/9/GD2sM8CvgfebqLutWh4BemC8v7eAN+tOKKUKMcZ6fwoUYgyLTFNKFTSs\nRClVhREQegA4C9yFYWArm9H5F4z7mQ9sAj5rpmzD9k4CU+zaijD+saTYT/8Io4d+FFiPca/eaG3d\nGgO5eNhFo9G4AhHZDPxbKfVmi4U1bofucWo0LkBErhKRSLvrPBcYRht6kRr3Qq8c0mhcw2C+nRN6\nFJillMoxV5KmvWhXXaPRaNqIdtU1Go2mjWjDqdFoNG2kU45xhoWFqfj4+A7XU1ZWRvfu3TsuyIm4\nu0Z31wfur1Hr6ziO0rh9+/YCpVSvFguavVi+PY/U1FTlCNauXeuQepyJu2t0d31Kub9Gra/jOEoj\nsE3pJB8ajUbjeLTh1Gg0mjaiDadGo9G0kU4ZHGqM6upqsrKyqKioaLmwnaCgIPbt2+dEVR2nLRr9\n/Pzo3bs33t7eTlal0VibLmM4s7KyCAgIID4+nouzdzVNSUkJAQGNJf9xH1qrUSlFYWEhWVlZ9O3b\n1wXKNBrr0mVc9YqKCkJDQ1ttNLsaIkJoaGibetwajaZ9dBnDCVjWaNZh9fev0bgKhxhOEXlDRE6L\nyJ4mzouI/F2MXQV3i8jIeufmisgh+2NuY9drNBqNO+GoHudbwKRmzk8GBtofDwH/ArBntn4GY2fF\nMcAzItLTQZpM58EHHyQjI6PFcn/961955513mi0ze/ZsDh065ChpGo2mAzgkOKSU+kpE4pspMgN4\nxz4zf5OIBItIFMa2qKuUUkUAIrIKwwA3ts9Np+O1115rsUxNTQ1vvPEGO3bsaLbcww8/zO9//3te\nffXVZstpgIpiyNsDJTlQdZ7wvGNwwgd6DQH/ELPVORWlFMcKyjhRdJ6i0ioUENTNm7gQfwaE98DT\nQw/nOAJXRdVjuHhXvyz7saaOX4KIPITRWyUiIoJ169ZddD4oKIiSkpJGrmwam83W5muaoqysjLlz\n55KdnY3NZuPxxx/n9ddf5/nnn2fkyJFERUXx8MMP89lnn+Hn58e8efMIDw9n9erVJCcnU15eTk1N\nDddeey3PP/88V1xxBc8++ywAzz77LMOHD2fu3LmcOXMGL6+mP7aKiopL7o0zKS0tdWl7TeFTWUhk\n7lp65X9Dj9JjSL29zxIA9v0JgJIefSkMHUtO1HVU+rW8JNkVdPQe1ipFRmEt32RXs6fARklV4+W6\neUFCqCfjorwYEe6JVyuNqLt8xs3hao2dZjqSUuq/wH8BRo0apa6++uqLzu/bt+/CtJ1fL9lLRnZx\ni3XabDY8PVuz2yokRAfyzPTEJs9//vnnxMXFsXLlSgDOnTvHW2+9Rffu3QkICKCsrIwrr7ySP/zh\nDzz++ON88MEHPP300+zcuZNx48Zd0P7uu+8ya9YsXn75ZdasWcMXX3xx4dzAgQM5evQoqampTerw\n8/NjxIgRrXpPjmDdunU0/CxcytlM+OoPkPYB2Kqg9xgYPQeiR0BgDPh0Z8uGrxgzKBJy0gg4soaA\nE/OJP/khDLsDrvkFBMe13I4Tae89VEqxcm8uf/3iEPtzzxPo58X1iTGM7RfCgPAehPXwRRCKzldx\nrKCUrcfPsCojj+27KokJ7sb3r+7HnNGxeHk2P2Jn+mfcClyt0VWG8xQXb4fa237sFIa7Xv/4Ohdp\ncijJycn89Kc/5YknnmDatGlcccUVF5338fFh2rRpAKSmprJq1SoAcnJyGDr0280hExMTufvuu5k2\nbRobN27Ex8fnwrnw8HCys7ObNZyWwVYDm/8Fa1+E2hoYcReM/xGEXLpB5vnusTDwahh4PVz5Mzhz\nArb8F7a+Bns+hit/Dpf/BDw7z8KBE4VlPPlxOhuPFtKvV3f+ckcKk5Oi8PO+tCMQF+rP8Nhgbh7R\nm9/MSGLdgdP8c+1h/t+iPczbcpIXbk5meGywCe+i8+Iqw7kYY2vUeRiBoHNKqRwRWQn8tl5A6Abg\nqY421lzPsD6OnAA/aNAgduzYwfLly3n66ae59tprLzrv7e19YbqQp6cnNTU1AHTr1u2SuZfp6ekE\nBwdz+vRpBgz4dhv0iooKunXr5hC9nZribFhwH2RugkGTYMof2tZr7NkHbnwBxv0AVv0K1r4AB5bD\nra9DaGPbkbsXH27L5JlP9+LlIbxwcxKzR8e1euzS00O4dmgEE4eEs2JPLr9espdbXvmGn904mO9f\n2R8PPQbaKhxiOEXkA4yeY5iIZGFEyr0BlFL/xtiDegrGlrPngfvs54pE5DfAVntVz9UFijob2dnZ\nhISEcNdddxEcHNyqwBDA0KFDOXz48IXXCxcupKioiK+++opp06axevXqC8b94MGDJCUlOUV/p+HE\nBvjwHqg6D7e8Csm3QXvnrwbFwKzXYeh0WPp/8OpEuP0d6HeVYzU7iGpbLb9ZmsE7G08wYUAof7wt\nhaig9v0jFRGmJEdxxcAwfvHJHn7/2QG2Hz/D3+aMoIdvpxnBMw1HRdXntHBeAT9s4twbdIF9ndPT\n0/n5z3+Oh4cH3t7e/Otf/+JnP/tZi9dNnjyZu+++G4CCggKefPJJVq9eTWxsLI888ghPPPEE77//\nPnl5eXTr1o3IyEhnvxX3Zf8yo6cZHAf3LoNegx1Tb+JMiBoGH8yB926BGf+ElNmOqdtBVFTb+P57\n21l3IJ+HruzH4zcObnFssjUE+Hnz99nDGdWnJ88tzeDOVzfx5r2jCe3h6wDVXRf9r8VB3Hjjjdx4\n440XHasf5SstLb3wfNasWcyaNQuAPn36EBoayqFDhxg4cCAHDx68UO7RRx/lvvvuA+D999/ne9/7\nnhPfgZuTNh8WfR+iR8J3Fjh+WlFIP3hgFcy/Cz75vhFoGnmPY9toJ6WVNTz49lY2HyvixVuSmTPG\nscEsEWHu+Hhigrvxw/d3cNu/N/LBQ+OICPRzaDtdiS615LKz8tJLL5GT0/xOscHBwcyda9GFVRmL\nDaMZfznc86nz5mL6BcKd82HAtbD4R7DjXee00wYqqm08+PZWth4/w1/vGO5wo1mf6xIieO/BseQW\nV3DXa5spKmtiXpNGG053YPDgwVx55ZXNlrnvvvuanb/ZZTmyBj66H2JGwZx54NvDue15d4PZ70P/\na2HJj+HgSue21wy2WsWP5+1k09Ei/nRbCjOGNzrF2aGMjg/htbmjOFF0nrlvbKGsssbpbXZGtOHU\nuC/5B+HDuRA2yHDPfVy0YZiXrxEkikw22s/a7pp2G/CbpRms3JvHM9MTmDnC+UazjvH9w3jlzpHs\nzT7H/83fRa1SLV9kMbTh1Lgn5Wfgg9ng6QN3zoNuLp5n6NvDMNY9ehnjnqX5Lm1+wbZM3tpwnPsn\n9OW+Ca7Pr3pdQgT/b1oCqzLy+Phgtcvbd3e04dS4H7U2wz0/exLueM+8lT09wo32y4vgo/uMSfcu\nIC3zLL9ctIfx/UP5xZQhLmmzMe4dH8+cMXEsO1bNivTmx+CthjacGvdj/V+Msc0pv4c+l5mrJSoF\npv0Fjn8Nq3/t9ObOna/m4fe206uHL/+4c6RDphy1FxHh1zcl0jfIg8c/3k1m0XnTtLgb2nC6ETt3\n7uSBBx5otsw//vEP3nij0097bZqsbbD2t5B4M6TeZ7Yag+F3wqj7YcPf4chapzWjlOKXi9I5XVLJ\nK98ZSUh3n5YvcjI+Xh48nOILCh6dt5NqW63ZktwCbTjdiN/+9rc8+uijzZa5//77efnll12kyMVU\nFBsuemAMTPtr+1cEOYMbXjCCVIt+YIy/OoFPdp5i6e4cfnL9IFLcaO14uL8HL906jJ0nz/KXVQdb\nvsACaMPpQN555x2GDRtGSkoKd999N8ePH2fixIkMGzaMa6+9lpMnTwKwYMECkpKSSElJuTANqaSk\nhN27d5OSkgLAj3/8Y5577jkAVq5cyZVXXkltbS3+/v7Ex8ezZcsWc96kM/n8l3AuE2591fXBoJbw\n8Ydb/gtlp2FZyyvC2kpm0Xl+9elexsSH8P2r3G+9/NRhUdw+qjf//vIIaZlnzZZjOl1zYuCKJyE3\nvcVi3Ww14NnKWxCZDJNfavL03r17ef7559mwYQNhYWEUFRUxd+7cC4833niDRx99lEWLFvHcc8+x\ncuVKYmJiOHvW+BJu27btonXoL774IqNHjyY1NZXHHnuM5cuX4+Fh/J8bNWoUX3/9NWPGjGmd9s7A\n0XWw4x2Y8H8QN85sNY0TPQKufhLWPA9DpxnDCQ5AKcUvPklHKcWfbk9x22TDv5yawJcH83n8o90s\n/tEEfL1al5KxK6J7nA5izZo13HbbbYSFhQEQEhLCxo0bufPOOwG4++67Wb9+PQATJkzg3nvv5dVX\nX8VmswFGerlevb5NrOvv78+rr77KjBkzeOSRR+jf/9teSF16uS5DVZkx2Tykv2GY3JkJPzECRiue\ngIpzDqlyY46Nrw8V8PikIcSG+DukTmcQ1M2bF29J5kBeCf9cc7jlC7owXbPH2UzPsD7lJu2r/u9/\n/5vNmzezbNkyUlNT2b59e5Pp5UJCQi4xkl0uvdza38KZ43DvcmPljjvj6QXT/2ZkUlr9HEz9U4eq\nKyyt5P19lYyIC+aucX0cJNJ5TBwSwS0jY3hl3RGmpUQzKML1vx93QPc4HcTEiRNZsGABhYWFABQV\nFTF+/HjmzZsHwP/+978LyY2PHDnC2LFjee655+jVqxeZmZmXpJc7ceIEf/rTn1i/fj0rVqxg8+bN\nF851qfRyeXth0ytGBD1+gtlqWkf0CBjzPdj6OmRubbl8M7ywfB/lNfDSLcPc1kVvyNNTE+ju68Uz\nn+5FWXRVkTacDiIxMZFf/vKXXHXVVaSkpPDYY4/x8ssv8+abbzJs2DDeffdd/va3vwHw85//nOTk\nZJKSkhg/fjwpKSkMGTKEc+fOUVJSglKKBx54gD/+8Y9ERUXx+uuv8+CDD17okX7zzTdcf/31Zr5d\nx6CU4fL6BcG1vzJbTduY+EsIjIZlPzEm7LeDHSfPsHDHKSbFezM4svP03EK6+/DzGwez8WghS3Zb\nc2J813TVTaIuEFSfNWvWXFJu4cKFjV5///33M3/+fB588EG++OILwIi2p6amkp5uBLt27txJYmIi\noaGhDlZvAhmfGhPLp/yx8+0+6RsA1z8HHz8Au96HkXe36fLaWsVzSzIID/BlWv/OF2SZMyaOeVtP\n8sKyDCYOCbdc8mPd43QjHn74YXx9m08gW1BQwG9+8xsXKXIiVefh86chIsl9Jrq3laRbjc3hVj8H\nlW3bLfXTtFPsyjzL45OG0M2rc7jo9fH0EJ6bkURecSWvrLVeoEgbTjfCz8/vQjb4prj++uuJj493\njSBnsuFlY87m5N+1fkqYuyECk1405nau/0urLztfVcPvVhwgpXcQt7gw65GjGRnXk5nDo3l9/TFy\nzpWbLceldCnDadWB6jo6zfsvzYdv/gZDbzKSE3dmeo+C5Nthwz+MpCSt4D9fHiW3uIJfTU/s9Juj\n/fSGwSiF5VYUdRnD6efnR2FhYecxHg5GKUVhYSF+fp1gu4Ov/wg1FZ0vINQU1z0D4gGrWx5CKSit\n5NWvjzJ1WBSpfXq2WN7diQ3x557L+vDR9iwO5LZtuKIz00l9pEvp3bs3WVlZ5Oe3Pm9iRUWF2xua\ntmj08/Ojd+/eTlbUQc6cMKbxjLgLwgaarcYxBPWGsQ/BN3+HKx6D8KFNFv3XuiNUVNt47PpBLhTo\nXH54zQDmb8vkd5/t5417R5stxyU4anvgScDfAE/gNaXUSw3O/wW4xv7SHwhXSgXbz9mAuvWRJ5VS\nN7VHg7e3N337ti3h67p16xgxYkR7mnMZnUFjm1j3Inh4wlVPmK3EsUz4P9j6hrFH+x3vNVok+2w5\n7246wazU3vTv5eQtQFxIz+4+/PCaAby0Yj+bjhYyrl8XmPHRAh121UXEE/gnMBlIAOaISEL9Mkqp\nnyilhiulhgMvA/Xn45TXnWuv0dR0EvIyIG0ejHnI2NO8K+EfApf9EPYtgeydjRb5++pDRnq2a7tI\nT7se946Pp1eAL3/9whpjnY4Y4xwDHFZKHVVKVQHzgBnNlJ8DfOCAdjWdjXUvGvMfL/+J2Uqcw2U/\ngG49Yc0Ll5w6ml/Kgu1Z3Dk2jt493Xc9envx8/bk4av6s+loERuPFJotx+k4wnDGAJn1XmfZj12C\niPQB+gL1Z4X7icg2EdkkIjMdoEfjjpzeB/sWw9jvdb7J7q3FLwgm/BgOr4KTmy469Y+1h/H2FH54\nzQCTxDmfO8fG0SvAl7+t7vq9TuloFFpEZgGTlFIP2l/fDYxVSj3SSNkngN5KqR/VOxajlDolIv0w\nDOq1SqkjjVz7EPAQQERERGrdGvCOUFpaSo8e7j3W5O4aW6tvaMafCSvYzKZxr1LtE+gCZd/iynvo\nYatg3KaHKAkYQPowY9ZA/vlanvi6nOvivLhz6KULHLrKZwzw+fFq3t9fxROj/Rga6roVUY66h9dc\nc812pdSoFgsqpTr0AC4DVtZ7/RTwVBNldwLjm6nrLWBWS22mpqYqR7B27VqH1ONM3F1jq/QVHFbq\n2WClVj7tdD2N4fJ7+NUflXomUKlTO5VSSv1i4W414BfLVPbZ840W7xKfsZ3yqho16vlV6o7/bHCe\noEZw1D0EtqlW2D1HuOpbgYEi0ldEfIDZwOKGhURkCNAT2FjvWE8R8bU/DwMmABkO0KRxJ9b/2djm\n97JLnJCuyegHwTcI1v+ZvOIKFmzLYlZqb6KC3DxlngOoP9a59XiR2XKcRocNp1KqBngEWAnsAz5U\nSu0VkedEpH6UfDYwz27V6xgKbBORNGAt8JJSShvOrsSZE0YkPfVeCIgwW41r8AuCMd+FjMUsXLmG\nmtpat9wOw1nMHhNLT39v/vPlJSNuXQaHzONUSi0Hljc49qsGr59t5LoNQLIjNGjclG/+BgiMb34T\nui7HuIdRm14hMv3f3JTya/qEdjdbkcvw9/Hinsvi+dvqQxzKK2FgF0x23GWWXGrckLIC2PU/GD6n\n683bbInuYewIu4np8jWPjnLv1WnO4J7L+uDn7cF/vzpqthSnoA2nxnlsfd1Yk26Vsc16lFfZ+EXu\nVSBCvyONryTqyoT28OX2UbEs2nWK3HMVLV/QydCGU+Mcqitg66sw8AboNdhsNS5n4c4sDpQHcTZ+\nirF7Z0Wx2ZJczoOX98NWq3hzwzGzpTgcbTg1ziH9QyjLt2Rvs7ZW8fr6YyTHBBF6/WNQWQw7rdfr\njAv1Z0pyFO9vOklxRbXZchyKNpwax6MUbPynsRd93yvNVuNyvjyYz9H8Mh64vC8SMxLiLoPN/wJb\njdnSXM73r+pPSWUN87dktly4E6ENp8bxHF4N+fuN3qZ07kS97eH19ceIDPRjSnKUceCyHxpJjvcv\nNVeYCSTFBDEmPoR3Nh3HVtt1cuVqw6lxPBtfhoAoSLzFbCUuZ19OMesPF3DP+D74eNl/XoOnQM94\nYxtkC3LvhHgyi8pZs/+02VIchjacGsdyeh8cXWdMAPfyMVuNy3lj/TG6eXty55i4bw96eMLYhyFz\nc4f3Ye+M3JAQQVSQH291oSCRNpwax7L1dfD0hZH3mq3E5RSVVfFpWja3psYQ7N/gn8aI74BvIGz5\nrzniTMTL04O7L+vDN4cLOZjXNbbX0IZT4zgqS4zllYk3Q/eunwW8IR9uy6SqppZ7Lou/9KRvAKTM\ngYxFxmZ1FmP26Dh8vTx4a8Nxs6U4BG04NY4jbR5UlRhuusWorVX8b/MJxvYNYVBTSwxHPwC2Ktj5\nrmvFuQEh3X2YMTyaT3ac4tz5zj81SRtOjWNQynDTo4ZDTKrZalzOl4fyySwq5+7L+jRdqNdgiL8C\ntr0JtTbXiXMT5o6Pp7zaxvxtrdtG2Z3RhlPjGE58A/n7jJRqFpyC9N7GE/QK8OWGhMjmC45+AM6d\nhMNfuEaYG5EYHcTo+J68v/kktZ18apI2nBrHsPU18AuGpFvNVuJyMovOs+bAaWaPjv12ClJTDJkG\nPSKM+2VB7hwbx/HC82w82rn3JdKGU9NxSnKN3R1H3AU+XW8jspb4YMtJBJhTfwpSU3h6G7lJD62C\noq4zPae1TE6KIqibN+9v6dzuujacmo6z/W2orYFR95utxOVU1tiYvzWT64ZGEB3cygzvI+eCeMD2\nN50rzg3x8/bk1pG9+XxvLgWllWbLaTfacGo6hrIZ2X/6T4RQ62Q5r+OzPbkUllU1HxRqSFAMDJ4M\nO941skhZjDvHxlJtUyzYlmW2lHajDaemQ4QUpUFxFoy8x2wppvD+5pP0CfVnQv+wtl046n4oL7Lk\n+vUB4QGM6RvCB1s6b5BIG05Nh4jMXQX+ocZ6bItxvKCMzceKuH1ULB4ebZxJ0O8aCIqz5JxOgO+M\njeNk0Xk2HOmcQSJtODXtp6yAsIItxooYr0v3C+/qfLgtEw+BWam9236xh4exDPPoOvzK8xwvzs25\nMTGSnv7evL/lhNlS2oU2nJr2kzYPD1UDI+42W4nLqbHV8tH2LK4ZHE5EYDv3FBr+HUCIzLXenM5v\ng0R5nC7pfOO82nBq2odSsOMdzgUOhvAhZqtxOV8dyud0SSW3j45tfyXBsdB/IpG5qy25kmj2mDhq\nahWLdp4yW0qbcYjhFJFJInJARA6LyJONnL9XRPJFZJf98WC9c3NF5JD9MdcRejQuIHMLFBwgJ+oG\ns5WYwvytmYT18GHikPCOVTTyHvwqC+HIWscI60QMCO/ByLhgFmzLQqnOFSTqsOEUEU/gn8BkIAGY\nIyIJjRSdr5Qabn+8Zr82BHgGGAuMAZ4RkZ4d1aRxATvfAZ8e5PeaYLYSl5NfUsnqfae5ZWRvvD07\n+BMaPIUq70DjflqQ20bFcuh0KWlZ58yW0iYc0eMcAxxWSh1VSlUB84AZrbz2RmCVUqpIKXUGWAVM\ncoAmjTOpKIY9CyHpFmxerZz03YX4ZGcWNbWK20d1wE2vw8uHvIirYf9yYx96izF1WBR+3h4s2Na5\n9iRyhOGjMKjYAAAgAElEQVSMAeq/6yz7sYbcKiK7ReQjEan7xrX2Wo07sXchVJ83VsBYDKUU87dm\nktqnJwPCezikzpyo66G22kjLZzEC/byZlBjJ4rRsKqo7zzivl4vaWQJ8oJSqFJHvAW8DE9tSgYg8\nBDwEEBERwbp16zosqrS01CH1OBN31Dhixyt4+cex9VAJpWVlbqevIY68h4fO2DiSX8H9SdUOq7NU\nhXAucDBe6//D1spEt8su5ezv4CBvG4sqavjrR2sZF9U+k+Ty34lSqkMP4DJgZb3XTwFPNVPeEzhn\nfz4H+E+9c/8B5rTUZmpqqnIEa9eudUg9zsTtNBYcVuqZQKXW/1Up5Yb6GsGRGh9fkKaG/r8VqrSi\n2mF1rl27Vqktrxn3NXuXw+p1FM7+jG22WjX+xdXqrtc2tbsOR2kEtqlW2D1HuOpbgYEi0ldEfIDZ\nwOL6BUQkqt7Lm4B99ucrgRtEpKc9KHSD/ZjGXUmbZySoSL7dbCUup6LaxvL0HKYkR9Hd18HOWuLN\n4OljSXfdw0O4dWQM6w8XkH223Gw5raLDhlMpVQM8gmHw9gEfKqX2ishzInKTvdijIrJXRNKAR4F7\n7dcWAb/BML5bgefsxzTuSG0t7J4H/a6GwKiWSnc5VmXkUVJZwy0jnDAM7x8CgyZB+gKwdf6tJdrK\nrNRYlIJPOsmcTofM41RKLVdKDVJK9VdKvWA/9iul1GL786eUUolKqRSl1DVKqf31rn1DKTXA/rBe\nnq3OxMmNcPakscTSgnyy8xRRQX6M6+ekjehS5kBZPhxZ45z63Zi4UH/G9g1hwbbMTjGnU68c0rSe\ntA/ApwcMmWq2EpeTX1LJlwfzmTkipu0JPVrLgOuMhClpHzinfjfntlGxHC88z/YTZ8yW0iLacGpa\nR3U57F0ECTPAp7vZalzOkrRsbLXKOW56HV4+kDTLmNNZftZ57bgpk5Mi6ebt2SncdW04Na1j/zJj\n699hd5itxBQW7swiOSaIgU1t/esoUu4AW6Wx/7rF6O7rxQ2JESzdnUNVTa3ZcppFG05N69g9HwJ7\nG9vbWoyDeSXsOVXMzc7sbdYRPRLCBkHafOe35YbMHBHDufJq1h04bbaUZtGGU9MyJXlweDUMu93I\nI2kxFu44haeHcNPwaOc3JgIps+HkBktu5nbFgDBCu/vw6a5ss6U0i/V+BZq2s+cjY2+hlNlmK3E5\ntbWKT3ed4qpBvQjr4aJkzcm3AwK7P3RNe26El6cH01OiWbUvj+IK952WpQ2npmXSPjBcyF6DzVbi\ncjYdLSTnXIVr3PQ6gmOh7xXGfe8EU3MczcwRMVTV1PJZeq7ZUppEG05N8+RlQG66JXubAB/vOEWA\nrxfXJ0S4tuGUOXDmmJH31GKk9A6ib1h3Fu1y3+i6Npya5klfAOIJibeYrcTllFfZ+GyPscTSz9vT\ntY0PmQZefsYwicUQEWYMj2bj0UJyzrnnEkxtODVNoxTs+Rj6XQU9epmtxuWs3p9HWZWNGSNcEBRq\niF8gDLoR9n4CthrXt28yM4fHoBQsdtMgkTacmqbJ2gZnTxiTsi3I4l3ZhAf4Mravk5ZYtkTSLGMJ\n5vGvzGnfROLDujMiLphF2nBqOh17PgJPXxg6zWwlLseYS5jPtGHReDpriWVLDLwBfAMh3XruOhi9\nzn05xezPLTZbyiVow6lpnFqbsT3GoBvAL8hsNS5n5d5cqmy1TE8xMQuUtx8MnQ77lkB159tCt6NM\nGxaFp4ewaKf79Tq14dQ0zrGvoOy0Zd30JWnZxIX4Mzw22FwhSbdCZTEcXmWuDhMI7eHLlQPDWJKW\n7XYZk7Th1DTOno/AJ8AIUFiMgtJKNhwpZHpKFGL2NhZ9r4LuvYzZDRZkeko0p86Ws+OkeyU90YZT\ncyk1lZCxxEgf5229XSyXp+dgq1XclOIG+wZ6ehnZ4Q+uNHYXtRjXJ0Tg4+XBkjT3cte14dRcyuEv\noPIcJFvTTV+8K5vBEQEMjnRyJqTWkjQLairgwHKzlbicAD9vJg4Ov/DPzF3QhlNzKekfQbcQY4sM\ni3HqbDnbTpwxNyjUkNgxEBRn2ej6tJQoTpdUsuWY++yqow2n5mIqS+HACvvmYd5mq3E5S+0u4fQU\nEya9N4UIJN9qbKlRVmC2GpczcUg4/j6eLNntPu66NpyaizmwAmrKreump2WTEhtMn1A3y3KfNMvI\nUGXBBMf+Pl5cNzSCz/bkUm1zjwTH2nBqLiZ9AQTGQOw4s5W4nCP5pezNLuYmd+pt1hGRCL2GQPrH\nZisxhWnDoigqq2LDkUKzpQDacGrqc74IjqyGpFssmbB48a5sRIwfqdshYngBJzfAuSyz1bicqwb3\nIsDPy22i6w75dYjIJBE5ICKHReTJRs4/JiIZIrJbRFaLSJ9652wissv+WOwIPZp2sm8x1NZYctK7\nUooladmM7RtCRKCf2XIapy5DVYb1fia+Xp7cmBjJyr25VNbYzJbTccMpIp7AP4HJQAIwR0QSGhTb\nCYxSSg0DPgJ+X+9cuVJquP1xU0f1aDrA3kUQ0g+iUsxW4nL2ZhdztKDMPeZuNkVof4hMNjImWZBp\nw6Ioqajhq4PmB8gc0eMcAxxWSh1VSlUB84AZ9QsopdYqpc7bX24CejugXY0jKSs0llkmzDDcQoux\nLD0HTw9hUlKk2VKaJ/FmyNoCZzPNVuJyJgwIo6e/t1u4644wnDFA/U8xy36sKR4AVtR77Sci20Rk\nk4jMdIAeTXvYv9SI2iZY7yNQSrE8PYfx/UMJ6e5jtpzmqft8Mj41V4cJeHt6MDk5ii/25VFeZa67\n7uXKxkTkLmAUcFW9w32UUqdEpB+wRkTSlVJHGrn2IeAhgIiICNatW9dhPaWlpQ6px5m4SuOwtDfp\n5hfJ5gNn4GDr2+sK9/BEsY0ThRVcE1ljyntp6z1M7dGf2k3vsLMqyXmi6uFOn3FsrY3zVTZeXriW\nMZHfmi+Xa1RKdegBXAasrPf6KeCpRspdB+wDwpup6y1gVkttpqamKkewdu1ah9TjTFyisaxQqV+H\nKPX5r9p8aVe4h7//bJ/q99QyVVha6RpBDWjzPfzqT0o9E6jUmRNO0dMQd/qMa2y1atTzq9T33tl2\n0XFHaQS2qVbYPUe46luBgSLSV0R8gNnARWE/ERkB/Ae4SSl1ut7xniLia38eBkwAMhygSdMW9i8z\noukJM1ou28VQSrE8PZdx/ULc302vI9G67rqnhzA1OYo1B05TWmneliIdNpxKqRrgEWAlRo/yQ6XU\nXhF5TkTqouR/AHoACxpMOxoKbBORNGAt8JJSShtOV5PxKQTHQfQIs5W4nP25JRwrKGNKshvO3WyK\nkH4QNdyy0fWpw6Koqqll9b480zQ4ZIxTKbUcWN7g2K/qPb+uies2AMmO0KBpJ+Vn4Og6GPewJaPp\ny9Nz8BC4MdHNo+kNSbwZvngGzpyAnn1aLt+FSI3rSUSgL8vTc5gx3JzpY9ZbHqK5mP3LobbastH0\nZek5jO0bSlgPX7PltA0Lu+seHsLkpCjWHcinzCR3XRtOq5PxqZGyLGak2UpczsG8Uo7mlzHFHZdY\ntkTPeGNoxaLu+uSkSCpralmz/3TLhZ2ANpxWpvyskaos4SZLuunL0nMQgUmdzU2vI/FmyN4BZ46b\nrcTljIoPoVeA4a6bgTacVubACsNNT7zZbCWmsDw9hzH2H2CnpG54Za/1Us15egiTkyJZe+A056tc\n765rw2llMhZBYG+ISTVbics5lFfC4dOlTO2MbnodPfsYn50Fc3QCTEmOoqLaHHddG06rUnHO7qZb\nd216p3bT60iYCdk7oeiY2Upczuj4EMJ6+LIiPdflbWvDaVUOfAa2qm+jsxZjeXoOo/uEEO6uKeRa\ny4XouvV6nUZSlgjW7D9Npc21G7lpw2lVMhZBQDTEjDJbics5fLqEg3mlTEnu5L1NMBYuxIyybHR9\nSnIU5dU2due7NumHNpxWpKIYDq823HQLZnpfbnftJnem1ULNkXgz5KRB0VGzlbgcYw6uD1tzXRsg\nst6vRgMHV4Kt0tJu+qg+Pd0303tbqcsxYMFep6eHcGNiJGn5NpemmtOG04pkLIKAKOg9xmwlLudI\nfin7c0s619r0lgiOhd6jLTktCQx3vdIGXx50XXRdG06rUVkCh1bB0Jss6aavsE+YntwVxjfrkzAD\ncndb1F0PIcAblrkwum69X47Vsbibviw9l5FxwUQFdTNbimO54K5br9fp5elBaoQXq/flUVHtGndd\nG06rkbEIekRact/0YwVl7Msp7lpueh3BcZaeDD860ovzVTa+PJjvkva04bQSlaV2N326Jd305Rfc\n9C5oOMGYDJ+TZsnJ8ENCPOjp7+2ytevW+/VYmUOfQ02FZd305ek5DI8NJia4i7npddS56xbsddZF\n11fvO+0Sd10bTiuRsQi6h0PcZWYrcTknCsvYm13M1K7a2wRj7Xr0SEuOc4IRXS+trOErF7jr2nBa\nhaoyOPi5kULOw9NsNS7n20nvXSya3pDEmZCzy5Lu+mX9Qwn292bFHudH17XhtAqHVkFNuSU3ZAPD\nTU/pHUTvnv5mS3EuF9x162WG9/b04MaESL7IyKOyxrnuujacViFjEXTvBX0mmK3E5eSfryX91Lmu\nGU1vSF1meAuOc4LhUZRU1vD1wQKntqMNpxWoOm/M3xw63ZJu+tY8Yx2zJQwnfJtqzoKZ4ScMCCOo\nm/Oj69pwWoHDX0D1ecu66VtzbSTHBBEb0sXd9DosvJGbt6cHNyREsGpfHlU1tU5rxyGGU0QmicgB\nETksIk82ct5XRObbz28Wkfh6556yHz8gIjc6Qo+mARmLwD8U+lxuthKXk3XmPMfO1VqntwmGux41\n3LLR9cnJkZRU1PDNEee56x02nCLiCfwTmAwkAHNEJKFBsQeAM0qpAcBfgN/Zr00AZgOJwCTgFXt9\nGkdRXW4kLR46HTy9zFbjcuqyg3eJ3JttIXGmfSO3E2YrcTkTBoQR4Ot1IS+BM3BEj3MMcFgpdVQp\nVQXMAxr6hDOAt+3PPwKuFRGxH5+nlKpUSh0DDtvr0ziKw6uhusyS+6aDsUVGn0AP+oR2N1uKa0mw\nrrvu6+XJdQkRfJ6RR43NOe66IwxnDJBZ73WW/VijZZRSNcA5ILSV13aIfTnFPPj2VnLOlTuy2s5D\nxiLoFgLxV5itxOWcOlvOrsyzjI6woBMT0heiUiwbXf/RxAEs+sEEvDydE8bpNL6biDwEPAQQERHB\nunXrWnVdTmktX+wrJ0Kt5/p474vOlZaWtroes+iIRg9bFeMzlnI6/HIOfr3escLsuPM9XHm8GoCE\nwCq31QjOu4dxfsPod+xdNn72IZV+4e2ux50/4zqa0njcSe05wnCeAmLrve5tP9ZYmSwR8QKCgMJW\nXguAUuq/wH8BRo0apa6++upWC3zr0FccrPDihavHX3R83bp1tKUeM+iQxv3LwFZO9LUPEz2gnXW0\ngDvfw7+/8g1Do/zo18vmthrBifewKA7+/i6XBebB+NvbXY07f8Z1uFqjI/qxW4GBItJXRHwwgj2L\nG5RZDMy1P58FrFFKKfvx2faoe19gILDFAZouYkpyFNtOnCGvuMLRVbs3GZ9Ct57Q90qzlbic7LPl\n7Dh5lqlWCwrVJ6QfRA6zbHTdmXTYcNrHLB8BVgL7gA+VUntF5DkRucle7HUgVEQOA48BT9qv3Qt8\nCGQAnwE/VEo5fK3U1GGRKIVTo2xuR00lHFgBQ6aCp3fL5bsYn+2pi6ZbaBpSYyTOhFPb4Gxmy2U1\nrcYhI6dKqeVKqUFKqf5KqRfsx36llFpsf16hlLpNKTVAKTVGKXW03rUv2K8brJRa4Qg9DRkQHsCg\niB4sd8Hif7fhyBqoLIaEm81WYgrL03MYEhlAv149zJZiLhaOrjsTy6wcmpwUxdbjRZy2irue8Sn4\nBUO/q8xW4nJyz1Ww7cQZ3dsECO0PkcmWja47C8sYzqnDolAKPttrgV5nTSXsX25hN90YktGG007C\nTMjaCueyzFbSZbCM4RwUEcCA8B4uS61vKkfXQeU5y056X56ey6CIHgwIt7ibXkeifbhGu+sOwzKG\nE2BKUiRbjhWRX1JpthTnkvEp+AZBv6vNVuJyThdXsPVEke5t1ie0P0Qk6+i6A7GW4RwWRW1Xd9dr\nqmD/UhgyBbx8zFbjclbsyUUpuvYWGe0hcQZkbdHuuoOwlOEcHBFAv17dWb67C7vrx76ECuu66cvS\ncxgY3oOBEQFmS3Ev6mZXZDScYq1pD5YynCLC1OQoNh8rpKC0i7rrexeBbyD0v8ZsJS7ndHEFW49r\nN71RwgZARJKOrjsISxlOMKYl1SpY2RXd9To3ffAU8PI1W43LWbnX7qYP04azURJmQuZmONfoqmZN\nG7Cc4RwaFUDfsO5dM7p+7EuoOGvZfdOXpecwILwHg7Sb3jh134t92l3vKJYznCLClORINh4ppLhK\nmS3HsVxw0yearcTl5JdUsuVYEVOSLLw2vSXCBkJ4oo6uOwDLGU741l3fYd/Eq0tgq7a0m/7Z3lxq\nlTFzQtMMiTMhcxMUZ5utpFNjScOZGB1In1B/tuZ2IcN51Npu+vLdOfTr1Z3B2k1vngtr17W73hEs\naTgNdz2KfUW1FJVVmS3HMWR8Ylk3vaC0ks3HCpmaHIWxI4umSXoNgvAEHV3vIJY0nGBMkK5VsCqj\nC0TXbdVG0uLBk63ppu+xu+l6GlLrSJgJJzdBcRcMkLoIyxrOxOhAenUTlqV3AcN57EsoP2PZSe8r\n9uTQL6w7QyK1m94qEmcCSkfXO4BlDaeIMDrSiw2HCzh7vpO763sXgU+AJd30wtJKNh4pZIp201tP\nr8HQa6iOrncAyxpOgNGRntTUKj7fm2e2lPZzIZo+Gbz9zFbjclbuzdNuentInAknN0JJF/C4TMDS\nhjM+0IPePbuxfE8nHus59pXhpls1mp6eQ3yoP0OjtJveJhLs7rqOrrcLSxvOuuj6N4cLOHe+2mw5\n7SOjzk2/1mwlLqeorIqNR7Wb3i7Ch0CvITq63k4sbTjBcPGqbYrPO2N03VYN+5bC4EkWddNzsdUq\n7aa3l4SZcGKDdtfbgeUNZ0rvIGKCu3XOtevHv4byIstG05en59An1J/E6ECzpXROLkTXl5itpNNh\necMpIkxOimT94QLOlXcyd33vIvDpAQOs56afKatig46md4zwoRA2WEfX20GHDKeIhIjIKhE5ZP/b\ns5Eyw0Vko4jsFZHdInJHvXNvicgxEdllfwzviJ72MmWY4a5/kdGJouu2mnrR9G5mq3E5n2cYbrrO\n9N5BEmfCiW+gpBN9992AjvY4nwRWK6UGAqvtrxtyHrhHKZUITAL+KiLB9c7/XCk13P7Y1UE97WJE\nbDDRQX6dy10//jWcL7Ssm74sPZe4EO2md5iEGejJ8G2no4ZzBvC2/fnbwCW/YqXUQaXUIfvzbOA0\n0KuD7ToUEWFychRfHyqguKKTuOsZ1nXTi8qq2HC4gMnJkdpN7yjhCRA6UO+A2UY6ajgjlFJ13bRc\nIKK5wiIyBvABjtQ7/ILdhf+LiJi20HpKciRVttrO4a7bqo0B/UGTLOmmf7Ynl5paxU0p0WZL6fyI\nfOuul542W02nQZRqPpmviHwBNJYd9pfA20qp4HplzyilLhnntJ+LAtYBc5VSm+ody8Uwpv8Fjiil\nnmvi+oeAhwAiIiJS582b1/w7awWlpaX06GHsvV2rFD/7spzeAR48luo+U3vqa6wjpHAHw9J/TXrS\nLygMG2uSMoPG9Dmb320p50yl4sXLu7Wqx2mGxrZgtr7upccZve3HHBz4fbJjJl9y3mx9rcFRGq+5\n5prtSqlRLRZUSrX7ARwAouzPo4ADTZQLBHYAs5qp62pgaWvaTU1NVY5g7dq1F73+7bIM1f+pZaqo\ntNIh9TuChhqVUkot/L5Sv41VqrrC5Xoa0qg+J5J3rlzFP7lU/fnzA62+xtUa24rp+mprlfr7SKXe\nnNroadP1tQJHaQS2qVbYoI666ouBufbnc4FLBkpExAf4BHhHKfVRg3NR9r+CMT66p4N6OsT0lGhq\napV777teXWFE04dOt2QKuWXpOSgF01N0NN1hiNgnw38Dpflmq+kUdNRwvgRcLyKHgOvsrxGRUSLy\nmr3M7cCVwL2NTDv6n4ikA+lAGPB8B/V0iMToQPqFdWfxLjfeVuDwF1BZDMm3mq3EFJakZTM0KpAB\n4XptukNJnAmqVkfXW4lXRy5WShUCl4R1lVLbgAftz98D3mvierfKgyYiTEuJ5uU1hzhdXEF4oPuM\ndV5gz0fgHwbxV5qtxOVkFp1nx8mzPD5psNlSuh4RSRDS35itMfoBs9W4PZZfOdSQm1KiUMpwCd2O\nylI48JnRO/Ds0P+8TkndZzJ9mI6mO5y66Prx9dpdbwXacDZgQHgAQ6MCWZzmhu76wc+gphySrOum\nD48NJjbE32wpXZMEu7u+X69dbwltOBvhppRodp48S2bRebOlXMyejyEgGmLHma3E5RzJL2VvdjHT\n9dxN5xGZDCH99Nr1VqANZyNMs+/NvWS3G/U6y8/AoVWQdAt4WO9jW5qWgwh6bbozqYuuH/8aygrM\nVuPWWO8X2ApiQ/wZERfMkjQ3GufctxRqqy3ppiulWJx2ijHxIUQGuWHAriuRdKvhru/9xGwlbo02\nnE1wU0o0+3KKOXy6xGwpBns+hp59IXqE2Upczv7cEo7kl2k33RVEJBobuaUvMFuJW6MNZxNMTY7C\nQ2CxO/Q6S/ONLYCTbjXcKYuxJC0bTw8jb6rGyYjAsNsgczOcOW62GrdFG84mCA/0Y1y/UJamZdct\nCTWPjEWG+2RRN33J7mwmDAgjtIf1VkqZQtIs42/6R82XszDacDbD9JRojhaUsTe72Fwhez423KeI\nBHN1mMCuzLNkFpVfCNhpXEDPPsbMjfQFYHanwU3RhrMZJidF4uUhLDFxTqdvRb6x/7UFe5sAn+7K\nxtfLg0naTXctw26D/P2Qm262ErdEG85mCPb34cpBvViSlk1trTn/eSPyvjSeJM8ypX0zqbbVsiQt\nm+sSIgj08zZbjrVIuBk8vHSQqAm04WyBGcOjyT5XwdbjRa5vXCki8tYZblNIX9e3bzLrDxVQWFbF\nzcNjzJZiPbqHQv9rjWEiVWu2GrdDG84WuD4hAn8fTz7Zecr1jefupvv5TBh2u+vbdgMW7jxFT39v\nrhzkVjutWIdht0PxKYLOZZitxO3QhrMF/H28mJQUybL0HCqqba5tfPeH1IoXJN7s2nbdgJKKaj7f\nm8u0YdH4eOmvqSkMngze3b8dLtJcQH8jW8EtI3pTUlHD6n0u3JPFVgPpCygMTQX/ENe16yas3JtH\nZU0tM0doN900fLrDkKn0yv8GairNVuNWaMPZCi7rH0pEoC+f7MxyXaPHvoTSPPIirnZdm27Eop2n\niAvxZ2RccMuFNc5j2O1415QZCbQ1F9CGsxV4eggzh8ew7kA+haUu+s+7ez74BVEU0vK+UV2NvOIK\nvjlSwMwRMXr7X7Ppdw1V3kGw+0OzlbgV2nC2kptHxlBTq1i62wVLMCtLje1/E2ZS6+nj/PbcjMW7\nslEKZg7Xa9NNx9OL0+GXG7lgK86ZrcZt0IazlQyJDGRoVCALXRFdP7Acqs9Dymznt+WGfLLzFCmx\nwfTr5d5b0lqFvIhroKZCZ0yqhzacbeCWETGkZZ7lSH6pcxtKmwdBcZZMWHwgt4SMnGJu1r1Nt6Ek\nYAD0GgK73jdbitugDWcbmDE8Gg8xAhdOoyQPjq41lrxZMGHxol2n8PQwNs3TuAkiMPxOI2NSwWGz\n1bgF1vtldoDwQD8mDAjjk52nnLcEc89HxkqNYXc4p343xlarWLgji6sG9SJMZ0JyL4bdAeIBabrX\nCR00nCISIiKrROSQ/W/PJsrZ6u2pvrje8b4isllEDovIfBFx+0jILSNjyDpTzrYTZxxfuVKw839G\nsuJe1tsC96tD+eQVV3Jbam+zpWgaEhBpLMFMmwe1Ll4I4oZ0tMf5JLBaKTUQWG1/3RjlSqnh9sdN\n9Y7/DviLUmoAcAZw+w2db0yMxN/Hk4+2Zzq+8pxdcHovjLjb8XV3Aj7alkVIdx+uHRphthRNYwy/\nE4pPwbGvzFZiOh01nDOAt+3P3wZmtvZCMSboTQTqsqW26Xqz8PfxYtqwKJbtzqGsssaxle98D7z8\nLJlC7uz5KlZl5DFjuF5i6bYMngJ+QTpIRMcNZ4RSqm5iYy7QVFfBT0S2icgmEakzjqHAWaVUnfXJ\nAjrF+ro7RsdSVmVjWboD53RWVxgpvIZOh27WWy3z6a5sqmy13JYaa7YUTVN4+xnZ4fctsfycTq+W\nCojIF0BjWWR/Wf+FUkqJSFMRkz5KqVMi0g9YIyLpQJvuvIg8BDwEEBERwbp169pyeaOUlpa2qx6l\nFJHdhVe/2EN46ZEO6wAIz/uKhIpz7PJI5mw9Te3V6Cocpe+NDeX0CfTg9MEdnD7YcV31sco9dBb1\n9QXUDiG1ppwDC39HTvQN5gqrh8vvoVKq3Q/gABBlfx4FHGjFNW8BswABCgAv+/HLgJWtaTc1NVU5\ngrVr17b72n+vO6z6PLFUHT5d4hAt6u0ZSv05SSmb7aLDHdHoChyhb++pc6rPE0vVm+uPdlxQI1jh\nHjqTi/TV1ir18milXr/RND2N4ah7CGxTrbBBHXXVFwNz7c/nAp82LCAiPUXE1/48DJgAZNhFrrUb\n0Savd1duHhmDp4fw4TYHBInOZsLRdcbguwXnbi7YnomPpwczdMJi90cEhs8xtnMpdIy31Rnp6K/0\nJeB6ETkEXGd/jYiMEpHX7GWGAttEJA3DUL6klKrLjPoE8JiIHMYY83y9g3pcRniAHxOHhPPx9lNU\n2zqYITvtA0AZhtNiVNXU8umubK5PiKBnd7efjaYBGDbbmNO58z2zlZhGi2OczaGUKgSubeT4NuBB\n+wKxYmQAABZ1SURBVPMNQHIT1x8FxnREg5ncPiqWVRl5rDuQz/UJ7ZxCU1trfAH7XmXsLmgx1uzP\no6isilmj9NzNTkNgFAy8EXb9D675BXhabz8o6/mFDuTqwcYKlw656yfWw9kTlp27OX9rJhGBvlw5\nUG+P0alIvRdK84ysSRZEG84O4O3pwa2pMazZf5rTJRXtq2THu+AbBEOnOVZcJyDrzHnWHczn9lGx\neHrovJudigHXQUA0bH+75bJdEG04O8htqbHYahUfb29H4o+yQshYBCl3gHc3x4tzc+ZvzUSA2WPi\nzJaiaSueXjDybiMz/NmTZqtxOdpwdpAB4T0YEx/CB1tOtj3xx67/ga0KRt3vHHFuTLWtlvlbM7l6\ncDgxwdb7p9ElqBte2vGuuTpMQBtOB/CdcXGcLDrPV4fyW39RbS1sfxPixkP4UOeJc1NW78vjdEkl\nd+reZuclOBYGXg873zU2F7QQ2nA6gElJkYR29+G9TW1wWY59CUVHLdnbBPjf5pNEB/lxzZBws6Vo\nOkLqvVCSA4c+N1uJS9GG0wH4enly++hY1uzP49TZ8tZdtO0N8A+FhJtaLtvFOFFYxteHCrhjdJwO\nCnV2Bt4IPSJh+1tmK3Ep2nA6iDvHxKGAeVta0esszoH9y2D4d8DLegl7P9iSiaeHcMdondCj0+Pp\nBSPugsOrLBUk0obTQcSG+HPN4HDmbc1seSXRzndB2Qw3x2JU1dSyYFsmE4eEExnkZ7YcjSOo+x5v\n7TQL/zqMNpwO5K5xceSXVPL53rymC9lqDLem3zUQ2t9l2tyFFXtyKCyr4s6xOijUZQiOhSFTYcfb\nUN3KoapOjjacDuSqQcbUmvc2nWi60KGVRhZtiwaF3tpwnPhQf67SK4W6FmO+B+VnjJyyFkAbTgfi\n6SHcOTaOjUcLOXy6pPFCm/4FQbFGNm2LsSvzLDtPnmXu+Hg8dFCoaxF/OYQnwOb/GntndXG04XQw\ns0fH4uPlwRvfHL/0ZO4eOP41jPmuMahuMd765hg9fL2YpTdj63qIwNjvQV66kXKui6MNp4MJ7eHL\nzcNjWLgjizNlVRef3Pwv8PaHkfeYI85EThdXsCw9h1mpvQnws142HUuQfDv4BcPm/5itxOlow+kE\n7r+8LxXVtbxff2pSWQHsXgAps6Fbo7sod2ne23ySmlrFvePjzZaicRY+/sb69X1L4Fw7cjd0IrTh\ndAKDIwO4YmAY72w8TlWNfWrStjfBVgljv2+qNjOorLHx/uYTTBwcTnxYd7PlaJzJ6AdB1cK2rj01\nSRtOJ3H/hL7kFVeyYk8O1FTB1leh/7XQa7DZ0lzO0rQcCkqruHdCvNlSNM6mZ7wxNWnbG1BVZrYa\np6ENp5O4alAv+vXqzuvrj6H2LjSSvo77gdmyXI5Sile/PsqgiB5cPiDMbDkaVzD+UWNqUhfeWkMb\nTifh4SHcN6Evu7POUr7uzxA2GPpPNFuWy1l3IJ/9uSV878r+iOgpSJYgbizEjoMN/+iyWZO04XQi\nt46MYXq3PfifOQCX/8SSO1j+68sjRAf5cdPwaLOlaFzJhEfh3EkjUXcXxHq/ZBfi7+PFkwErOKVC\nyQi7wWw5LmfHyTNsOVbEA1f0w9tTf9UsxaDJEDoQvvlrl5wQr7/NzuTERmKKd/G2ms6/vrZO5pg6\n/r3uCEHdvJmtsyBZDw8Po9eZ+//bu+/wqOrsj+Pvk56QBAwlEOmCCgiiFEFcKYKgwoLYcFVwERF3\ndVEfXQv+RLAhPiqrsrooKqusARUWpUgzgIooLRJKkKYEEZAiEAKEZM7vjzu4ISYkw0zmTpLzep48\nZO7cufMhMCe3fb8nA7YucjtNwPlVOEUkSUTmi8gm75+/u0FRRLqKSHqBr2Mi0s/73Lsisq3Ac639\nyRNyvhoHsUlEtR/ErDU7+WFvxb3KWNjmPdnM37CbQR0bUCW68o2SMkCrmyA+2fkcVDD+7nE+AixU\n1abAQu/jU6hqmqq2VtXWQDcgByg4XfRDJ59X1XQ/84SO3euc1qkd7mZg5+ZEhIfxryVb3E4VNBOW\nbCE6IoxBdsN75RUR7dxJsnURZC13O01A+Vs4+wIn+4NOAvqVsP71wBxVzfHzfUPfly9DZBVoN4Ra\nCTHc1LYeH63cwa6DZ9hGuBzJ2p/DtFU/MaBdfarHV76Jmk0B7YZAbBIsHuN2koDyt3Amq+rP3u93\nAcklrD8A+KDQsmdEZI2IvCwiFeNT9stGyPgI2t0BcUkADL28MR6lUux1vvr5JsLDhLu7VL75Rk0h\n0fFw6b1OG+EdK9xOEzCiJVzxEpEFQO0inhoBTFLVagXWPaCqRQ7EFpE6wBogRVVPFFi2C4gCJgBb\nVHV0Ma8fCgwFSE5ObpOamlrCX61k2dnZxMfH+72dwpqvG0vS/pV8c8mbnIhK/G35xIzjfP1zHmMv\njyUppnS/s8oqY6AUzrcnx8MjXxzlivoR3NIsNH4PlrefYajxN194Xg4dlg3lUOK5ZLR6IoDJ/idQ\nP8OuXbuuVNW2Ja6oqmf8BWwE6ni/rwNsPM26w4EJp3m+CzCzNO/bpk0bDYS0tLSAbOcUP2eojkxU\nXTD6d09t33dEmzw2Sx+dtqbUmyuTjAFUON8DU9L13BGzdffBo+4EKkJ5+xmGmoDkW/Ki87nIWuH/\ntooQqJ8hsEJLUYP8PVT/BBjk/X4QMOM0695MocN07x4n4gwp6Qes9TOP+xY9B9GJ0PGvv3uqXlIc\nA9rVZ+ryLLbvq3inebftPcL01Tu4tUMDaiVaPyFTQPs7nXOdi551O0lA+Fs4xwA9RGQT0N37GBFp\nKyJvnVxJRBoC9YDFhV4/WUQygAygBvC0n3nctTMdMmc6RdN7brOwe7o1ITxMGLfw+yCHK3vjFnxP\nVEQYwzrbuU1TSHQCXHafc65z2xK30/jNr8KpqvtU9QpVbaqq3VV1v3f5ClUdUmC9H1T1bFX1FHp9\nN1VtqaoXqOqtqprtTx5XqcKCJ52JXDvcXexqyYkxDOzYgP+u/qn49hrlUMaOg8xI38ngTo2omRAa\n5zZNiGl/FyTWhflPgKeETrAhzkYOBcrmBbA1DTo/DDFVT7vqsM7nEBsZzpg5G4MUrmypKs/MXk9S\nlSiG2ZV0U5zIGOg2AnauhvXT3U7jFyucgZCfB/Meh6TGzn1rJageH81fuzVhwYbdfLV5bxAClq3P\nM/ewbOt+hl/RlERri2FOp9VNUKsFLBztzFNbTlnhDITV78EvmdB9FEREleolgzs1ou5ZsTw1cz35\nnvI7CUK+R3luTiaNalSxXummZGHh0GMUHPjBmey4nLLC6a/jhyHtGah/KTTrU+qXxUSG8+hVzcjc\ndZgpy7PKMGDZWrwjj817snm41/k2A5IpnSbdoXEX5wr7kfJ5xGX/0/21eCwc+QWufNppkeqDq1vW\npl3Ds3hx3kYOHTtRRgHLzr7s43y8KZcOjZPo2aKkQWPGeInAVWOd1hoLRrqd5oxY4fTH7nXw9Xin\n3W/dNj6/XER4oncL9ufk8tK88nd70vOfZXIsD57qe4HN7m58U/M857a91e9D1rdup/GZFc4z5fHA\nzAcgtppzbvMMtaxblds6NGDS1z/wXdavgctXxlb+uJ+pK3bQs2EkTZMT3I5jyqPL/w4JKTDrAfDk\nu53GJ1Y4z1T6+5C1DHqMLvZm99J6sOd51EqI5tFpGeTlh/79bbl5HkZMX+u0xDjHrqKbMxQdD72e\ndSY7/naC22l8YoXzTBza6dx+VL8jXPgnvzeXGBPJk31asP7nQ0z8clsAApat8Wmbydx1mFF9LyAm\nwg7RjR+a94OmV8KCUbCv/MwcZoXTV6rwyb3OPWh9xwesAVuvC2rTvVkyL87/nk27Q3dE0dqfDjI+\nbTPXXnQ2PZrbBSHjJxHo8w8Ij4IZ95SbEUVWOH218l1nlFCP0VA9cKNkRITn+rckPjqC4anp5OaF\n3n+g3DwPD374HUlVohjZp7nbcUxFkZgCV42B7Uvh23+5naZUrHD6Yt8WmDsCGnUu1QghX9VMiOa5\n/i1Z//Mhxi0IvavsYz/LJHPXYZ69tiXV4kp3o78xpXLhzXBuL5g/0jnnGeKscJbWiaMwdRCERwb0\nEL2wni1qc2Pbury+eEtIDcect24Xb325jUEdG9DdDtFNoInAH19zLrR+eLszsCSEWeEsrdkPwe4M\n6P8mVCvbdrcj+7SgSc147v1gNfuOun/InrU/hwc//I6WZ1flsWuauR3HVFTxNeG6ibB/K3x6X0j3\nY7fCWRqr3nPGo//hQTj3yjJ/uyrREbxxWxtO5Hl4bfVxjp1w7x63nNw8/jJ5Faow/k8XEx0R7loW\nUwk07ARdR8Daj2DZP91OUywrnCXZtgRm3u+Mre36WNDe9pya8bx444VsO+Th0WkZJ9uLBJXHo9w/\nJZ11Ow8ybkBr6lePC3oGUwld9oAz78PcEZA5y+00RbLCeTp7MiH1Vufq+Q2TnJldgujKFrXp3zSS\n6at/4vnPgjt3p6ry3JwNzF23m8evac4Vzey8pgmSsDC4dgKkXAQfD3Hm7wwxVjiLs28LvNcPIqLh\nlg+doZUu6NM4klsuqc8bi7fw1hdbg/a+/1i4iTe/cC4G/blTw6C9rzEARMXBzakQVwPevx72bHA7\n0SmscBZl/1Z4tzfk58LA/0I19+aZFBFG972Aq1vW5ulZG3hjcdmOrlBVxqdtZtyCTdzQpi4j+7Sw\nCTyMOxKSnc9fWARM6uMcAYYIK5yF/bQSJvaEvGMw8BNIbuF2IsLDhFcGXESfC1MYMyeTF+Zm4imD\nyY/zPcqoT9fzwtyN9GudwpjrWhEWZkXTuKj6OXD7TJBweKcX/LjU7USAFc5TrZ8B71zj9Eb58xyo\nfYHbiX4TER7GuJtaM6BdPcanbeEvk1eRk5sXsO0fPHqCu99fybtLf2Bwp0a8dGNrwq1omlBQoykM\nngNx1eHffeG7VLcTWeEEIDfHuW9s6kBnD3PIQqh1vtupfic8zBmW+fg1zZi3fhe9X/2S9ABMRbd6\n+wF6v/oFCzP38H+9m/NEn+a2p2lCS1JjuGM+1G0P0++C6cNcvUner8IpIjeIyDoR8YhI29Os10tE\nNorIZhF5pMDyRiLyjXf5FBEJ7jg+VWcv8/WOsPId6DTc2dOMrxXUGL4QEYb8oTHv3XEJx3Lzue71\npTw9cz0Hjvje+OrXnFxGTM+g/+tL8Xhg6l0dueOyRmWQ2pgAiEuCgTOg8yOwZgqMvwTWTHVlYpAI\nP1+/FugPFDsyX0TCgfFAD2AHsFxEPlHV9cDzwMuqmioibwB3AK/7malkJ45C5iwuXvU8HP4eajWH\nQZ9Co8vL/K0DpVOTGnx2/+U8O2sDb3+1jSnLs7itYwMGtKtf4v2W2/YeIfXb7fznm+3knMjn9ksb\ncl/3c6kaa3NrmhAXHgFdH4UmV8DsB2HanfDVK9Su1hly2ztX44PAr8KpqhuAkq66tgc2q+pW77qp\nQF8R2QB0A05OaDkJeJJAF84j+5wJh4/+CgeznHvCti2BEzlExKY4U1q1vtX5BylnEmMiGXNdKwZf\n1oiX5n3PG4u38M9FWzi/dgIdGlfnnJpVqBYXhQjsy85l057DrPjhAJm7DhMmcE2rFO7p2oTzatsM\n7qacqdce7lzk7HkufYXzN74GYyc6I49SLnYO7eNrOo3hyoAEYkSKiCwCHlTVFUU8dz3QS1WHeB/f\nBlyCUySXqWoT7/J6wBxVLfKKjIgMBYYCJCcnt0lNLd0J4qq/ruOidGfEjyIcjU3hwFmt2FujA1mR\njYlPSPTp7xps2dnZxMfHl2rd/cc8LNuZR8befLYe9HC80EjNmHBoVDWMC2tG0L5OOEkx/p/i9iWf\nW0I9o+XzkypRu1ZQPzudsw6kE5ezE8HD8ajqfH2pby2Iu3btulJViz3teFKJu1kisgCoXcRTI1R1\nhk+p/KCqE4AJAG3bttUuXbqU7oXH20D7ThBbDalSi7ioOOKAs4EDixZR6u24ZJGPGft7/1RV9hw+\nzuFjJ8j3QPX4KJLiogJ+0cfXfG4I9YyWz3+LFgl1uzzkPMg7Dgd3EJ13jC5ldDthiYVTVf3d1/0J\nKDidUF3vsn1ANRGJUNW8AssDKzoBUloHfLOhTkRITowhOTHG7SjGBFdEdEAnGS9KMG5HWg409V5B\njwIGAJ+oc44gDbjeu94gIGh7sMYYc6b8vR3pWhHZAXQEZonIXO/yFBGZDeDdm7wHmAtsAKaq6jrv\nJh4GHhCRzUB1YKI/eYwxJhj8vao+HZhexPKdwNUFHs8GZhex3lacq+7GGFNu2MghY4zxkRVOY4zx\nkRVOY4zxkRVOY4zxkRVOY4zxkRVOY4zxkRVOY4zxUUAm+Qg2EfkF+DEAm6oB7A3AdspSqGcM9XwQ\n+hktn/8ClbGBqtYsaaVyWTgDRURWlGYmFDeFesZQzwehn9Hy+S/YGe1Q3RhjfGSF0xhjfFTZC+cE\ntwOUQqhnDPV8EPoZLZ//gpqxUp/jNMaYM1HZ9ziNMcZnlb5wishTIrJGRNJFZJ6IpLidqSAReUFE\nMr0Zp4tINbczFVbaNtHBVlxb6lAhIm+LyB4RWet2lqKISD0RSROR9d5/3+FuZypIRGJE5FsR+c6b\nb1TQ3ruyH6qLSKKqHvJ+/zeguaoOcznWb0TkSuBzVc0TkecBVPVhl2OdQkSaAR6cNtFFNu0LNm9b\n6u8p0JYauNnbljokiMjlQDbw7+KaFLpJROoAdVR1lYgkACuBfqHyMxSnvW4VVc0WkUjgS2C4qi4r\n6/eu9HucJ4umVxUgpH6TqOo87yz6AMtwejOFFFXdoKob3c5RyG9tqVU1F0gF+rqc6RSqugTY73aO\n4qjqz6q6yvv9YZwODme7m+p/1JHtfRjp/QrK57fSF04AEXlGRLKAW4An3M5zGoOBOW6HKCfOBrIK\nPN5BCH3oyxsRaQhcBHzjbpJTiUi4iKQDe4D5qhqUfJWicIrIAhFZW8RXXwBVHaGq9YDJOP2RQiqf\nd50RQJ43Y9CVJqOpmEQkHvgYuK/QEZrrVDVfVVvjHIm1F5GgnPLwq+dQeeFDi+PJOL2RRpZhnN8p\nKZ+I3A70Bq5Ql05KB6BNdLAV15ba+MB77vBjYLKqTnM7T3FU9VcRSQN6AWV+sa1S7HGejog0LfCw\nL5DpVpaiiEgv4O/AH1U1x+085UiRbaldzlSueC++TAQ2qOpLbucpTERqnrzLRERicS4EBuXza1fV\nRT4GzsO5KvwjMExVQ2bPxNs6ORrY5120LJSu+oPTJhp4FagJ/Aqkq2pPd1OBiFwNjAPCgbdV9RmX\nI51CRD4AuuDM7LMbGKmqIdMiW0QuA74AMnA+HwCPebvWuk5EWgGTcP59w3Baj48OyntX9sJpjDG+\nqvSH6sYY4ysrnMYY4yMrnMYY4yMrnMYY4yMrnMYY4yMrnMYY4yMrnMYY4yMrnKZCEpF23jlMY0Sk\nine+xpCbus2UT3YDvKmwRORpIAaIBXao6nMuRzIVhBVOU2F5x6gvB44Bl6pqvsuRTAVhh+qmIqsO\nxAMJOHuexgSE7XGaCktEPsGZ+b0RTguIoM+1aiqmSjEfp6l8RGQgcEJV/+PtP7RURLqp6uduZzPl\nn+1xGmOMj+wcpzHG+MgKpzHG+MgKpzHG+MgKpzHG+MgKpzHG+MgKpzHG+MgKpzHG+MgKpzHG+Oj/\nAW5kjIPeS9+cAAAAAElFTkSuQmCC\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "import pylab\n", "import numpy as N\n", "\n", "x = N.arange(-3.14, 3.14, 0.01)\n", "y1 = N.sin(x)\n", "y2 = N.cos(x)\n", "pylab.figure(figsize =(5 , 5))\n", "pylab.plot(x, y1, label='sin(x)')\n", "pylab.plot(x, y2, label='cos(x)')\n", "pylab.legend()\n", "pylab.grid()\n", "pylab.xlabel('x')\n", "pylab.title('Este é o titulo do gráfico')" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Segue uma lista de outros comandos úteis:\n", "\n", "- `figure(figsize=(5,5))` configura o tamanho da figura para 5x5 (polegadas)\n", "\n", "- `plot(x,y1,label=’sin(x)’)` a palavra-chave “label” define o nome desta linha. O rótulo da linha será mostrado na legenda se o comando `legend()` for usado posteriormente.\n", "\n", "- Note que chamando o comando `plot` repetidamente, você poderá sobrepor uma série de curvas.\n", "\n", "- `axis([-2,2,-1,1])` restringe a área de plotagem nos limites de `xmin=-2` a `xmax=2` na direção x e de `ymin=-1` a `ymax=1` na direção y.\n", "\n", "- `legend()` este comando mostrará uma legenda com os rótulos definidos no comando plot. Experimente `help(pylab.legend)` para aprender mais sobre o posicionamento das legendas.\n", "\n", "- `grid()` este comando mostrará as linhas de grade em segundo plano.\n", "\n", "- `xlabel(’...’)` e `ylabel(’...’)` adicionam legendas aos eixos.\n", "\n", "Além disso, você pode escolher diferentes estilos e espessuras de linha, cores e símbolos para os dados a serem plotados. A sintaxe é muito semelhante à do Matlab. Por exemplo:\n", "\n", "- `plot(x,y,’og’)` plotará círculos (`o`) na cor verde (`g`)\n", "\n", "- `plot(x,y,’-r’)` plotará uma linha (`-`) na cor vermelha (`r`)\n", "\n", "- `plot(x,y,’-b’,linewidth=2)` plotará uma linha azul (`b`) com dois pixels de espessura `linewidth=2`, que é duas vezes mais espessa do que o padrão.\n", "\n", "A lista completa de opções pode ser encontrada ao digitar `help(pylab.plot)` no *prompt* do Python. Como esta documentação é tão útil, repetimos partes dela aqui:" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "plot(*args, **kwargs)\n", " Plot lines and/or markers to the\n", " :class:`~matplotlib.axes.Axes`. *args* is a variable length\n", " argument, allowing for multiple *x*, *y* pairs with an\n", " optional format string. For example, each of the following is\n", " legal::\n", "\n", " plot(x, y) # plot x and y using default line style and color\n", " plot(x, y, 'bo') # plot x and y using blue circle markers\n", " plot(y) # plot y using x as index array 0..N-1\n", " plot(y, 'r+') # ditto, but with red plusses\n", "\n", " If *x* and/or *y* is 2-dimensional, then the corresponding columns\n", " will be plotted.\n", "\n", " An arbitrary number of *x*, *y*, *fmt* groups can be\n", " specified, as in::\n", "\n", " a.plot(x1, y1, 'g^', x2, y2, 'g-')\n", "\n", " Return value is a list of lines that were added.\n", "\n", " The following format string characters are accepted to control\n", " the line style or marker:\n", "\n", " ================ ===============================\n", " character description\n", " ================ ===============================\n", " '-' solid line style\n", " '--' dashed line style\n", " '-.' dash-dot line style\n", " ':' dotted line style\n", " '.' point marker\n", " ',' pixel marker\n", " 'o' circle marker\n", " 'v' triangle_down marker\n", " '^' triangle_up marker\n", " '<' triangle_left marker\n", " '>' triangle_right marker\n", " '1' tri_down marker\n", " '2' tri_up marker\n", " '3' tri_left marker\n", " '4' tri_right marker\n", " 's' square marker\n", " 'p' pentagon marker\n", " '*' star marker\n", " 'h' hexagon1 marker\n", " 'H' hexagon2 marker\n", " '+' plus marker\n", " 'x' x marker\n", " 'D' diamond marker\n", " 'd' thin_diamond marker\n", " '|' vline marker\n", " '_' hline marker\n", " ================ ===============================\n", "\n", " The following color abbreviations are supported:\n", "\n", " ========== ========\n", " character color\n", " ========== ========\n", " 'b' blue\n", " 'g' green\n", " 'r' red\n", " 'c' cyan\n", " 'm' magenta\n", " 'y' yellow\n", " 'k' black\n", " 'w' white\n", " ========== ========\n", "\n", " In addition, you can specify colors in many weird and\n", " wonderful ways, including full names (``'green'``), hex\n", " strings (``'#008000'``), RGB or RGBA tuples (``(0,1,0,1)``) or\n", " grayscale intensities as a string (``'0.8'``). Of these, the\n", " string specifications can be used in place of a ``fmt`` group,\n", " but the tuple forms can be used only as ``kwargs``.\n", "\n", " Line styles and colors are combined in a single format string, as in\n", " ``'bo'`` for blue circles.\n", "\n", " The *kwargs* can be used to set line properties (any property that has\n", " a ``set_*`` method). You can use this to set a line label (for auto\n", " legends), linewidth, anitialising, marker face color, etc. Here is an\n", " example::\n", "\n", " plot([1,2,3], [1,2,3], 'go-', label='line 1', linewidth=2)\n", " plot([1,2,3], [1,4,9], 'rs', label='line 2')\n", " axis([0, 4, 0, 10])\n", " legend()\n", "\n", " If you make multiple lines with one plot command, the kwargs\n", " apply to all those lines, e.g.::\n", "\n", " plot(x1, y1, x2, y2, antialised=False)\n", "\n", " Neither line will be antialiased.\n", "\n", " You do not need to use format strings, which are just\n", " abbreviations. All of the line properties can be controlled\n", " by keyword arguments. For example, you can set the color,\n", " marker, linestyle, and markercolor with::\n", "\n", " plot(x, y, color='green', linestyle='dashed', marker='o',\n", " markerfacecolor='blue', markersize=12). See\n", " :class:`~matplotlib.lines.Line2D` for details." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "O uso de diferentes estilos de linha e espessuras é particularmente útil quando a cor não pode ser usada para distinguir linhas (por exemplo, quando o gráfico for utilizado em um documento que será impresso apenas em preto e branco).\n", "\n", "### Plotando mais de uma curva\n", "\n", "Existem três métodos diferentes para plotar mais do que uma curva.\n", "\n", "#### Duas (ou mais) curvas em um gráfico\n", "\n", "Chamando o comando `plot` repetidamente, mais do que uma curva pode ser desenhada no mesmo gráfico. Exemplo:" ] }, { "cell_type": "code", "execution_count": 8, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "" ] }, "execution_count": 8, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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\nrkJggg==\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "import numpy as N\n", "t = N.arange(0,2*N.pi,0.01)\n", "\n", "import pylab\n", "pylab.plot(t,N.sin(t),label='sin(t)')\n", "pylab.plot(t,N.cos(t),label='cos(t)')\n", "pylab.legend()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "#### Dois (ou mais gráficos) em uma janela de figura\n", "\n", "O comando `pylab.subplot` permite-lhe organizar vários gráficos dentro da mesma janela. A sintaxe geral é\n", "\n", " subplot(numRows, numCols, plotNum)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Aqui está um exemplo completo de plotagem das curvas seno e cosseno em dois gráficos alinhados um embaixo do outro na mesma janela:" ] }, { "cell_type": "code", "execution_count": 9, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "" ] }, "execution_count": 9, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "import numpy as N\n", "t = N.arange (0 , 2 * N . pi , 0.01)\n", "\n", "import pylab\n", "\n", "pylab.subplot(2, 1, 1)\n", "pylab.plot(t, N.sin(t))\n", "pylab.xlabel('t')\n", "pylab.ylabel('sen(t)')\n", "\n", "pylab.subplot(2, 1, 2)\n", "pylab.plot(t, N.cos(t))\n", "pylab.xlabel('t')\n", "pylab.ylabel('cos(t)')" ] }, { "cell_type": "code", "execution_count": 10, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "[]" ] }, "execution_count": 10, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAW4AAAD8CAYAAABXe05zAAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAADANJREFUeJzt3U+InIUZx/Hfr9lIN7E1QuaSjXRzKBZRyspQ1IAHY7Gt\nokF6SEGhguTSahRRTC8ePSiihyIssV4M9RBDECnGgl56Cc5mhdSsAfFPzCbieFgV2ZJEnx52x+wm\nk5133Xn3fZ+d7wcC2clk9uEl+2XyzjvzOCIEAMjjJ1UPAABYHsINAMkQbgBIhnADQDKEGwCSIdwA\nkAzhBoBkCDcAJEO4ASCZoTIedPPmzTE6OlrGQwPAmjQxMfFlRDSK3LeUcI+OjqrVapXx0ACwJtn+\ntOh9OVUCAMkQbgBIhnADQDKEGwCSIdwAkEwpV5UAwCA5NDmtZw6f0OmZWW3ZNKzH77hWO8dGSvt+\nhBsAVuDQ5LT2Hjym2XPfSZKmZ2a19+AxSSot3pwqAYAVeObwiR+i3TF77js9c/hEad+TcAPACpye\nmV3W7f1AuAFgBbZsGl7W7f1AuAFgBR6/41oNr1+36Lbh9ev0+B3XlvY9eXESAFag8wIkV5UAQCI7\nx0ZKDfXFOFUCAMkQbgBIhnADQDKEGwCSIdwAkAzhBoBkCDcAJEO4ASAZwg0AyRBuAEiGcANAMoQb\nAJIh3ACQDOEGgGQKfayr7UclPSgpJB2T9EBE/K/MwQCgl9Xerl4XPZ9x2x6R9LCkZkRcL2mdpF1l\nDwYAS+lsV5+emVXownb1Q5PTVY9WuqKnSoYkDdsekrRB0unyRgKA3qrYrl4XPcMdEdOSnpV0UtIZ\nSV9FxFsX38/2btst2612u93/SQFggSq2q9dFkVMlV0u6R9I2SVskbbR938X3i4jxiGhGRLPRaPR/\nUgBYoIrt6nVR5FTJ7ZI+joh2RJyTdFDSLeWOBQBLq2K7el0UuarkpKSbbG+QNCtph6RWqVMBQA9V\nbFevi57hjogjtg9IOirpvKRJSeNlDwYAvaz2dvW6KHQdd0Q8JempkmcBABTAOycBIBnCDQDJEG4A\nSIZwA0AyhBsAkiHcAJAM4QaAZAg3ACRDuAEgGcINAMkQbgBIhnADQDKEGwCSKfTpgABwsUHdsF4H\nhBvAsnU2rHeW9XY2rEsi3quAUyUAlm2QN6zXAeEGsGyDvGG9Dgg3gGUb5A3rdUC4ASzbIG9YrwNe\nnASwbIO8Yb0OCDeAH2VQN6zXAadKACAZwg0AyRBuAEiGcANAMoQbAJIh3ACQDOEGgGQINwAkQ7gB\nIBnCDQDJEG4ASIZwA0AyhBsAkikUbtubbB+w/YHtKds3lz0YAKC7oh/r+oKkNyPij7avkLShxJkA\nLIHt6ugZbttXSbpV0p8lKSLOSjpb7lgAumG7OqRip0q2SWpLetn2pO19tjeWPBeALtiuDqlYuIck\n3SjpxYgYk/StpCcvvpPt3bZbtlvtdrvPYwKQ2K6OOUXCfUrSqYg4Mv/1Ac2FfJGIGI+IZkQ0G41G\nP2cEMI/t6pAKhDsiPpf0me3O+uYdko6XOhWArtiuDqn4VSUPSdo/f0XJR5IeKG8kAJfDdnVIBcMd\nEe9JapY8C4AC2K4O3jkJAMkQbgBIhnADQDKEGwCSIdwAkAzhBoBkCDcAJEO4ASAZwg0AyRBuAEiG\ncANAMoQbAJIh3ACQDOEGgGSKfh43MPDYro66INxAAWxXR51wqgQogO3qqBPCDRTAdnXUCeEGCmC7\nOuqEcAMFsF0ddcKLk0ABbFdHnRBuoCC2q6MuOFUCAMkQbgBIhnADQDKEGwCSIdwAkAzhBoBkCDcA\nJEO4ASAZwg0AyRBuAEiGcANAMoQbAJIh3ACQTOFw215ne9L2G2UOBABY2nI+1nWPpClJPy9pFqAr\ntqsDixV6xm17q6Q7Je0rdxxgsc529emZWYUubFc/NDld9WhAZYqeKnle0hOSvi9xFuASbFcHLtUz\n3LbvkvRFREz0uN9u2y3brXa73bcBMdjYrg5cqsgz7u2S7rb9iaRXJd1m+5WL7xQR4xHRjIhmo9Ho\n85gYVGxXBy7VM9wRsTcitkbEqKRdkt6OiPtKnwwQ29WBblgWjFpjuzpwKUdE3x+02WxGq9Xq++MC\nwFpleyIimkXuyzsnASAZwg0AyRBuAEiGcANAMoQbAJIh3ACQDOEGgGQINwAkQ7gBIBnCDQDJEG4A\nSIZwA0AyhBsAkiHcAJAMn8eNy2K7OlBPhBtddbardxb1drarSyLeQMU4VYKu2K4O1BfhRldsVwfq\ni3CjK7arA/VFuNEV29WB+uLFSXTFdnWgvgg3Lmvn2AihBmqIUyUAkAzhBoBkCDcAJEO4ASAZwg0A\nyRBuAEiGcANAMoQbAJIh3ACQDOEGgGQINwAkQ7gBIBnCDQDJ9Ay37Wtsv2P7uO33be9ZjcEAAN0V\n+VjX85Iei4ijtn8macL2vyPieMmzDSy2qwNYSs9wR8QZSWfmf/+N7SlJI5IIdwnYrg6gl2Wd47Y9\nKmlM0pEyhgHb1QH0Vjjctq+U9JqkRyLi6y5/vtt2y3ar3W73c8aBwnZ1AL0UCrft9ZqL9v6IONjt\nPhExHhHNiGg2Go1+zjhQ2K4OoJciV5VY0kuSpiLiufJHGmxsVwfQS5Fn3Nsl3S/pNtvvzf/6Q8lz\nDaydYyN6+t4bNLJpWJY0smlYT997Ay9MAvhBkatK/iPJqzAL5rFdHcBSeOckACRDuAEgGcINAMkQ\nbgBIhnADQDKEGwCSIdwAkAzhBoBkCDcAJEO4ASAZwg0AyRBuAEiGcANAMoQbAJIpsuV9oLBhHUDd\nEe4F2LAOIANOlSzAhnUAGRDuBdiwDiADwr0AG9YBZEC4F2DDOoAMeHFygc4LkFxVAqDOCPdF2LAO\noO44VQIAyRBuAEiGcANAMoQbAJIh3ACQDOEGgGQINwAkQ7gBIBnCDQDJEG4ASIZwA0AyhBsAkiHc\nAJBMoXDb/p3tE7Y/tP1k2UMBAC6v58e62l4n6e+SfivplKR3bb8eEcf7OQjb1QGgmCLPuH8j6cOI\n+Cgizkp6VdI9/Ryis119emZWoQvb1Q9NTvfz2wDAmlAk3COSPlvw9an52/qG7eoAUFzfXpy0vdt2\ny3ar3W4v6++yXR0AiisS7mlJ1yz4euv8bYtExHhENCOi2Wg0ljUE29UBoLgi4X5X0i9tb7N9haRd\nkl7v5xBsVweA4npeVRIR523/VdJhSesk/SMi3u/nEGxXB4DiHBF9f9BmsxmtVqvvjwsAa5XtiYho\nFrkv75wEgGQINwAkQ7gBIBnCDQDJEG4ASKaUq0pstyV9+iP/+mZJX/ZxnMw4FotxPBbjeFywFo7F\nLyKi0LsXSwn3SthuFb0kZq3jWCzG8ViM43HBoB0LTpUAQDKEGwCSqWO4x6seoEY4FotxPBbjeFww\nUMeidue4AQBLq+MzbgDAEmoTbhYSX2D7Gtvv2D5u+33be6qeqWq219metP1G1bNUzfYm2wdsf2B7\nyvbNVc9UJduPzv+c/Nf2P23/tOqZylaLcC9YSPx7SddJ+pPt66qdqlLnJT0WEddJuknSXwb8eEjS\nHklTVQ9REy9IejMifiXp1xrg42J7RNLDkpoRcb3mPnp6V7VTla8W4dYqLCTOJCLORMTR+d9/o7kf\nzIH9cHLbWyXdKWlf1bNUzfZVkm6V9JIkRcTZiJipdqrKDUkatj0kaYOk0xXPU7q6hLv0hcRZ2R6V\nNCbpSLWTVOp5SU9I+r7qQWpgm6S2pJfnTx3ts72x6qGqEhHTkp6VdFLSGUlfRcRb1U5VvrqEG13Y\nvlLSa5IeiYivq56nCrbvkvRFRExUPUtNDEm6UdKLETEm6VtJA/uakO2rNfe/822StkjaaPu+aqcq\nX13CXWgh8SCxvV5z0d4fEQernqdC2yXdbfsTzZ1Cu832K9WOVKlTkk5FROd/YAc0F/JBdbukjyOi\nHRHnJB2UdEvFM5WuLuEufSFxJratuXOYUxHxXNXzVCki9kbE1ogY1dy/i7cjYs0/o7qciPhc0me2\nO5u0d0g6XuFIVTsp6SbbG+Z/bnZoAF6s7bkseDWsxkLiZLZLul/SMdvvzd/2t4j4V4UzoT4ekrR/\n/knOR5IeqHieykTEEdsHJB3V3NVYkxqAd1HyzkkASKYup0oAAAURbgBIhnADQDKEGwCSIdwAkAzh\nBoBkCDcAJEO4ASCZ/wPynf809ikn+QAAAABJRU5ErkJggg==\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "image/png": "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\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "import pylab\n", "pylab.figure(1)\n", "pylab.plot(range(10),'o')\n", "\n", "pylab.figure(2)\n", "pylab.plot(range(100),'x')" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Note que você pode usar `pylab.close()` para fechar uma, algumas ou todas as janelas de figura (use `help(pylab.close)` para aprender mais)." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Histogramas\n", "\n", "O programa abaixo demonstra como criar histogramas a partir de dados estatísticos no Matplotlib. O plot resultante é mostrado na figura" ] }, { "cell_type": "code", "execution_count": 11, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n8cT/AyLm59vKIXjmAAAAAElFTkSuQmCC\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "# versão modificada de\n", "# http://matplotlib.sourceforge.net/plot_directive/mpl_examples/...\n", "# /pylab_examples/histogram_demo.py\n", "import numpy as np\n", "import matplotlib.mlab as mlab\n", "import matplotlib.pyplot as plt\n", "\n", "# cria dados\n", "mu, sigma = 100, 15\n", "x = mu + sigma * np.random.randn(10000)\n", "\n", "# histograma dos dados\n", "n, bins, patches = plt.hist(x, 50, normed=1,\n", " facecolor='green', alpha=0.75,edgecolor='black')\n", "\n", "# alguns detalhes\n", "plt.xlabel('Smarts')\n", "plt.ylabel('Probability')\n", "\n", "# strings Latex para legendagem e títulos\n", "plt.title(r'$\\mathrm{Histograma\\ de\\ IQ:}\\ \\mu=100,\\ \\sigma=15$')\n", "plt.axis([40, 160, 0, 0.03])\n", "plt.grid(True)\n", "\n", "\n", "# adiciona linha de 'melhor ajuste' \n", "y = mlab.normpdf(bins, mu, sigma)\n", "l = plt.plot(bins, y, 'r--', linewidth=1)\n", "\n", "# salva para arquivo\n", "plt.savefig('static/data/15-pylabhistogram.pdf')" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Não tente compreender cada comando neste arquivo: alguns são bastante especializados e não foram abordados neste texto. A intenção é fornecer alguns exemplos para mostrar o que pode - em princípio - ser feito com Matplotlib. Se você precisa de um plot como este, a expectativa é que você terá que experimentar e possivelmente aprender um pouco mais sobre Matplotlib." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Visualizando dados de matrizes\n", "\n", "O programa abaixo demonstra como criar uma plotagem em bitmap das entradas de uma matriz." ] }, { "cell_type": "code", "execution_count": 12, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "image/png": "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\npEmTRq3/CXXBiExFeNTCAAAAAElFTkSuQmCC\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "import numpy as np\n", "import matplotlib.mlab as mlab # comandos compatíveis com Matlab\n", "import matplotlib.pyplot as plt\n", "\n", "# cria matriz Z que contém alguns dados interessantes\n", "delta = 0.1\n", "x = y = np.arange(-3.0, 3.0, delta)\n", "X, Y = np.meshgrid(x, y)\n", "Z = mlab.bivariate_normal(X, Y, 3.0, 1.0, 0.0, 0.0)\n", "\n", "# mostra a matriz pura de dados de Z em uma figura\n", "plt.figure(1)\n", "plt.imshow(Z, interpolation='nearest', cmap=cm.jet)\n", "plt.title(\"imshow examplo 1a: sem interpolação\")\n", "plt.savefig(\"static/data/15-pylabimshow1a.pdf\")\n", "\n", "# mostra os dados interpolados em outra figura\n", "plt.figure(2)\n", "im = plt.imshow(Z, interpolation='bilinear', cmap=cm.jet)\n", "plt.title(\"imshow examplo 1b: com interpolação bilinear\")\n", "plt.savefig(\"static/data/15-pylabimshow1b.pdf\")" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Para usar diferentes mapas de cor, fazemos uso do módulo `matplotlib.cm` (onde `cm` significa *colormap*). O código abaixo demonstra como podemos selecionar mapas de cor no conjunto de mapas já fornecidos e como podemos modificá-los (aqui, reduzindo o número de cores no mapa). O último exemplo imita o comportamento do comando mais sofisticado `contour` que também vem com o `matplotlib`." ] }, { "cell_type": "code", "execution_count": 13, "metadata": {}, "outputs": [ { "data": { "image/png": "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\nNCIiIiIiWmNRSOP18y7AIeNKf77DwpX+3q705zssXOnvbaGfbyEc4RERERERxwOLomlERERERBwD\nzJ00ROTrROSjIvJx0QvOHyuIyC0i8vsi8mci8mER+S4Tf1pE3ikiHzP7UyZeROTfmOf9ExH5wvk+\nwWIiykWUixCiXCyAXNjJv+axoVds/gvgKcAS8L+Ap8+zTHt4hhuBLzThdeDPgacDPw7cZeLvAn7M\nhJ8LvAM9ffQXA++f9zMs2hblIspFlIvFlYt5axrPAj6ulPpLpdQu8BbgjjmXaSYopR5RSn3QhDeB\n+4Gb0c/xJpPtTcA3mvAdwD1K433AhujlLyNKRLmIchFClIsFkIt5k8bNwFnn+EETdywhIrcBXwC8\nHzijymUrHwXOmPAV9cyHhCvqHUW5ODBcUe/ouMrFvEnjioGIrAG/DrxSKfWEm6a0nhm7qV2FiHIR\nEcJxlot5k8ZDwC3O8ZNM3LGCiHTQAvAflFK/YaLPWTXS7D9p4q+IZz5kXBHvKMrFgeOKeEfHXS7m\nTRp/CNwuIp8mIkvAC4B751ymmSB6vuU3APcrpf61k3Qv8BITfgnwW078N5teEV8MXHLU0giNKBdR\nLkKIcrEIcjFvTzy6d8Cfo3tF/LN5l2cP5f8ytCr5J8CHzPZc4Brg94CPAb8LnDb5Bfh35nn/FHjm\nvJ9hEbcoF1EuolwsplzEEeEREREREa0xb/NURERERMQxQiSNiIiIiIjWiKQREREREdEakTQiIiIi\nIlojkkZERERERGtE0oiIiIiIaI1IGhERERERrRFJIyIiIiKiNSJpRERERES0RiSNiIiIiIjWiKQR\nEREREdEakTQiIiIiIlojkkZERERERGtE0oiIiIiIaI1IGhERERERrRFJIyIiIiKiNSJpRERERES0\nRiSNiIiIiIjWiKQREREREdEakTQiIiIiIlojkkZERERERGtE0oiIiIiIaI1IGhERERERrRFJIyIi\nIiKiNSJpRERERES0RiSNiIiIiIjWiKQREREREdEakTQiIiIiIlojkkZERERERGtE0oiIiIiIaI1I\nGhERERERrRFJIyIiIqIGInKniLx33uVogojcKiJbIpIexf0iaUREREQcYyil/loptaaUGk/LexAk\nGEkjIiIiYkEhItm8y+AjkkZERMSRQ0QeEJF/IiJ/IiKXReQNInJGRN4hIpsi8rsicsrJ/2si8qiI\n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\nZGRkZIzG/wMaZGoqsoeA2QAAAABJRU5ErkJggg==\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "import numpy as np\n", "import matplotlib.mlab as mlab # comandos compativeis com Matlab\n", "import matplotlib.pyplot as plt\n", "import matplotlib.cm as cm # submódulo de mapas de cor\n", "\n", "# cria matriz Z que contém alguns dados interessantes\n", "delta = 0.025\n", "x = y = np.arange(-3.0, 3.0, delta)\n", "X, Y = np.meshgrid(x, y)\n", "Z = mlab.bivariate_normal(X, Y, 3.0, 1.0, 0.0, 0.0)\n", "\n", "# ajuste de espaçamento dos subplots para evitar sobreposição\n", "aux = 1.0\n", "subplots_adjust(wspace=aux, hspace=aux)\n", "\n", "Nx, Ny = 2, 3\n", "plt.subplot(Nx, Ny, 1) # próximo plot será mostrado no\n", " # primeiro subplot como uma \n", " # matriz Nx x Ny de subplots\n", "\n", "plt.imshow(Z, cmap=cm.jet) # mapa de cor padrão 'jet'\n", "plt.title(\"mapa de cor: jet\")\n", "\n", "plt.subplot(Nx, Ny, 2) # próximo plot para segundosubplot\n", "plt.imshow(Z, cmap=cm.jet_r) # mapa de cor jet reverso\n", "plt.title(\"mapa de cor: jet_r\")\n", "\n", "plt.subplot(Nx, Ny, 3)\n", "plt.imshow(Z, cmap=cm.gray)\n", "plt.title(\"mapa de cor: gray\")\n", "\n", "plt.subplot(Nx, Ny, 4)\n", "plt.imshow(Z, cmap=cm.hsv)\n", "plt.title(\"mapa de cor: hsv\")\n", "\n", "plt.subplot(Nx, Ny, 5)\n", "plt.imshow(Z, cmap=cm.gist_earth)\n", "plt.title(\"mapa de cor: gist_earth\")\n", "\n", "plt.subplot(Nx, Ny, 6)\n", "\n", "# produz isolinhas reduzindo o número de cores para 10\n", "mycmap = cm.get_cmap('jet', 10) # 10 cores discretas\n", "plt.imshow(Z, cmap=mycmap)\n", "plt.title(\"mapa de cor: jet\\n(10 cores apenas)\")\n", "\n", "plt.savefig(\"static/data/15-pylabimshowcm.pdf\")" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Plots de *z = f(x,y)* e outros recursos do Matplotlib\n", "\n", "O Matplotlib tem um grande número de recursos e pode criar todo padrão de plotagens (1D e 2D): tais como histogramas, gráficos circulares, gráficos de dispersão, plotagens de intensidade 2D (i.e *z = f(x,y)* e linhas de contorno) e muito mais. O programa `contour_demo.py` é um exemplo padrão do pacote `pylab` (vide figura abaixo). O seguinte link fornece o código-fonte para produzir este tipo de plotagem: [contour\\_demo.py](http://matplotlib.org/examples/pylab_examples/contour_demo.html).\n", "\n", "Outros exemplos são:\n", "\n", "- \n", "- \n", "- Recentemente, a criação de plotagens 3D foi adicionada ao pylab: \n", "\n", "\"Saída\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Visualizando dados em dimensões superiores\n", "-----------------------------------\n", "\n", "Muitas vezes, precisamos entender os dados definidos em posições no espaço 3D. Os dados em si são muitas vezes um campo escalar (como uma temperatura) ou um vetor 3D (como velocidade ou campo magnético), ou ocasionalmente um tensor. Por exemplo, para um campo vetorial 3D (definido como $\\vec{f}(\\vec{x})$, onde $\\vec{x} \\in \\! \\mathbb{R}^3$ e $\\vec{f}(\\vec{x}) \\in \\! \\mathbb{R}^3$), poderíamos desenhar uma seta 3D em cada ponto (grade) no espaço. É comum que esses conjuntos de dados dependam do tempo.\n", "\n", "A biblioteca provavelmente mais comumente utilizada nas ciências e engenharia para visualizar tais conjuntos de dados é provavelmente o VTK, *Visualization ToolKit* (). Esta é uma importante biblioteca C++ com interfaces para linguagens de alto nível, incluindo o Python.\n", "\n", "Pode-se chamar essas rotinas diretamente do código Python ou escrever os dados no disco em um formato que a biblioteca VTK pode ler (chamados arquivos *vtk*) e, em seguida, usar um programa como Mayavi, ParaView ou VisIt para ler esses arquivos de dados e manipulá-los (com uma interface gráfica). Todos estes três estão usando a biblioteca VTK internamente e podem ler arquivos *vtk*.\n", "\n", "Este pacote é muito adequado para visualizar campos estáticos e temporais 2D e 3D (campos escalares, vetoriais e tensoriais).\n", "\n", "### Mayavi, Paraview, Visit\n", "\n", "- *Homepage* do Mayavi: \n", "\n", "- *Homepage* do Paraview: \n", "\n", "- *Homepage* do VisIt: \n", "\n", "\n", "\n", "### Escrevendo arquivos vtk a partir do Python (pyvtk)\n", "\n", "Uma pequena, mas poderosa biblioteca Python está disponível em . Ela permite criar arquivos *vtk* a partir de estruturas de dados do Python muito facilmente.\n", "\n", "Dada uma malha de elementos finitos ou um conjunto de dados de diferenças finitas em Python, pode-se usar o *pyvtk* para escrever esses dados em arquivos e, em seguida, usar uma das aplicações de visualização listadas acima para carregar os arquivos *vtk* para exibi-los e investigá-los." ] } ], "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.6.4" } }, "nbformat": 4, "nbformat_minor": 2 }