{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# Научная графика в Python\n", "\n", "Автор: Шабанов Павел Александрович\n", "\n", "E-mail: pa.shabanov@gmail.com\n", "\n", "URL: [Заметки по программированию в науках о Земле](http://progeoru.blogspot.ru/)\n", "\n", "Дата последнего обновления: 12.03.2017" ] }, { "cell_type": "code", "execution_count": 48, "metadata": { "collapsed": false }, "outputs": [], "source": [ "# Преамбула\n", "%matplotlib inline\n", "\n", "import os\n", "import matplotlib.pyplot as plt\n", "from matplotlib import rcParams\n", "\n", "import numpy as np\n", "\n", "def save(name='', fmt='png'):\n", " pwd = os.getcwd()\n", " iPath = './pictures/{}'.format(fmt)\n", " if not os.path.exists(iPath):\n", " os.mkdir(iPath)\n", " os.chdir(iPath)\n", " plt.savefig('{}.{}'.format(name, fmt), fmt='png')\n", " os.chdir(pwd)\n", " #plt.close()\n", "\n", "rcParams['font.family'] = 'fantasy'\n", "rcParams['font.fantasy'] = 'Arial'" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Глава 5 Рисунок Figure\n", "\n", "\n", "### Содержание главы\n", "\n", "1. Контейнер Figure;\n", "\n", "2. Конфигурация Figure;\n", "\n", "3. Сохранение рисунка.\n", "\n", "Рисунок **Figure** является основой каждого изображения, которые создаётся в matplotlib. Обычно после создания экземпляра рисунка (точнее - экземпляра класса matplotlib.figure.Figure) о нём можно забыть. Тем не менее, именно на основе экземпляра Figure вызываются экземпляры Axes, которые несут основную нагрузку при создании научной графики.\n", "\n", "Стоит помнить, что пока идёт работа с одним единственным экземпляром типа Figure, то результат выполнения всех графических команд будут отображаться именно на нём. При работе со многими экземплярами Figure нельзя забывать об очищении \"холста\" от \"красок\" предыдущиего рисунка.\n", "\n", "### Электронные ресурсы:\n", "\n", "+ [Описание элементов рисунка Artists в matplotlib](http://matplotlib.org/users/artists.html)." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### 5.1 Контейнер Figure\n", "\n", "Верхним логическим уровнем среди контейнеров Artists (см. Главу 1) является matplotlib.figure.Figure, который включает всё, что есть на рисунке (figure). Фоном (background) рисунка, который определяетя в Figure.patch, по умолчанию является прямоугольник (Rectangle). Когда на рисунке добавляются экземпляры subplots (например, с помощью метода add_subplot()) или axes (с помощью метода add_axes()), они автоматически добавляются в список Figure.axes. Так как matplotlib поддерживает концепцию \"текущей области\" (\"current axes\"; подробнее см. Figure.gca и Figure.sca) для работы с pylab/pyplot, то не рекомендуется добавлять или убирать axes из списка (axes list) вручную. Лучше использовать методы add_subplot()/add_axes() для добавления экземпляров Axes и delaxes() для их удаления. \n", "\n", "**Совет**\n", "\n", "> Можно использовать список fig.axes() для работы с экземплярами Axes. Например, для добавления линий сетки с помощью метода grid() на все axes рисунка." ] }, { "cell_type": "code", "execution_count": 49, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "\n" ] }, { "data": { "image/png": "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\n/j+ddcwBwCKsnQAAAABJRU5ErkJggg==\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "# Пример 5.1\n", "\n", "import matplotlib.pyplot as plt\n", "import numpy as np\n", "\n", "fig = plt.figure()\n", "\n", "print type(fig)\n", "# Создание экземпляра Axes c помощью Figure-метода add_subplot()\n", "ax = fig.add_subplot(111)\n", "# или так\n", "box = [0.25, 0.5, 0.25, 0.25]\n", "# Создание экземпляра Axes c помощью Figure-метода add_axes()\n", "ax2 = fig.add_axes(box)\n", "\n", "x = np.arange(0.0, 1.0, 0.1)\n", "y = np.sin(x)*np.exp(x)\n", "z = np.cos(x)*np.sin(x)\n", "\n", "# Методы plot() вызываются через экземпляры ax, а не plt (интерфейс pyplot)\n", "ax.plot(y)\n", "ax.plot(z)\n", "\n", "for ax in fig.axes:\n", " ax.grid(True)\n", " \n", "save('pic_5_1', fmt='png')\n", "save('pic_5_1', fmt='pdf')\n", " \n", "plt.show()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Список элементов рисунка (Artists) для контейнера Figure:\n", "\n", "1. **axes** - список экземпляров Axes (включая Subplot);\n", "\n", "2. **images** - список FigureImages patches (эффективно для отображения пикселей);\n", "\n", "3. **legends** - список экземпляров Figure Legend (отличается от Axes.legends);\n", "\n", "4. **lines** - список экземпляров Figure Line2D (редко используется, см. Axes.lines);\n", "\n", "5. **patch** - фон Rectangle;\n", "\n", "6. **patches** - список Figure patches (редко используется, см. Axes.patches);\n", "\n", "7. **texts** - список экземпляров Figure Text.\n", "\n", "### 5.2 Конфигурация Figure\n", "\n", "Одним из стандартных методов создания экземпляра Figure является следующий:" ] }, { "cell_type": "code", "execution_count": 50, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Тип Figure \n" ] }, { "data": { "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "import matplotlib.pyplot as plt\n", "\n", "fig = plt.figure()\n", "print(u'Тип Figure %s' % type(fig))" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Основные параметры созданного экземпляра Figure определяются в конфигурационном файле matplotlibrc. Атрибуты Figure можно изменить во время создания экземпляра:\n", "\n", "+ **figsize** : кортеж из целых или действительных чисел, который определяет ширину и высоту в дюймах. По умолчанию равен значению figure.figsize из настроек rcParams;\n", "\n", "+ **dpi** : разрешение рисунка. По умолчанию равен значению figure.dpi из настроек rcParams;\n", "\n", "+ **facecolor** : цвет фона. По умолчанию равен значению figure.facecolor из настроек rcParams;\n", "\n", "+ **edgecolor** : цвет границы. По умолчанию равен значению figure.edgecolor из настроек rcParams." ] }, { "cell_type": "code", "execution_count": 51, "metadata": { "collapsed": false }, "outputs": [ { "data": { "image/png": "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\nQmCC\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "# Пример 5.2.1\n", "\n", "import matplotlib.pyplot as plt\n", "from matplotlib import rcParams\n", "\n", "figsize = (8,6)\n", "\n", "fig = plt.figure(figsize=figsize, facecolor='pink', frameon=True)\n", "plt.plot([[0.0,0.0],[1.,1.]],'k')\n", "plt.grid(True)\n", "rcParams['figure.edgecolor'] = 'blue'\n", "\n", "save('pic_5_2_1', fmt='png')\n", "save('pic_5_2_1', fmt='pdf')\n", "\n", "plt.show()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "По умолчанию цвета координатной координатных осей, линий вспомогательной сетки отрисовываются чёрным цветом, а цвет фона (основы рисунка) - белым. Заменив параметры, отвечающие за соответствующие цвета, можно создать, например, инвертированный бело-чёрный рисунок. Иногда такая графика смотрится очень наглядно, стильно и привлекает к вашему материалу повышенное внимание." ] }, { "cell_type": "code", "execution_count": 52, "metadata": { "collapsed": false }, "outputs": [ { "data": { "image/png": "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\nCILowvw/Jmf8x6y+MUkAAAAASUVORK5CYII=\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "# Пример 5.2.2\n", "\n", "from matplotlib import rcParams\n", "import matplotlib.pyplot as plt\n", "import numpy as np\n", "\n", "rcParams['font.family'] = 'Times New Roman', 'Arial', 'Tahoma'\n", "rcParams['font.fantasy'] = 'Times New Roman'\n", "\n", "# Изменение параметров рисования (смена чёрного по белому на белое по чёрному)\n", "facecolor = 'k'\n", "\n", "rcParams['figure.edgecolor'] = facecolor\n", "rcParams['figure.facecolor'] = facecolor\n", "rcParams['axes.facecolor'] = facecolor\n", "#rcParams['axes.edgecolor'] = 'k'\n", "rcParams['grid.color'] = 'w'\n", "rcParams['xtick.color'] = 'w'\n", "rcParams['ytick.color'] = 'w'\n", "rcParams['axes.labelcolor'] = 'w'\n", "\n", "x = np.arange(0, 4*np.pi, 0.12)\n", "y = np.tan(x)\n", "\n", "fig = plt.figure()\n", "plt.plot(x, y,'w')\n", "\n", "plt.xlim(x[0], x[-1])\n", "plt.ylim(np.min(y), np.max(y))\n", "\n", "plt.xlabel(u'Время [c]', fontsize=12)\n", "plt.ylabel(u'Амплитуда [м]', fontsize=12)\n", "plt.grid(True, color='w')\n", "\n", "save('pic_5_2_2', fmt='png')\n", "save('pic_5_2_2', fmt='pdf')\n", "\n", "plt.show()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### 5.3 Сохранение рисунка\n", "\n", "Сохранить получившийся рисунок можно с помощью метода savefig, применённого либо к экземпляру Figure (fig.savefig()), либо через pyplot (plt.savefig()). \n", "\n", "Стоит помнить, что по умолчанию метод savefig имеет значения атрибутов типа facecolor отличные от значений figure.facecolor. В конфигурационном файле matplotlibrc можно настроить соответствующие параметры как для savefigure, так и для figure. Поэтому чтобы сохранить пользовательские настройки рисунка методом savefig, нужно изменить атрибуты savefig, а не соответствующие атрибуты figure (dpi, format, edgecolor, facecolor, frameon) или передать соответствующие значения атрибутов явно при вызове метод savefig:" ] }, { "cell_type": "code", "execution_count": 53, "metadata": { "collapsed": false }, "outputs": [], "source": [ "# Сохранение рисунка с параметрами цвета фона по умолчанию\n", "\n", "rcParams['savefig.edgecolor'] = 'k'\n", "rcParams['savefig.facecolor'] = 'k'\n", "rcParams['grid.color'] = 'w'\n", "rcParams['xtick.color'] = 'w'\n", "rcParams['ytick.color'] = 'w'\n", "rcParams['axes.labelcolor'] = 'w'\n", "\n", "fig.savefig('./pictures/png/pic_5_3_1.png', format='png')\n", "fig.savefig('./pictures/png/pic_5_3_1.pdf', format='pdf')\n", "\n", "# Сохранение рисунка с пользовательскими параметрами цвета фона\n", "rcParams['savefig.edgecolor'] = 'w'\n", "rcParams['savefig.facecolor'] = 'w'\n", "rcParams['grid.color'] = 'k'\n", "rcParams['xtick.color'] = 'k'\n", "rcParams['ytick.color'] = 'k'\n", "rcParams['axes.labelcolor'] = 'k'\n", "\n", "# Атрибут facecolor передаётся явно\n", "fig.savefig('./pictures/png/pic_5_3_2.png', format='png', facecolor='k')\n", "fig.savefig('./pictures/png/pic_5_3_2.pdf', format='pdf', facecolor='k')" ] }, { "cell_type": "code", "execution_count": 54, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "figure.facecolor : k\n" ] }, { "data": { "image/png": "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\n/wNCsbIVcu3ZzQAAAABJRU5ErkJggg==\n", "text/plain": [ "" ] }, "execution_count": 54, "metadata": {}, "output_type": "execute_result" } ], "source": [ "print ('figure.facecolor : %s' % rcParams['figure.facecolor'])\n", "\n", "from IPython.display import Image\n", "#Image(filename='pic example 5_3_1.png')\n", "Image(filename='./pictures/png/pic_5_3_1.png')" ] }, { "cell_type": "code", "execution_count": 55, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "figure.facecolor : k\n" ] }, { "data": { "image/png": "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\n/wNCsbIVcu3ZzQAAAABJRU5ErkJggg==\n", "text/plain": [ "" ] }, "execution_count": 55, "metadata": {}, "output_type": "execute_result" } ], "source": [ "from IPython.display import Image\n", "\n", "print ('figure.facecolor : %s' % rcParams['figure.facecolor'])\n", "\n", "# Здесь атрибут facecolor был передан явно(figure.facecolor='k')\n", "Image(filename='./pictures/png/pic_5_3_2.png')" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Так как для сохранения рисунков методом savefig требуется явно задать некоторые атрибуты, то среди атрибутов при создании экземпляра Figure имеет смысл задавать те, которые не являются входящими для метода savefig, а именно figsize. Figsize позволяет сделать рисунок меньше или больше и определяет физический размер рисунка. Так можно подобрать нужный размер для печати. \n", "\n", "Для справки:\n", "\n", "> 1 дюйм = 2.54 см\n", "\n", "> Лист А4 имеет размеры 210x297 мм\n", "\n", "Разрешение рисунка можно получить умножив значения атрибутов figure.figsize и figure.dpi. DPI показывает сколько точек-пикселей приходится на один дюйм." ] }, { "cell_type": "code", "execution_count": 56, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "[8.89, 6.35]\n" ] }, { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAhMAAAGDCAYAAACRLZL6AAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAHKJJREFUeJzt3X2QneVdPvALDGwSFXZLMXUDJVqtsAMmVagxKg0RDUYZ\nw4xhsGbsRqpN5S1G1GpT8VeINLWBROnIUDUiTEgrFgydBF+QFBOHQa2bRAhtJxBa2wmSJiSSl0Lg\n/P445OUQskk42bP3k+fzmdmB5zxnz7nDley5OPf3PDmp0Wg0AgDwFp083AsAAKpNmQAA2qJMAABt\nUSYAgLYoEwBAW5QJAKAtygQA0JYjlonHHnssl1566SG3f+UrX8ktt9yS2267LV/96leHZHEAQPlG\nHOkOF198cXbv3n3I7XPmzMn999+fESNG5Jd/+Zfzd3/3d0OyQACgbEcsE0ly6qmnthzv3r07Gzdu\nzOjRo5Mkzz77bF577bWcfLJdEwCom6MqE2+0bdu2nHbaaQceZMSIvPDCCxkzZkzL/U466aT2VgcA\nDItj+ds23tJbCWeccUb27Nmz/3jXrl3p7u4+7GJ8Df/XTTfdNOxr8CWLEr/kUc6XLMr5OlbHXCZ2\n7NiRrq6unHPOOdm9e3f27NmTs88+O11dXcf85HTOpk2bhnsJvE4WZZFHOWRRXUfc5li/fn2eeeaZ\nPPXUU3nllVeyYMGCLF26NAsWLMgnP/nJdHV15fbbb+/EWgGAAp3UeCvvZxztg5900lt6u4Tjb9Wq\nVZk8efJwL4PIojTyKIcsynGsr9/KBADQ4lhfv32WsyZWrVo13EvgdbIoizzKIYvqUiYAgLbY5gAA\nWtjmAAA6SpmoCXuR5ZBFWeRRDllUlzIBALTFzAQA0MLMBADQUcpETdiLLIcsyiKPcsiiupQJAKAt\nZiYAgBZmJgCAjlImasJeZDlkURZ5lEMW1aVMAABtMTMBALQwMwEAdJQyURP2Isshi7LIoxyyqC5l\nAgBoi5kJAKCFmQkAoKOUiZqwF1kOWZRFHuWQRXUpEwBAW8xMAAAtzEwAAB2lTNSEvchyyKIs8iiH\nLKpLmQAA2mJmAgBoYWYCAOgoZaIm7EWWQxZlkUc5ZFFdygQA0BYzEwBACzMTAEBHKRM1YS+yHLIo\nizzKIYvqUiYAgLaYmQAAWpiZAAA6SpmoCXuR5ZBFWeRRDllUlzIBALTFzAQA0MLMBADQUcpETdiL\nLIcsyiKPcsiiupQJAKAtZiYAgBZmJgCAjlImasJeZDlkURZ5lEMW1aVMAABtMTMBALQwMwEAdJQy\nURP2Isshi7LIoxyyqC5lAgBoi5kJAKCFmQkAoKOUiZqwF1kOWZRFHuWQRXUpEwBAW8xMAAAtzEwA\nAB2lTNSEvchyyKIs8iiHLKpLmQAA2mJmAgBoYWYCAOgoZaIm7EWWQxZlkUc5ZFFdygQA0JYjzkws\nXLgwY8aMyfbt23PNNdfsv/2BBx7Iiy++mCQZNWpUrrrqqkMf3MwEAFTOcZ2ZWL16dbZu3ZqZM2dm\n27ZteeKJJ/afW7x4cfr7+zNr1qzcddddb33FAEClDVomVq5cmb6+viRJX19fVqxYsf/cxIkTM2vW\nrNx///257rrrhnaVtM1eZDlkURZ5lEMW1TVisJNbtmxJT09PkqSrqyubN2/ef+7mm2/OZZddlgUL\nFuThhx8+7GP09/dn3LhxSZLu7u5MmDAhkydPTnLgN45jx3U63qeU9dT9eJ9S1lPn44GBgaLWU6fj\nRYsWZWBgYP/r9bEadGZi3rx5GT9+fGbMmJFly5Zl/fr1mT9/fpJk7ty5ufHGG/O3f/u3Wb58eR55\n5JFDH9zMBABUznGdmZg2bVrWrVuXJNmwYUOmTp2aHTt2JEnWrl2b3t7e3HDDDXn55ZfbWDIAUGWD\nlolJkyZl5MiRWbJkSXp6etLd3Z3Zs2cnSebMmZM777wzy5cvNzNRAW98S5fhI4uyyKMcsqiuQWcm\nkuSjH/1oy/HSpUuTJJdffvnQrAgAqBR/NwcA0MLfzQEAdJQyURP2Isshi7LIoxyyqC5lAgBoi5kJ\nAKCFmQkAoKOUiZqwF1kOWZRFHuWQRXUpEwBAW8xMAAAtzEwAAB2lTNSEvchyyKIs8iiHLKpLmQAA\n2mJmAgBoYWYCAOgoZaIm7EWWQxZlkUc5ZFFdygQA0BYzEwBACzMTAEBHKRM1YS+yHLIoizzKIYvq\nUiYAgLaYmQAAWpiZAAA6SpmoCXuR5ZBFWeRRDllUlzIBALTFzAQA0MLMBADQUcpETdiLLIcsyiKP\ncsiiupQJAKAtZiYAgBZmJgCAjlImasJeZDlkURZ5lEMW1aVMAABtMTMBALQwMwEAdJQyURP2Issh\ni7LIoxyyqC5lAgBoi5kJAKCFmQkAoKOUiZqwF1kOWZRFHuWQRXUpEwBAW8xMAAAtzEwAAB2lTNSE\n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\n++67h3sJvE4WZZFHOWRRTYOWiTPPPDM7d+5Mkvzf//1fzjjjjCTJGWeckT179uy/365du9Ld3X3I\n97vGBACc+Abd5pg2bVrWrVuXJNmwYUOmTp2aHTt2pKurK+ecc052796dPXv25Oyzz05XV1dHFgwA\nlOWIV8CcP39+ent7s3379kyZMiWf+MQnsnTp0jz55JO5//7709XVlenTp+fcc8/t1JoBgIIM6eW0\nAYATn4tWAQBtOeJFq46Wi1uV43BZ3HfffVm8eHF27NiRe+65Jz/6oz86jKusj8Plsc/VV1+dX/3V\nX8373ve+YVhdvQyWxdNPP53Vq1fn/PPPz8SJE4dphfVxuCweeOCB/RevGjVqVK666qrhWmJtPPbY\nY/n4xz+ef/7nf265/Vhev4/LOxMublWOwbIYNWpUHn/88dx444256aabhnGV9TFYHkny0EMP7f/E\nFENrsCy+/OUv5y/+4i/ywQ9+UJHogMGyWLx4cfr7+zNr1qzcddddw7jK+rj44ouze/fuQ24/ltfv\n41ImXNyqHIfLIkmmT5+eJLnwwgvT29s7LOurm8Hy2LRpU1599dWcd955w7W8Whksi+uvvz7jxo3L\nnDlzsmbNmuFaYm0MlsXEiRMza9as3H///bnuuuuGa4m1c+qpp7YcH+vr93EpE8d6cSuGzuGyONgj\njzySuXPndnpptXS4PPbu3ZuVK1dm+vTprsfSIYfLYufOnXnuuedy7bXX5rd/+7czY8aM7N27dziX\nesIb7OfUzTffnK9//etZsGBBLr744uFaYu0d6+v3cSkT7V7ciuPncFnss3HjxowbN85HeTvkjXm8\n/e1vT9Lco7z33ntzySWX5O67785v/dZv5Zvf/OZwLvWEd7g/Gy+//HJGjRqVJDn77LPT29v7piWc\n42ewn1O/93u/l3vuuSczZ87MlVdeOVxLrL1jff0+LmXCxa3KcbgskuT555/P2rVrc8UVV+Sll17K\nrl27hnOptXC4PKZMmZI1a9bk0UcfTX9/fxYtWmTraYgdLouenp50dXXtf3E788wzM3bs2OFc6glv\nsJ9Ta9euTW9vb2644Ya8/PLLw7nM2norr9/HpUxMmjQpI0eOzJIlS9LT05Pu7u7Mnj07SbJgwYJ8\n8pOfzKJFi3L77bcfj6djEIfLYuvWrbnsssty66235qKLLsoll1yS0aNHD/dyT3hvzOP000/f/2fj\nYLY6ht5gP6fuuOOO3HrrrfnsZz+bj3zkI/5OoSE2WBZz5szJnXfemeXLl5uZ6JD169fnmWeeyVNP\nPZW1a9e+pddvF60CANriolUAQFuUCQCgLcoEANAWZQIAaIsyAQC0RZkAANqiTAAAbfn/R0wPKzaT\nkEQAAAAASUVORK5CYII=\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "# Пример 5.3.3\n", "\n", "from matplotlib import rcParams\n", "import matplotlib.pyplot as plt\n", "import numpy as np\n", "\n", "def sm2inch(a):\n", " '''\n", " Converts inches to santimeters\n", " '''\n", " b = []\n", " for i in a:\n", " b.append(i/2.54)\n", " return b\n", "\n", "# Возвращаем обычные значения цветов для дальнейшей интерактивной работы\n", "\n", "rcParams['figure.edgecolor'] = 'w'\n", "rcParams['figure.facecolor'] = 'w'\n", "rcParams['axes.facecolor'] = 'w'\n", "rcParams['axes.edgecolor'] = 'k'\n", "rcParams['grid.color'] = 'k'\n", "rcParams['xtick.color'] = 'k'\n", "rcParams['ytick.color'] = 'k'\n", "rcParams['axes.labelcolor'] = 'k'\n", "\n", "figsize = (3.5, 2.5) # см\n", "figsize = sm2inch(figsize)\n", "print figsize\n", "fig2 = plt.figure(figsize=figsize, facecolor='w')\n", "rcParams['figure.edgecolor'] = 'w'\n", "plt.text(0.45, 0.45,'Hello, world!', color='red', fontsize=16)\n", "plt.grid(True)\n", "\n", "save('pic_5_3_3', fmt='png')\n", "save('pic_5_3_3', fmt='pdf')\n", "\n", "plt.show()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Автор: Шабанов Павел Александрович\n", "\n", "E-mail: pa.shabanov@gmail.com\n", "\n", "## Научная графика в Python\n", "\n", "### Оглавление\n", "\n", "+ [Глава 1 Библиотека matplotlib. Pyplot](http://nbviewer.ipython.org/github/whitehorn/Scientific_graphics_in_python/blob/master/P1 Chapter 1 Pyplot.ipynb)\n", "\n", "+ [Глава 2 Основные графические команды](http://nbviewer.ipython.org/github/whitehorn/Scientific_graphics_in_python/blob/master/P1 Chapter 2 Main graphical commands.ipynb)\n", "\n", "+ [Глава 3 Работа с текстом и шрифтами](http://nbviewer.ipython.org/github/whitehorn/Scientific_graphics_in_python/blob/master/P1 Chapter 3 Text and Fonts.ipynb)\n", "\n", "+ [Глава 4 Цвет и цветовая палитра](http://nbviewer.ipython.org/github/whitehorn/Scientific_graphics_in_python/blob/master/P1 Chapter 4 Color.ipynb)\n", "\n", "**Часть II Структура рисунка в matplotlib**\n", "\n", "> + [Глава 5 Рисунок](http://nbviewer.ipython.org/github/whitehorn/Scientific_graphics_in_python/blob/master/P2 Chapter 5 Figure container.ipynb)\n", "\n", "+ [Глава 6 Область рисования](http://nbviewer.ipython.org/github/whitehorn/Scientific_graphics_in_python/blob/master/P2 Chapter 6 Axes container.ipynb)\n", "\n", "+ [Глава 7 Мультиоконные рисунки](http://nbviewer.ipython.org/github/whitehorn/Scientific_graphics_in_python/blob/master/P2 Chapter 7 Subplots.ipynb)\n", "\n", "+ [Глава 8 Координатные оси](http://nbviewer.ipython.org/github/whitehorn/Scientific_graphics_in_python/blob/master/P2 Chapter 8 Axis container.ipynb)\n", "\n", "+ [Глава 9 Деления координатных осей](http://nbviewer.ipython.org/github/whitehorn/Scientific_graphics_in_python/blob/master/P2 Chapter 9 Ticks container.ipynb)\n", "\n", "**Часть III Специальные элементы рисунка в matplotlib**\n", "\n", "+ [Глава 10 Особенности координатных осей](http://nbviewer.ipython.org/github/whitehorn/Scientific_graphics_in_python/blob/master/P3 Chapter 10 Twinx and log scale.ipynb)\n", "\n", "+ [Глава 11 Графики в полярной системе координат](http://nbviewer.ipython.org/github/whitehorn/Scientific_graphics_in_python/blob/master/P3 Chapter 11 Polar plots.ipynb) \n", "\n", "+ [Глава 12 Легенда](http://nbviewer.ipython.org/github/whitehorn/Scientific_graphics_in_python/blob/master/P3 Chapter 12 Legends.ipynb)\n", "\n", "+ [Глава 13 Цветовая шкала](http://nbviewer.ipython.org/github/whitehorn/Scientific_graphics_in_python/blob/master/P3 Chapter 13 Colorbar.ipynb)" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": true }, "outputs": [], "source": [] } ], "metadata": { "kernelspec": { "display_name": "Python [default]", "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.13" } }, "nbformat": 4, "nbformat_minor": 0 }