{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# Tutorial 3 - Advanced Plots\n", "\n", "This third tutorial will go over basic and advanced plotting, from how to produce nice looking plots to creating 3D plots.\n", "\n", "## 3.1 Simple Plots\n", "\n", "Let's start with a basic plot. Consider viscous fluid flowing between two boundaries at $y = 0$ and $y = h$, with an imposed constant pressure gradient \n", "$$\n", "\\frac{dp}{dx} = -P.\n", "$$\n", "This is called *Poiseuille flow*, and the fluid velocity is given by\n", "$$\n", "u(y) = \\frac{P}{2\\nu \\rho} ( hy - y^2 ).\n", "$$\n", "\n", "Let's plot this, but first let's rewrite the equation:\n", "$$\n", "u(y) = \\frac{P h^2}{2\\nu \\rho} \\left( \\frac{y}{h} - \\frac{y^2}{h^2} \\right).\n", "$$\n", "Now we can see that we should actually plot $u / (P h^2/ 2\\nu\\rho)$ versus $y/h$ -- that way the actual values of those constants won't change the plot.\n", "\n", "To start the plot, we'll import the usual libraries (MatPlotLib will do the plotting), but I'll also set some font choices, including making the size large enough for print." ] }, { "cell_type": "code", "execution_count": 21, "metadata": {}, "outputs": [], "source": [ "%matplotlib inline\n", "\n", "import matplotlib\n", "import matplotlib.pyplot as plt\n", "from matplotlib import rc\n", "import numpy as np\n", "\n", "rc('text.latex',preamble='\\\\usepackage{libertine}\\n\\\\usepackage[libertine]{newtxmath}')\n", "rc('font',**{'family':'serif','serif':['Linux Libertine O']}, size=18)\n", "rc('text', usetex=True)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Here's the simple plot, using NumPy to generate data for the velocity and MatPlotLib to plot it. I prefer to use an object-oriented interface and work with the axes object directly." ] }, { "cell_type": "code", "execution_count": 23, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "Text(0, 0.5, '$y/h$')" ] }, "execution_count": 23, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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d95BYGAgfvjhB1neksyQQkREVE8plUqxNeX999+H3G74ZUghIiKqx/74xz+iWbNm+Pbbb7F161apy3HCkEJERFSPtWzZErNnzwZwuzVFThhSiIiI6rk33ngDAQEBOHjwIHJycqQuR8SQQkREVM+1bt1afBaeY6I3OWBIISIiIrz88ssAgHXr1sFut0tbzH8xpBAREREGDhyIxx57DNevX8cXX3whdTkAGFKIiIgIgEKhQExMDADgq6++kria2xhSiIiICACg1+uhUChw8OBB/PTTT1KXw5BCREREt7Vp0waDBg0CAGzcuFHiatwUUs6cOYMzZ85UuG7RokX417/+5Y7dEBERkYdNnjwZAJCcnCxxJW4IKVFRUQgJCUFISAj8/f0xfPhwzJs3D5mZmQBuP7QoISEBWVlZtS6WiIiIPGvSpEkAgD179iA/P1/SWhRCLSfq9/O7nXPUajVsNpt425JCoRCX5+Xl4f7778eJEydqV61MFBUVITAwEIWFhWjRooXU5RAREblV9+7dcezYMWzatAnjx49367ar8xta65YUtVqNmJgY5OTkID8/HwUFBTAajXjppZfQoUMH5Obmwm634/Lly7XdFREREdWBwYMHAwB2794taR21Dilvv/02LBaL+OfAwEBMnjwZCQkJOHXqFMrKymA2m53eQ0RERPI1ZMgQAMCuXbskrcOl7p5FixYhJycHWq0WGo0Gjz76qNP6mJgY+Pn5yWoqXU9idw8REfmy8+fPo127dvDz80NhYSGaNWvmtm27vbtHpVLBaDQiJiam3ADZrKwsLFq0CJcvX8asWbPccgBEREQknbZt2+LBBx9EWVkZjh07JlkdLocU4PZtSREREQgMDITZbEZcXBw0Gg2CgoJw+PBhJCQkYMqUKTh79qxHiyYiIiLP6t69OwDg6NGjktXQwJU39e7dGxqNBklJSeKy06dPw2q1wmw249ChQzh8+DAAICkpCUajEQDE7iG1Wo3w8HAPlE9ERESe0L17d2RlZUnakuJSSAGA9PR0pz936NABHTp0ECd9AYDDhw/DYrEgPT0dubm5SE9PR3p6OhQKBUJCQnzmFmQiIiJf161bNwBe0JLiqt69e6N3796YM2cOgP9rbUlPT0dBQYE7d0VEREQe5Bjqce7cOclqcGtIuVtFrS1EREQkfw888AAA4LfffpOsBj5gkIiI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\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "# create the figure and axes objects\n", "fig = plt.figure(figsize = (6, 6))\n", "ax = fig.add_subplot(1, 1, 1)\n", "\n", "# create the data for the position and fluid velocity\n", "y = np.linspace(0, 1, 100)\n", "u = y - y**2\n", "\n", "# It's customary to plot the velocity on the horizontal axis so we can imagine the fluid\n", "# \"flowing\" to the right\n", "ax.plot(u, y, color=\"black\")\n", "\n", "# set axis labels\n", "ax.set_xlabel(r\"$u / (Ph^2/2 \\nu \\rho)$\")\n", "ax.set_ylabel(r\"$y/h$\")" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "That's pretty much it -- there's not much else we need to do for this one.\n", "\n", "## 3.1 Adding Objects to a Plot\n", "\n", "But ... maybe we can fancy it up a bit with some velocity vector arrows. And add the boundaries at $y=0$ and $y=h$. Add maybe add some expanatory text. I'll repeat the code again and add to it:" ] }, { "cell_type": "code", "execution_count": 45, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "(-0.2875, 0.5375, -0.27, 1.27)" ] }, "execution_count": 45, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAeQAAAHiCAYAAAA597/kAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjUuMiwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8qNh9FAAAACXBIWXMAAA9hAAAPYQGoP6dpAAA2nklEQVR4nO3deXQUZb7/8U8nLMMSbEAImgtih4PXBZEEATWyJRHwjhsmrKMjWxBR4agkhFnA3QRQQUCaJcyM408hUVEvICQwyHYFSRSPM8yoiagjsghpiIQxW/3+iB2akJCtO1Xdeb/O6YPTqeVbZ7rr089Tz1NlMwzDEAAAMFWQ2QUAAAACGQAASyCQAQCwAAIZAAALIJABALAAAhkAAAsgkAEAsAACGQAACyCQAQCwAAIZAAALIJABALAAAhkAAAsgkAEAsAACGQAACyCQAQCwAAIZAAALIJABALAAAhkAAAsgkAEAsAACGQAACyCQAQCwAAIZAAALIJABALAAAhkAAAsgkAEAsAACGQAACyCQAQCwAAIZAAALIJABALAAAhkAAAtoZubOP//8czN3DwDABa677jpT9ksLGQAACyCQAQCwAAIZAAALIJABALAAAhkAAAsgkAEAsAACGQAACyCQAQCwAAIZAAALIJABALAAAhkAAAsgkAEAsAACGQAACyCQAQCwAAIZAAALIJABALAAAhkAAAsgkAEAsAACGQAACyCQAQCwAAIZAAALIJABALAAAhkAAAsgkAEAsAACGQAACyCQAQCwAAIZAAALIJABALAAAhkAAAsgkAEAsAACGQAACyCQAQCwAAIZAAALIJABALAAAhkAAAsgkAEAsAACGQAACyCQAQCwAAIZAAALIJABALAAAhkAAAsgkAEAsAACGQAACyCQAQCwAAIZAAALIJABALAAAhkAAAsgkAEAsAACGQAACyCQAQCwAAIZAAALIJABALAAAhkAAAsgkAEAsAACGQAACyCQAQCwAAIZAAALaGbGTg3DUGFhoQoLC83YPfzU119/rS5duqhVq1ZmlwIggJ05c0atW7eWzWZr1P2aEsiFhYVq27atGbsGAKBGP/30k9q0adOo+6TLGgAAC7AZhmE09k7dXdZAXfz8889avXq1UlJSdOLECUlSRESEnn76aQ0aNMjk6gAEEjO6rE0JZKAhTp8+rYULF2rhwoU6c+aM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AKyLQPayvLw85eTk1Pg4Rc+J/vADlUN49+4GhXBlwcHBeuKJJ7R//35df/31On78uO655x5NnDhRBQUFDa8fgOURyF7mHlmdkZFR7TJZWVlyuVwMsrA6d3d1VSF8880NDuGq9OrVS/v27VNSUpJsNpvWrFmjPn36aO/evV7fFwBr4RqyD0RGRionJ0cxMTEVt7CTykdbOp3OirmGNbWiYaLsbCkjQ7rjDmnAAJ+Eb0127Nih++67T99++62Cg4M1b948JScnKzg4uNFrAeB7BLKPJCUlVdwI3uFwyG63q2/fvpo6depF72UNeHK5XJo2bZrefPNNSVJUVJRef/11devWzeTKAHgbgQxYnGEY+utf/6rp06eroKBAdrtdq1ev1siRI80uDYAXEciAn8jLy9PYsWO1b98+SdK0adO0cOFCtWrVyuTKAHgDg7oAP+FwOLRr166Kueuvvvqq+vfvr4MHD5pcGQBvoIUM+KHNmzfr/vvv17Fjx9S6dWstX75c9913n9llAWgAWsiAHxo2bJgOHDig6OhoFRYW6v7779fkyZN19uxZs0sDUE8EMuCnunTpos2bN2vevHmy2WxavXq1+vfvr3/9619mlwagHuiyBgLA1q1bNX78eB09elQhISH605/+xChswM/QQgYCQHR0tD799FMNGjRIBQUFuvfeezVr1iyVlJSYXRqAWqKFDASQkpISJScna8GCBZKkgQMHat26dTw5CvADBDIQgN5++2098MADKigoUFhYmN566y3179/f7LIAXEST6rLOyspSUlKSIiMjFRsbK6n8/tKRkZGy2WyKjIzUihUrzlvH5XIpNTVV8fHxat++vXJycuRyuRQbG6v27dsrNTX1vOXz8vIUHx+vyMhIhYeHKzY2Vjk5ORfU4l6uffv2Cg8PV3h4uOLj45WXl1en5bKysmSz2SpenvtKTU09728ul8unxwTrGDlypD7++GNdffXV+v777zVw4ECtXr3a7LKaBM4zLp8eU0AzmpDMzEwjLi7OkGQ4HA7D6XQaMTExRmZmppGenm44HA5DkpGQkHDeeikpKYbdbjckGU6n04iIiDBiYmIMSUZERETFcunp6YYkIz09veI993KZmZkV7+Xn5xt2u92Ii4s7bx+SjOzs7HotJ8mQZOTm5p5Xe3Z2dsXffHlMsKZTp04Zd999d8Vn4MEHHzR+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9dRTGjRokMnVAQgkrVu3bvRBoKYE8pkzZ9S2bdvG3i0AALXy008/qU2bNo26T+7UBQCABZjaZf33v/+9sXcNP/b111/rsssu069+9SuzSwEQwK699lpTuqxNGdRls9nUpk0btW7d2ozdw0/xJCYAjaGxu6rd6LIGAMACCGQAACyAQAYAwAIIZAAALIBABgDAAghkAAAsgEAGAMACCGQAACyAQAYAwAIIZAAALIBABgDAAghkAAAsgEAGAMACCGQAACyAQAYAwAIIZAAALIBABgDAAghkAAAsgEAGAMACCGQAACyAQAYAwAIIZAAALIBABgDAAghkAAAsgEAGAMACCGQAACyAQAYAwAIIZAAALIBABgDAAghkAAAsgEAGAMACCGQAACyAQAYAwAIIZAAALIBABgDAAghkAAAsgEAGAMACCGQAACyAQAYAwAIIZAAALIBABgDAAghkAAAsgEAGAMACCGQAACyAQAYAwAIIZAAALIBABgDAAghkAAAsgEAGAMACCGQAACyAQAYAwAIIZAAALIBABgDAAghkAAAsgEAGAMACCGQAACyAQAYAwAJshmEYZhcBAEBTRwsZAAALIJABALAAAhkAAAsgkAEAsAACGQAACyCQAQCwAAIZAAALIJABALAAAhkAAAsgkAEAsAACGQAACyCQAQCwAAIZAAALIJABALAAAhkAAAsgkAEAsAACGQAACyCQAQCwAAIZAAALIJABALAAAhkAAAsgkAEAsAACGQAACyCQAQCwAAIZAAALIJABALAAAhkAAAsgkAEAsAACGQAACyCQAQCwgP8P0s5eMymIrjgAAAAASUVORK5CYII=\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "# create the figure and axes objects\n", "fig = plt.figure(figsize = (6, 6))\n", "ax = fig.add_subplot(1, 1, 1)\n", "\n", "# create the data for the position and fluid velocity\n", "y = np.linspace(0, 1, 100)\n", "u = y - y**2\n", "\n", "# It's customary to plot the velocity on the horizontal axis so we can imagine the fluid\n", "# \"flowing\" to the right\n", "ax.plot(u, y, color=\"black\")\n", "\n", "# set axis labels\n", "ax.set_xlabel(r\"$u / (Ph^2/2 \\nu \\rho)$\")\n", "ax.set_ylabel(r\"$y/h$\")\n", "\n", "# MatPlotLib will create an arrow for us, but it's a little complicated, so I'll build a function for it.\n", "# Given a y position, it will draw an arrow from u = 0 to u = u(y).\n", "def arrow(y):\n", " uf = y - y**2\n", " return matplotlib.patches.FancyArrowPatch((0, y), (uf, y), arrowstyle=\"Simple, tail_width=0.3, head_width=2, head_length=3\", mutation_scale=5, color = \"red\")\n", "\n", "# Okay, draw the arrows\n", "N_arrows = 10\n", "for i in range(N_arrows):\n", " yi = i/N_arrows\n", " ax.add_patch(arrow(yi))\n", " \n", "# Let's add the boundaries as light grey rectangles\n", "rect_top = matplotlib.patches.Rectangle((-0.25, 1.0), 0.75, 0.2, facecolor='lightgrey', zorder=0)\n", "ax.add_patch(rect_top)\n", "# and a border along the wall\n", "ax.plot([-0.25, 0.5], [1, 1], color=\"black\")\n", "rect_bot = matplotlib.patches.Rectangle((-0.25, -0.2), 0.75, 0.2, facecolor='lightgrey', zorder=0)\n", "ax.add_patch(rect_bot)\n", "# and a border along the wall\n", "ax.plot([-0.25, 0.5], [0, 0], color=\"black\")\n", "\n", "# Add some text indicated high and low pressure areas\n", "ax.text(-0.2, 0.8, \"High\\npressure\")\n", "ax.text(0.3, 0.8, \"Low\\npressure\")\n", "\n", "# I'm not sure we need our axes, either, so remove them\n", "ax.axis('off')" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## 3.3 Complicated Functions 1 - Summations\n", "\n", "Often in fluid dynamics the velocity is given by an infinite summation -- since we're solving PDEs, we get a linear combination of solutions. For example, if we turn the pressure gradient of the Poiseuille flow above off and let the fluid slow down, the now time-dependent flow is given by\n", "$$\n", "u(y, t) = \\frac{4Ph^2}{\\pi^3 \\nu \\rho} \\sum_{n=1, 3, 5 \\dots}^\\infty \\frac{1}{n^3} \\sin(n \\pi y / h) \\, e^{-n^2 \\pi^2 \\nu t / h^2}.\n", "$$\n", "\n", "Let's plot this at a couple of times, but be careful with the units. We'll plot\n", "* the velocity as $u / (Ph^2/2\\nu \\rho)$ again\n", "* the position as $y/h$ again\n", "* the time in terms of the characteristic time, $\\tau = h^2 / \\pi^2 \\nu$." ] }, { "cell_type": "code", "execution_count": 66, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "Text(0, 0.5, '$y/h$')" ] }, "execution_count": 66, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "# create the figure and axes objects\n", "fig = plt.figure(figsize = (6, 6))\n", "ax = fig.add_subplot(1, 1, 1)\n", "\n", "# create the data for the position and fluid velocity\n", "y = np.linspace(0, 1, 100)\n", "\n", "# I'll build a function to calculate the velocity at a specific position y and time t.\n", "# Notice how the loop works - I'm using 99 as the upper limit (a little smaller than infinity)\n", "# and spacing the values of n by 2 to get every odd value.\n", "def velocity(y, t = 0):\n", " u = 0\n", " for n in range(1, 99, 2):\n", " u += 1/n**3 * np.sin(n * np.pi * y) * np.exp(-n**2 * t)\n", " return 8 / np.pi**3 * u\n", "\n", "# Let's plot 20 different times just for fun:\n", "ts = np.linspace(0, 3, 20)\n", "for t in ts:\n", " u = velocity(y, t)\n", " \n", " ax.plot(u, y, color=\"black\")\n", "\n", "ax.set_xlabel(r\"$u / (Ph^2/2 \\nu \\rho)$\")\n", "ax.set_ylabel(r\"$y/h$\")\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## 3.4 Complicated Function 2 - Special Functions\n", "\n", "Often we need to plot special function that turn up as solutions to differential equations. Sine and cosine are the obvious ones, but as a more complicated example, consider the Bessel functions $J_\\alpha(x)$ and $Y_\\alpha(x)$. These functions, like sine and cosine, can't be written down explicitly but are defined by a summation. Luckily, the Python library SciPy has code for them.\n", "\n", "Let's make two plots, one for $J$ and one for $Y$, with a bunch of different orders plotted together." ] }, { "cell_type": "code", "execution_count": 98, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "" ] }, "execution_count": 98, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "from scipy.special import jv, yv\n", "\n", "fig = plt.figure(figsize = (8, 6))\n", "ax1 = fig.add_subplot(1, 2, 1)\n", "ax1.set_ylim(-2, 1.2)\n", "ax1.set_xlabel(r\"$x$\")\n", "ax1.set_ylabel(r\"$J_\\alpha(x)$\")\n", "ax2 = fig.add_subplot(1, 2, 2)\n", "ax2.set_ylim(-2, 1.2)\n", "ax2.set_xlabel(r\"$x$\")\n", "ax2.set_ylabel(r\"$Y_\\alpha(x)$\")\n", "fig.tight_layout()\n", "\n", "# generate data for the two first order Bessel functions\n", "x = np.linspace(0, 20, 1000)\n", "for alpha in range(4):\n", " J = jv(alpha, x)\n", " ax1.plot(x, J, label=r\"$\\alpha =$ \" + f\"{alpha}\")\n", " Y = yv(alpha, x)\n", " ax2.plot(x, Y, label=r\"$\\alpha =$ \" + f\"{alpha}\")\n", "ax1.legend()\n", "ax2.legend()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "In fluid dynamics, the Bessel functions come up in circular flow. For example, in the spin down of a rotating fluid, the velocity is given by\n", "$$\n", "u_\\phi(s, t) = 2\\Omega a \\sum_{n=1}^\\infty \\frac{J_1(\\lambda_n s/a)}{\\lambda_n J_2(\\lambda_n)} \\, e^{-\\lambda_n^2 \\nu t / a^2},\n", "$$\n", "where $\\lambda_n$ is the $n$th zero of the Bessel function $J$. We can use SciPy to look those up. Let's put all our ideas together to plot this:" ] }, { "cell_type": "code", "execution_count": 129, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "Text(0.5, 0, '$s/a$')" ] }, "execution_count": 129, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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VU0xrDiJu4aVHTt2WAWVJUuWiMjlS60PGDBA+eC98MILUlxcbHO7f//9t8THxysTxQGQBx54gANnichjmc1mWbVqldx7773K956vr6889thjdjvUvX37drnxxhsFgNx4443V/k4tLi6WDh06KN/rroJhxUncMaxs375dCSq+vr6ybNkyEbk8Y23btm0FgNSvX9/qbKBrOXr0qDz33HPKISUAMmDAgBodOiIiclcbN26UQYMGOeQkgkOHDkmnTp2U72jLj0xbrVq1Spkfy1XGCzKsOIm7hZWKQcUyFfO8efOkXr16ynwCtn6wTp8+LS+99JLyWADSt29f2bBhgyOfBhGRSzMYDPLwww9bTc8wfPhwycrKqlW7+fn5Shjy8fGRpKSkak2cOWzYMAEg4eHhLjHhJsOKk7hTWNm2bZtVUFm5cqWUlJTIiy++aDWAKzc395ptFRQUyBtvvKEMwLVMi1/bSeKIiDzJ7t27K018OXToUNm+fXuN2ywpKZHx48cr7Y0dO9bmw/X79+9XesCXLl1a4xrshWHFSdwlrGzdutUqqHz//fdy5swZ6d+/v/KGf/XVV695WtvFixdlxowZVpMkde3aVX788UeXSOlERK7ot99+k8cff9zqzMj7779fNm/eXOM2P/roI6W9fv362fRDU0SUEyjatWtX4zmz7IVhxUncIaxs27ZNGfDq6+srP/zwg+zatUvatWunTMVsORPoSkpKSmT27NnSunVr5YN26623SmpqKq+CTERkoz///FNGjx5tdaZkeHh4jQ+df/fdd8plAdq3b2/TWUiFhYXSokULASBTpkyp0XbthWHFSVw9rFQMKj/++KPo9Xpp0KCBMj7l119/veLjzWaz6PV6ZWI4yzUrZs6c6fALexERear9+/fL008/bXXmZJ8+fWTt2rXV7qXeuXOntGrVSplZd9OmTdd8zPz585X5Yew5N0x1Maw4iSuHla1bt1YKKq+++qpVmj979myVj7WcihcaGqqs36RJE5k2bZrq3YZERJ7iwIED8swzz1hd6blXr16yevXqaoWWY8eOKfO9+Pv7V7oIbUVms1nuueceASCPPPJIbZ9GjTGsOImrhpUtW7YoQcXPz0+WLVsmQ4YMUT4MEyZMuGLPyJYtW6RPnz7Kug0bNpTXXnvN5Z4jEZGn+Pvvv2X8+PESEBCgfPf26NFDfvjhB5tDy/nz563OQHr99dev+liDwaAM/N24caO9nkq1MKw4iSuGlc2bN1sFlTlz5kj79u0FgAQEBMjcuXOrfNzu3bvlwQcfVN7o/v7+8sILL9j9mhdERFS1o0ePygsvvGA1HURYWJisWLHCptBSVlYmCQkJymMfeeSRq/aGx8bGCgDp0qWLKtcNYlhxElcLK7/88otVUJk6dapyTYhWrVpVOevhwYMHZdSoUUrC9vX1laeeeqpGUzoTEVHtHT9+XF5++WVlfKElUCxZssSmkxpmzZql7AvuvvvuK/7oPHXqlAQGBgqAGl+otjYYVpzElcJK+aDi6+srsbGxSgC55557Kl3f5+zZs/LSSy9ZzTobGRkpv//+u0rPgIiIyjt16pRMmjRJOePHcn2g1NTUa/aErFmzRjQajXKa8m+//Vbleh988IEyLtHW05/thWHFSVwlrGzatMkqqPTt21d5Y8fHx0tRUZGy7sWLFyUpKUl5E1tmneX1e4iIXNOZM2fk3//+t9JTDkA6dOgg8+fPv2po+f333yUkJEQASGBgoKSnp1dap7i4WG6//XYBIM8//7wjn0YlDCtO4gphpXxQ8fPzU96YdevWlS+++EJZr7S0VL7++muruVI6depUrQFcRESkntzcXHnjjTesfmzecsst8tVXX11xFtvTp09Lr169lH1ESkpKpXXS09OV+3fv3u3op6FgWHEStcPKxo0brXpULMcemzVrpozuNpvN8uOPP8qdd95pNVfKnDlzVBlQRUREtWMymWTKlCkSHBysfK+3a9dOkpOTrXrSLS5duiSPP/64su7LL79c6ft/+PDhAkD69+/vtB+wDCtOomZY2bBhgzILoq+vr/L/oaGh8vfff4uISGZmptWU+oGBgZKYmCgXLlxwer1ERGRfhYWFkpSUJM2aNVO+51u3bi2ffPJJpbOAzGazvPXWW8p6w4YNk3Pnzin3G41G5dTpxYsXO6V+hhUnUSusrF+/Xgkn5S+QNWrUKLlw4YIYjUZ55JFHrE5DnjBhgpw5c8apdRIRkeOdP39eZsyYIc2bN1e+95s3by7Tp0+X8+fPW6377bffKqFEp9PJkSNHlPv+/e9/CwBp27atU37UMqw4iRph5eeff64UVHx9fWX69Oly+vRpeeGFF6xmQ3zsscfkwIEDTquPiIjUcfHiRfn000+txiZef/31kpiYKAUFBcp6v/zyi1x//fUCQFq2bClZWVkiInLu3Dll6v633nrL4fUyrDiJs8NK+aBiWYKCguS7776zmlMFgERERChvQCIi8h5FRUWSkpKiXLAWgAQHB8t///tfMZlMInL5sE+HDh0EuHxB2xUrVoiIyIIFCwSA1K9fXxlS4CgMK07izLCyZs2aSkGlY8eO8u6770rLli2V2zp37iyrVq1yeD1EROTaiouLZc6cOXLLLbdYjV38z3/+I2fPnpW8vDyJiIhQeupnzJghZWVl0rt3bwEgMTExDq2PYcVJnBVWVq9ebTU2xTIroeXceABy0003ybx582ya3ZCIiLxHaWmpfPvtt1b7jIYNG8qkSZPk6NGjEh8fr9w+btw42bFjh/j6+goAWb9+vcPqsnUf6iMiAqqxgoICBAYGIj8/H40bN3bINlatWoVBgwah/J+qXbt2OHDgAAAgKCgIr776Kp577jnUq1fPITUQEZH7M5vNWLJkCaZMmYJdu3YBABo0aID4+Hg0btwYb731FkQEAwYMQIsWLTBnzhx07twZBoMBfn5+dq/H1n2or9237GBGoxEREREICgpCaGgokpKSVG3H0X744QeroGJ5sxw4cAABAQF45ZVXkJOTg5deeolBhYiIrsrX1xeRkZHIzs7G8uXLERYWhgsXLmDGjBl49913MWjQINSrVw+rV6/G1q1b0ahRI+zatQszZ85Ut3CH9e04QE5Ojmg0GomLi1P+rdVqJTIyUpV2RBx7GGjFihWVDv3g/48rPvHEE7zQIBER1Ypl0tCePXsq+5i6desqF1C87rrrlMG5Z8+etfv2PXLMik6nE41GY3WbXq8XAGIwGJzejojjwsqiRYsqhRQAcv/998vOnTvtui0iIvJuZrNZMjIy5L777qty3wNAxo8fb/ftelxYMRgMAkDpDSkPgISHhzu1HQtHhJUZM2ZUepPodDrJyMiw2zaIiIiqsmHDBuUMoYpLdna2Xbdl6z7UbcasJCcnAwAiIiIq3afVapGRkQGTyeTwdoqKilBQUGC12NMbb7yBF198Ufl3cHAw5s+fjx07dqB///523RYREVFFvXv3VsasDB061Oq+u+++W5Wa3CasZGZmArgcKCrSaDQALg+adXQ7U6dORWBgoLK0bt36mtusjp9++kn5/7Fjx+LYsWN49NFH4evrNn8qIiLyAN27d8eK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\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "from scipy.special import j1, jv, jn_zeros\n", "\n", "# create the figure and axes objects\n", "fig = plt.figure(figsize = (6, 6))\n", "ax = fig.add_subplot(1, 1, 1)\n", "\n", "# create the data for the position and fluid velocity\n", "s = np.linspace(0, 0.999, 1000)\n", "\n", "# This is how many terms in the sum we'll have. It's a lot to get the\n", "# t = 0 plot to look okay\n", "N = 10000\n", "# Need a list of zeros of J1:\n", "lam = jn_zeros(1, N)\n", "\n", "# I'll build a function to calculate the velocity at a specific position s and time t.\n", "def velocity(s, t = 0):\n", " u = 0\n", " for n in range(N):\n", " u += j1(lam[n] * s) / lam[n] / jv(2, lam[n]) * np.exp(-lam[n]**2 * t)\n", " \n", " return 2 * u\n", "\n", "# Let's plot 20 different times just for fun:\n", "ts = np.linspace(0.0, 0.1, 4)\n", "for t in ts:\n", " u = velocity(s, t)\n", " \n", " ax.plot(s, u, color=\"black\")\n", "\n", "ax.set_ylabel(r\"$u_\\phi / (\\Omega a)$\")\n", "ax.set_xlabel(r\"$s/a$\")" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## 3.5 3D Plots\n", "\n", "It's possile to plot in 3D. Let's try it with the surface of a rotating fluid, which takes the form\n", "$$\n", "z = \\frac{\\Omega^2}{2g} (x^2 + y^2) + \\left( \\frac{p_1 - p_0}{\\rho g} \\right).\n", "$$\n", "I'll set $p_1 = p_0 = 0$ for the plot, since that just adds a constant to the overall height. And we'll take the other constants so that $\\Omega^2 = 2g$, and the function we'll end up plotting is the simple parabaloid\n", "$$\n", "z = x^2 + y^2.\n", "$$\n", "\n", "To plot in 3D, we need to import the toolkit for it from MatPlotLib:" ] }, { "cell_type": "code", "execution_count": 133, "metadata": {}, "outputs": [], "source": [ "%matplotlib notebook\n", "from mpl_toolkits.mplot3d import Axes3D" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "I've changed the matplotlib magic to \"notebook\" so that we can interact with the 3D plot. Then, when making the figure axes, just add \"projection = '3d'\" as an option." ] }, { "cell_type": "code", "execution_count": 134, "metadata": {}, "outputs": [ { "data": { "application/javascript": [ "/* Put everything inside the global mpl namespace */\n", "/* global mpl */\n", "window.mpl = {};\n", "\n", "mpl.get_websocket_type = function () {\n", " if (typeof WebSocket !== 'undefined') {\n", " return WebSocket;\n", " } else if (typeof MozWebSocket !== 'undefined') {\n", " return MozWebSocket;\n", " } else {\n", " alert(\n", " 'Your browser does not have WebSocket support. ' +\n", " 'Please try Chrome, Safari or Firefox ≥ 6. ' +\n", " 'Firefox 4 and 5 are also supported but you ' +\n", " 'have to enable WebSockets in about:config.'\n", " );\n", " }\n", "};\n", "\n", "mpl.figure = function (figure_id, websocket, ondownload, parent_element) {\n", " this.id = figure_id;\n", "\n", " this.ws = websocket;\n", "\n", " this.supports_binary = this.ws.binaryType !== undefined;\n", "\n", " if (!this.supports_binary) {\n", " var warnings = document.getElementById('mpl-warnings');\n", " if (warnings) {\n", " warnings.style.display = 'block';\n", " warnings.textContent =\n", " 'This browser does not support binary websocket messages. ' +\n", " 'Performance may be slow.';\n", " }\n", " }\n", "\n", " this.imageObj = new Image();\n", "\n", " this.context = undefined;\n", " this.message = undefined;\n", " this.canvas = undefined;\n", " this.rubberband_canvas = undefined;\n", " this.rubberband_context = undefined;\n", " this.format_dropdown = undefined;\n", "\n", " this.image_mode = 'full';\n", "\n", " this.root = document.createElement('div');\n", " this.root.setAttribute('style', 'display: inline-block');\n", " this._root_extra_style(this.root);\n", "\n", " parent_element.appendChild(this.root);\n", "\n", " this._init_header(this);\n", " this._init_canvas(this);\n", " this._init_toolbar(this);\n", "\n", " var fig = this;\n", "\n", " this.waiting = false;\n", "\n", " this.ws.onopen = function () {\n", " fig.send_message('supports_binary', { value: fig.supports_binary });\n", " fig.send_message('send_image_mode', {});\n", " if (fig.ratio !== 1) {\n", " fig.send_message('set_device_pixel_ratio', {\n", " device_pixel_ratio: fig.ratio,\n", " });\n", " }\n", " fig.send_message('refresh', {});\n", " };\n", "\n", " this.imageObj.onload = function () {\n", " if (fig.image_mode === 'full') {\n", " // Full images could contain transparency (where diff images\n", " // almost always do), so we need to clear the canvas so that\n", " // there is no ghosting.\n", " fig.context.clearRect(0, 0, fig.canvas.width, fig.canvas.height);\n", " }\n", " fig.context.drawImage(fig.imageObj, 0, 0);\n", " };\n", "\n", " this.imageObj.onunload = function () {\n", " fig.ws.close();\n", " };\n", "\n", " this.ws.onmessage = this._make_on_message_function(this);\n", "\n", " this.ondownload = ondownload;\n", "};\n", "\n", "mpl.figure.prototype._init_header = function () {\n", " var titlebar = document.createElement('div');\n", " titlebar.classList =\n", " 'ui-dialog-titlebar ui-widget-header ui-corner-all ui-helper-clearfix';\n", " var titletext = document.createElement('div');\n", " titletext.classList = 'ui-dialog-title';\n", " titletext.setAttribute(\n", " 'style',\n", " 'width: 100%; text-align: center; padding: 3px;'\n", " );\n", " titlebar.appendChild(titletext);\n", " this.root.appendChild(titlebar);\n", " this.header = titletext;\n", "};\n", "\n", "mpl.figure.prototype._canvas_extra_style = function (_canvas_div) {};\n", "\n", "mpl.figure.prototype._root_extra_style = function (_canvas_div) {};\n", "\n", "mpl.figure.prototype._init_canvas = function () {\n", " var fig = this;\n", "\n", " var canvas_div = (this.canvas_div = document.createElement('div'));\n", " canvas_div.setAttribute(\n", " 'style',\n", " 'border: 1px solid #ddd;' +\n", " 'box-sizing: content-box;' +\n", " 'clear: both;' +\n", " 'min-height: 1px;' +\n", " 'min-width: 1px;' +\n", " 'outline: 0;' +\n", " 'overflow: hidden;' +\n", " 'position: relative;' +\n", " 'resize: both;'\n", " );\n", "\n", " function on_keyboard_event_closure(name) {\n", " return function (event) {\n", " return fig.key_event(event, name);\n", " };\n", " }\n", "\n", " canvas_div.addEventListener(\n", " 'keydown',\n", " on_keyboard_event_closure('key_press')\n", " );\n", " canvas_div.addEventListener(\n", " 'keyup',\n", " on_keyboard_event_closure('key_release')\n", " );\n", "\n", " this._canvas_extra_style(canvas_div);\n", " this.root.appendChild(canvas_div);\n", "\n", " var canvas = (this.canvas = document.createElement('canvas'));\n", " canvas.classList.add('mpl-canvas');\n", " canvas.setAttribute('style', 'box-sizing: content-box;');\n", "\n", " this.context = canvas.getContext('2d');\n", "\n", " var backingStore =\n", " this.context.backingStorePixelRatio ||\n", " this.context.webkitBackingStorePixelRatio ||\n", " this.context.mozBackingStorePixelRatio ||\n", " this.context.msBackingStorePixelRatio ||\n", " this.context.oBackingStorePixelRatio ||\n", " this.context.backingStorePixelRatio ||\n", " 1;\n", "\n", " this.ratio = (window.devicePixelRatio || 1) / backingStore;\n", "\n", " var rubberband_canvas = (this.rubberband_canvas = document.createElement(\n", " 'canvas'\n", " ));\n", " rubberband_canvas.setAttribute(\n", " 'style',\n", " 'box-sizing: content-box; position: absolute; left: 0; top: 0; z-index: 1;'\n", " );\n", "\n", " // Apply a ponyfill if ResizeObserver is not implemented by browser.\n", " if (this.ResizeObserver === undefined) {\n", " if (window.ResizeObserver !== undefined) {\n", " this.ResizeObserver = window.ResizeObserver;\n", " } else {\n", " var obs = _JSXTOOLS_RESIZE_OBSERVER({});\n", " this.ResizeObserver = obs.ResizeObserver;\n", " }\n", " }\n", "\n", " this.resizeObserverInstance = new this.ResizeObserver(function (entries) {\n", " var nentries = entries.length;\n", " for (var i = 0; i < nentries; i++) {\n", " var entry = entries[i];\n", " var width, height;\n", " if (entry.contentBoxSize) {\n", " if (entry.contentBoxSize instanceof Array) {\n", " // Chrome 84 implements new version of spec.\n", " width = entry.contentBoxSize[0].inlineSize;\n", " height = entry.contentBoxSize[0].blockSize;\n", " } else {\n", " // Firefox implements old version of spec.\n", " width = entry.contentBoxSize.inlineSize;\n", " height = entry.contentBoxSize.blockSize;\n", " }\n", " } else {\n", " // Chrome <84 implements even older version of spec.\n", " width = entry.contentRect.width;\n", " height = entry.contentRect.height;\n", " }\n", "\n", " // Keep the size of the canvas and rubber band canvas in sync with\n", " // the canvas container.\n", " if (entry.devicePixelContentBoxSize) {\n", " // Chrome 84 implements new version of spec.\n", " canvas.setAttribute(\n", " 'width',\n", " entry.devicePixelContentBoxSize[0].inlineSize\n", " );\n", " canvas.setAttribute(\n", " 'height',\n", " entry.devicePixelContentBoxSize[0].blockSize\n", " );\n", " } else {\n", " canvas.setAttribute('width', width * fig.ratio);\n", " canvas.setAttribute('height', height * fig.ratio);\n", " }\n", " canvas.setAttribute(\n", " 'style',\n", " 'width: ' + width + 'px; height: ' + height + 'px;'\n", " );\n", "\n", " rubberband_canvas.setAttribute('width', width);\n", " rubberband_canvas.setAttribute('height', height);\n", "\n", " // And update the size in Python. We ignore the initial 0/0 size\n", " // that occurs as the element is placed into the DOM, which should\n", " // otherwise not happen due to the minimum size styling.\n", " if (fig.ws.readyState == 1 && width != 0 && height != 0) {\n", " fig.request_resize(width, height);\n", " }\n", " }\n", " });\n", " this.resizeObserverInstance.observe(canvas_div);\n", "\n", " function on_mouse_event_closure(name) {\n", " return function (event) {\n", " return fig.mouse_event(event, name);\n", " };\n", " }\n", "\n", " rubberband_canvas.addEventListener(\n", " 'mousedown',\n", " on_mouse_event_closure('button_press')\n", " );\n", " rubberband_canvas.addEventListener(\n", " 'mouseup',\n", " on_mouse_event_closure('button_release')\n", " );\n", " rubberband_canvas.addEventListener(\n", " 'dblclick',\n", " on_mouse_event_closure('dblclick')\n", " );\n", " // Throttle sequential mouse events to 1 every 20ms.\n", " rubberband_canvas.addEventListener(\n", " 'mousemove',\n", " on_mouse_event_closure('motion_notify')\n", " );\n", "\n", " rubberband_canvas.addEventListener(\n", " 'mouseenter',\n", " on_mouse_event_closure('figure_enter')\n", " );\n", " rubberband_canvas.addEventListener(\n", " 'mouseleave',\n", " on_mouse_event_closure('figure_leave')\n", " );\n", "\n", " canvas_div.addEventListener('wheel', function (event) {\n", " if (event.deltaY < 0) {\n", " event.step = 1;\n", " } else {\n", " event.step = -1;\n", " }\n", " on_mouse_event_closure('scroll')(event);\n", " });\n", "\n", " canvas_div.appendChild(canvas);\n", " canvas_div.appendChild(rubberband_canvas);\n", "\n", " this.rubberband_context = rubberband_canvas.getContext('2d');\n", " this.rubberband_context.strokeStyle = '#000000';\n", "\n", " this._resize_canvas = function (width, height, forward) {\n", " if (forward) {\n", " canvas_div.style.width = width + 'px';\n", " canvas_div.style.height = height + 'px';\n", " }\n", " };\n", "\n", " // Disable right mouse context menu.\n", " this.rubberband_canvas.addEventListener('contextmenu', function (_e) {\n", " event.preventDefault();\n", " return false;\n", " });\n", "\n", " function set_focus() {\n", " canvas.focus();\n", " canvas_div.focus();\n", " }\n", "\n", " window.setTimeout(set_focus, 100);\n", "};\n", "\n", "mpl.figure.prototype._init_toolbar = function () {\n", " var fig = this;\n", "\n", " var toolbar = document.createElement('div');\n", " toolbar.classList = 'mpl-toolbar';\n", " this.root.appendChild(toolbar);\n", "\n", " function on_click_closure(name) {\n", " return function (_event) {\n", " return fig.toolbar_button_onclick(name);\n", " };\n", " }\n", "\n", " function on_mouseover_closure(tooltip) {\n", " return function (event) {\n", " if (!event.currentTarget.disabled) {\n", " return fig.toolbar_button_onmouseover(tooltip);\n", " }\n", " };\n", " }\n", "\n", " fig.buttons = {};\n", " var buttonGroup = document.createElement('div');\n", " buttonGroup.classList = 'mpl-button-group';\n", " for (var toolbar_ind in mpl.toolbar_items) {\n", " var name = mpl.toolbar_items[toolbar_ind][0];\n", " var tooltip = mpl.toolbar_items[toolbar_ind][1];\n", " var image = mpl.toolbar_items[toolbar_ind][2];\n", " var method_name = mpl.toolbar_items[toolbar_ind][3];\n", "\n", " if (!name) {\n", " /* Instead of a spacer, we start a new button group. */\n", " if (buttonGroup.hasChildNodes()) {\n", " toolbar.appendChild(buttonGroup);\n", " }\n", " buttonGroup = document.createElement('div');\n", " buttonGroup.classList = 'mpl-button-group';\n", " continue;\n", " }\n", "\n", " var button = (fig.buttons[name] = document.createElement('button'));\n", " button.classList = 'mpl-widget';\n", " button.setAttribute('role', 'button');\n", " button.setAttribute('aria-disabled', 'false');\n", " button.addEventListener('click', on_click_closure(method_name));\n", " button.addEventListener('mouseover', on_mouseover_closure(tooltip));\n", "\n", " var icon_img = document.createElement('img');\n", " icon_img.src = '_images/' + image + '.png';\n", " icon_img.srcset = '_images/' + image + '_large.png 2x';\n", " icon_img.alt = tooltip;\n", " button.appendChild(icon_img);\n", "\n", " buttonGroup.appendChild(button);\n", " }\n", "\n", " if (buttonGroup.hasChildNodes()) {\n", " toolbar.appendChild(buttonGroup);\n", " }\n", "\n", " var fmt_picker = document.createElement('select');\n", " fmt_picker.classList = 'mpl-widget';\n", " toolbar.appendChild(fmt_picker);\n", " this.format_dropdown = fmt_picker;\n", "\n", " for (var ind in mpl.extensions) {\n", " var fmt = mpl.extensions[ind];\n", " var option = document.createElement('option');\n", " option.selected = fmt === mpl.default_extension;\n", " option.innerHTML = fmt;\n", " fmt_picker.appendChild(option);\n", " }\n", "\n", " var status_bar = document.createElement('span');\n", " status_bar.classList = 'mpl-message';\n", " toolbar.appendChild(status_bar);\n", " this.message = status_bar;\n", "};\n", "\n", "mpl.figure.prototype.request_resize = function (x_pixels, y_pixels) {\n", " // Request matplotlib to resize the figure. Matplotlib will then trigger a resize in the client,\n", " // which will in turn request a refresh of the image.\n", " this.send_message('resize', { width: x_pixels, height: y_pixels });\n", "};\n", "\n", "mpl.figure.prototype.send_message = function (type, properties) {\n", " properties['type'] = type;\n", " properties['figure_id'] = this.id;\n", " this.ws.send(JSON.stringify(properties));\n", "};\n", "\n", "mpl.figure.prototype.send_draw_message = function () {\n", " if (!this.waiting) {\n", " this.waiting = true;\n", " this.ws.send(JSON.stringify({ type: 'draw', figure_id: this.id }));\n", " }\n", "};\n", "\n", "mpl.figure.prototype.handle_save = function (fig, _msg) {\n", " var format_dropdown = fig.format_dropdown;\n", " var format = format_dropdown.options[format_dropdown.selectedIndex].value;\n", " fig.ondownload(fig, format);\n", "};\n", "\n", "mpl.figure.prototype.handle_resize = function (fig, msg) {\n", " var size = msg['size'];\n", " if (size[0] !== fig.canvas.width || size[1] !== fig.canvas.height) {\n", " fig._resize_canvas(size[0], size[1], msg['forward']);\n", " fig.send_message('refresh', {});\n", " }\n", "};\n", "\n", "mpl.figure.prototype.handle_rubberband = function (fig, msg) {\n", " var x0 = msg['x0'] / fig.ratio;\n", " var y0 = (fig.canvas.height - msg['y0']) / fig.ratio;\n", " var x1 = msg['x1'] / fig.ratio;\n", " var y1 = (fig.canvas.height - msg['y1']) / fig.ratio;\n", " x0 = Math.floor(x0) + 0.5;\n", " y0 = Math.floor(y0) + 0.5;\n", " x1 = Math.floor(x1) + 0.5;\n", " y1 = Math.floor(y1) + 0.5;\n", " var min_x = Math.min(x0, x1);\n", " var min_y = Math.min(y0, y1);\n", " var width = Math.abs(x1 - x0);\n", " var height = Math.abs(y1 - y0);\n", "\n", " fig.rubberband_context.clearRect(\n", " 0,\n", " 0,\n", " fig.canvas.width / fig.ratio,\n", " fig.canvas.height / fig.ratio\n", " );\n", "\n", " fig.rubberband_context.strokeRect(min_x, min_y, width, height);\n", "};\n", "\n", "mpl.figure.prototype.handle_figure_label = function (fig, msg) {\n", " // Updates the figure title.\n", " fig.header.textContent = msg['label'];\n", "};\n", "\n", "mpl.figure.prototype.handle_cursor = function (fig, msg) {\n", " fig.rubberband_canvas.style.cursor = msg['cursor'];\n", "};\n", "\n", "mpl.figure.prototype.handle_message = function (fig, msg) {\n", " fig.message.textContent = msg['message'];\n", "};\n", "\n", "mpl.figure.prototype.handle_draw = function (fig, _msg) {\n", " // Request the server to send over a new figure.\n", " fig.send_draw_message();\n", "};\n", "\n", "mpl.figure.prototype.handle_image_mode = function (fig, msg) {\n", " fig.image_mode = msg['mode'];\n", "};\n", "\n", "mpl.figure.prototype.handle_history_buttons = function (fig, msg) {\n", " for (var key in msg) {\n", " if (!(key in fig.buttons)) {\n", " continue;\n", " }\n", " fig.buttons[key].disabled = !msg[key];\n", " fig.buttons[key].setAttribute('aria-disabled', !msg[key]);\n", " }\n", "};\n", "\n", "mpl.figure.prototype.handle_navigate_mode = function (fig, msg) {\n", " if (msg['mode'] === 'PAN') {\n", " fig.buttons['Pan'].classList.add('active');\n", " fig.buttons['Zoom'].classList.remove('active');\n", " } else if (msg['mode'] === 'ZOOM') {\n", " fig.buttons['Pan'].classList.remove('active');\n", " fig.buttons['Zoom'].classList.add('active');\n", " } else {\n", " fig.buttons['Pan'].classList.remove('active');\n", " fig.buttons['Zoom'].classList.remove('active');\n", " }\n", "};\n", "\n", "mpl.figure.prototype.updated_canvas_event = function () {\n", " // Called whenever the canvas gets updated.\n", " this.send_message('ack', {});\n", "};\n", "\n", "// A function to construct a web socket function for onmessage handling.\n", "// Called in the figure constructor.\n", "mpl.figure.prototype._make_on_message_function = function (fig) {\n", " return function socket_on_message(evt) {\n", " if (evt.data instanceof Blob) {\n", " var img = evt.data;\n", " if (img.type !== 'image/png') {\n", " /* FIXME: We get \"Resource interpreted as Image but\n", " * transferred with MIME type text/plain:\" errors on\n", " * Chrome. But how to set the MIME type? It doesn't seem\n", " * to be part of the websocket stream */\n", " img.type = 'image/png';\n", " }\n", "\n", " /* Free the memory for the previous frames */\n", " if (fig.imageObj.src) {\n", " (window.URL || window.webkitURL).revokeObjectURL(\n", " fig.imageObj.src\n", " );\n", " }\n", "\n", " fig.imageObj.src = (window.URL || window.webkitURL).createObjectURL(\n", " img\n", " );\n", " fig.updated_canvas_event();\n", " fig.waiting = false;\n", " return;\n", " } else if (\n", " typeof evt.data === 'string' &&\n", " evt.data.slice(0, 21) === 'data:image/png;base64'\n", " ) {\n", " fig.imageObj.src = evt.data;\n", " fig.updated_canvas_event();\n", " fig.waiting = false;\n", " return;\n", " }\n", "\n", " var msg = JSON.parse(evt.data);\n", " var msg_type = msg['type'];\n", "\n", " // Call the \"handle_{type}\" callback, which takes\n", " // the figure and JSON message as its only arguments.\n", " try {\n", " var callback = fig['handle_' + msg_type];\n", " } catch (e) {\n", " console.log(\n", " \"No handler for the '\" + msg_type + \"' message type: \",\n", " msg\n", " );\n", " return;\n", " }\n", "\n", " if (callback) {\n", " try {\n", " // console.log(\"Handling '\" + msg_type + \"' message: \", msg);\n", " callback(fig, msg);\n", " } catch (e) {\n", " console.log(\n", " \"Exception inside the 'handler_\" + msg_type + \"' callback:\",\n", " e,\n", " e.stack,\n", " msg\n", " );\n", " }\n", " }\n", " };\n", "};\n", "\n", "// from https://stackoverflow.com/questions/1114465/getting-mouse-location-in-canvas\n", "mpl.findpos = function (e) {\n", " //this section is from http://www.quirksmode.org/js/events_properties.html\n", " var targ;\n", " if (!e) {\n", " e = window.event;\n", " }\n", " if (e.target) {\n", " targ = e.target;\n", " } else if (e.srcElement) {\n", " targ = e.srcElement;\n", " }\n", " if (targ.nodeType === 3) {\n", " // defeat Safari bug\n", " targ = targ.parentNode;\n", " }\n", "\n", " // pageX,Y are the mouse positions relative to the document\n", " var boundingRect = targ.getBoundingClientRect();\n", " var x = e.pageX - (boundingRect.left + document.body.scrollLeft);\n", " var y = e.pageY - (boundingRect.top + document.body.scrollTop);\n", "\n", " return { x: x, y: y };\n", "};\n", "\n", "/*\n", " * return a copy of an object with only non-object keys\n", " * we need this to avoid circular references\n", " * https://stackoverflow.com/a/24161582/3208463\n", " */\n", "function simpleKeys(original) {\n", " return Object.keys(original).reduce(function (obj, key) {\n", " if (typeof original[key] !== 'object') {\n", " obj[key] = original[key];\n", " }\n", " return obj;\n", " }, {});\n", "}\n", "\n", "mpl.figure.prototype.mouse_event = function (event, name) {\n", " var canvas_pos = mpl.findpos(event);\n", "\n", " if (name === 'button_press') {\n", " this.canvas.focus();\n", " this.canvas_div.focus();\n", " }\n", "\n", " var x = canvas_pos.x * this.ratio;\n", " var y = canvas_pos.y * this.ratio;\n", "\n", " this.send_message(name, {\n", " x: x,\n", " y: y,\n", " button: event.button,\n", " step: event.step,\n", " guiEvent: simpleKeys(event),\n", " });\n", "\n", " /* This prevents the web browser from automatically changing to\n", " * the text insertion cursor when the button is pressed. We want\n", " * to control all of the cursor setting manually through the\n", " * 'cursor' event from matplotlib */\n", " event.preventDefault();\n", " return false;\n", "};\n", "\n", "mpl.figure.prototype._key_event_extra = function (_event, _name) {\n", " // Handle any extra behaviour associated with a key event\n", "};\n", "\n", "mpl.figure.prototype.key_event = function (event, name) {\n", " // Prevent repeat events\n", " if (name === 'key_press') {\n", " if (event.key === this._key) {\n", " return;\n", " } else {\n", " this._key = event.key;\n", " }\n", " }\n", " if (name === 'key_release') {\n", " this._key = null;\n", " }\n", "\n", " var value = '';\n", " if (event.ctrlKey && event.key !== 'Control') {\n", " value += 'ctrl+';\n", " }\n", " else if (event.altKey && event.key !== 'Alt') {\n", " value += 'alt+';\n", " }\n", " else if (event.shiftKey && event.key !== 'Shift') {\n", " value += 'shift+';\n", " }\n", "\n", " value += 'k' + event.key;\n", "\n", " this._key_event_extra(event, name);\n", "\n", " this.send_message(name, { key: value, guiEvent: simpleKeys(event) });\n", " return false;\n", "};\n", "\n", "mpl.figure.prototype.toolbar_button_onclick = function (name) {\n", " if (name === 'download') {\n", " this.handle_save(this, null);\n", " } else {\n", " this.send_message('toolbar_button', { name: name });\n", " }\n", "};\n", "\n", "mpl.figure.prototype.toolbar_button_onmouseover = function (tooltip) {\n", " this.message.textContent = tooltip;\n", "};\n", "\n", "///////////////// REMAINING CONTENT GENERATED BY embed_js.py /////////////////\n", "// prettier-ignore\n", "var _JSXTOOLS_RESIZE_OBSERVER=function(A){var t,i=new WeakMap,n=new WeakMap,a=new WeakMap,r=new WeakMap,o=new Set;function s(e){if(!(this instanceof s))throw new TypeError(\"Constructor requires 'new' operator\");i.set(this,e)}function h(){throw new TypeError(\"Function is not a constructor\")}function c(e,t,i,n){e=0 in arguments?Number(arguments[0]):0,t=1 in arguments?Number(arguments[1]):0,i=2 in arguments?Number(arguments[2]):0,n=3 in arguments?Number(arguments[3]):0,this.right=(this.x=this.left=e)+(this.width=i),this.bottom=(this.y=this.top=t)+(this.height=n),Object.freeze(this)}function d(){t=requestAnimationFrame(d);var s=new WeakMap,p=new Set;o.forEach((function(t){r.get(t).forEach((function(i){var r=t instanceof window.SVGElement,o=a.get(t),d=r?0:parseFloat(o.paddingTop),f=r?0:parseFloat(o.paddingRight),l=r?0:parseFloat(o.paddingBottom),u=r?0:parseFloat(o.paddingLeft),g=r?0:parseFloat(o.borderTopWidth),m=r?0:parseFloat(o.borderRightWidth),w=r?0:parseFloat(o.borderBottomWidth),b=u+f,F=d+l,v=(r?0:parseFloat(o.borderLeftWidth))+m,W=g+w,y=r?0:t.offsetHeight-W-t.clientHeight,E=r?0:t.offsetWidth-v-t.clientWidth,R=b+v,z=F+W,M=r?t.width:parseFloat(o.width)-R-E,O=r?t.height:parseFloat(o.height)-z-y;if(n.has(t)){var k=n.get(t);if(k[0]===M&&k[1]===O)return}n.set(t,[M,O]);var S=Object.create(h.prototype);S.target=t,S.contentRect=new c(u,d,M,O),s.has(i)||(s.set(i,[]),p.add(i)),s.get(i).push(S)}))})),p.forEach((function(e){i.get(e).call(e,s.get(e),e)}))}return s.prototype.observe=function(i){if(i instanceof window.Element){r.has(i)||(r.set(i,new Set),o.add(i),a.set(i,window.getComputedStyle(i)));var n=r.get(i);n.has(this)||n.add(this),cancelAnimationFrame(t),t=requestAnimationFrame(d)}},s.prototype.unobserve=function(i){if(i instanceof window.Element&&r.has(i)){var n=r.get(i);n.has(this)&&(n.delete(this),n.size||(r.delete(i),o.delete(i))),n.size||r.delete(i),o.size||cancelAnimationFrame(t)}},A.DOMRectReadOnly=c,A.ResizeObserver=s,A.ResizeObserverEntry=h,A}; // eslint-disable-line\n", "mpl.toolbar_items = [[\"Home\", \"Reset original view\", \"fa fa-home icon-home\", \"home\"], [\"Back\", \"Back to previous view\", \"fa fa-arrow-left icon-arrow-left\", \"back\"], [\"Forward\", \"Forward to next view\", \"fa fa-arrow-right icon-arrow-right\", \"forward\"], [\"\", \"\", \"\", \"\"], [\"Pan\", \"Left button pans, Right button zooms\\nx/y fixes axis, CTRL fixes aspect\", \"fa fa-arrows icon-move\", \"pan\"], [\"Zoom\", \"Zoom to rectangle\\nx/y fixes axis\", \"fa fa-square-o icon-check-empty\", \"zoom\"], [\"\", \"\", \"\", \"\"], [\"Download\", \"Download plot\", \"fa fa-floppy-o icon-save\", \"download\"]];\n", "\n", "mpl.extensions = [\"eps\", \"jpeg\", \"pgf\", \"pdf\", \"png\", \"ps\", \"raw\", \"svg\", \"tif\"];\n", "\n", "mpl.default_extension = \"png\";/* global mpl */\n", "\n", "var comm_websocket_adapter = function (comm) {\n", " // Create a \"websocket\"-like object which calls the given IPython comm\n", " // object with the appropriate methods. Currently this is a non binary\n", " // socket, so there is still some room for performance tuning.\n", " var ws = {};\n", "\n", " ws.binaryType = comm.kernel.ws.binaryType;\n", " ws.readyState = comm.kernel.ws.readyState;\n", " function updateReadyState(_event) {\n", " if (comm.kernel.ws) {\n", " ws.readyState = comm.kernel.ws.readyState;\n", " } else {\n", " ws.readyState = 3; // Closed state.\n", " }\n", " }\n", " comm.kernel.ws.addEventListener('open', updateReadyState);\n", " comm.kernel.ws.addEventListener('close', updateReadyState);\n", " comm.kernel.ws.addEventListener('error', updateReadyState);\n", "\n", " ws.close = function () {\n", " comm.close();\n", " };\n", " ws.send = function (m) {\n", " //console.log('sending', m);\n", " comm.send(m);\n", " };\n", " // Register the callback with on_msg.\n", " comm.on_msg(function (msg) {\n", " //console.log('receiving', msg['content']['data'], msg);\n", " var data = msg['content']['data'];\n", " if (data['blob'] !== undefined) {\n", " data = {\n", " data: new Blob(msg['buffers'], { type: data['blob'] }),\n", " };\n", " }\n", " // Pass the mpl event to the overridden (by mpl) onmessage function.\n", " ws.onmessage(data);\n", " });\n", " return ws;\n", "};\n", "\n", "mpl.mpl_figure_comm = function (comm, msg) {\n", " // This is the function which gets called when the mpl process\n", " // starts-up an IPython Comm through the \"matplotlib\" channel.\n", "\n", " var id = msg.content.data.id;\n", " // Get hold of the div created by the display call when the Comm\n", " // socket was opened in Python.\n", " var element = document.getElementById(id);\n", " var ws_proxy = comm_websocket_adapter(comm);\n", "\n", " function ondownload(figure, _format) {\n", " window.open(figure.canvas.toDataURL());\n", " }\n", "\n", " var fig = new mpl.figure(id, ws_proxy, ondownload, element);\n", "\n", " // Call onopen now - mpl needs it, as it is assuming we've passed it a real\n", " // web socket which is closed, not our websocket->open comm proxy.\n", " ws_proxy.onopen();\n", "\n", " fig.parent_element = element;\n", " fig.cell_info = mpl.find_output_cell(\"
\");\n", " if (!fig.cell_info) {\n", " console.error('Failed to find cell for figure', id, fig);\n", " return;\n", " }\n", " fig.cell_info[0].output_area.element.on(\n", " 'cleared',\n", " { fig: fig },\n", " fig._remove_fig_handler\n", " );\n", "};\n", "\n", "mpl.figure.prototype.handle_close = function (fig, msg) {\n", " var width = fig.canvas.width / fig.ratio;\n", " fig.cell_info[0].output_area.element.off(\n", " 'cleared',\n", " fig._remove_fig_handler\n", " );\n", " fig.resizeObserverInstance.unobserve(fig.canvas_div);\n", "\n", " // Update the output cell to use the data from the current canvas.\n", " fig.push_to_output();\n", " var dataURL = fig.canvas.toDataURL();\n", " // Re-enable the keyboard manager in IPython - without this line, in FF,\n", " // the notebook keyboard shortcuts fail.\n", " IPython.keyboard_manager.enable();\n", " fig.parent_element.innerHTML =\n", " '';\n", " fig.close_ws(fig, msg);\n", "};\n", "\n", "mpl.figure.prototype.close_ws = function (fig, msg) {\n", " fig.send_message('closing', msg);\n", " // fig.ws.close()\n", "};\n", "\n", "mpl.figure.prototype.push_to_output = function (_remove_interactive) {\n", " // Turn the data on the canvas into data in the output cell.\n", " var width = this.canvas.width / this.ratio;\n", " var dataURL = this.canvas.toDataURL();\n", " this.cell_info[1]['text/html'] =\n", " '';\n", "};\n", "\n", "mpl.figure.prototype.updated_canvas_event = function () {\n", " // Tell IPython that the notebook contents must change.\n", " IPython.notebook.set_dirty(true);\n", " this.send_message('ack', {});\n", " var fig = this;\n", " // Wait a second, then push the new image to the DOM so\n", " // that it is saved nicely (might be nice to debounce this).\n", " setTimeout(function () {\n", " fig.push_to_output();\n", " }, 1000);\n", "};\n", "\n", "mpl.figure.prototype._init_toolbar = function () {\n", " var fig = this;\n", "\n", " var toolbar = document.createElement('div');\n", " toolbar.classList = 'btn-toolbar';\n", " this.root.appendChild(toolbar);\n", "\n", " function on_click_closure(name) {\n", " return function (_event) {\n", " return fig.toolbar_button_onclick(name);\n", " };\n", " }\n", "\n", " function on_mouseover_closure(tooltip) {\n", " return function (event) {\n", " if (!event.currentTarget.disabled) {\n", " return fig.toolbar_button_onmouseover(tooltip);\n", " }\n", " };\n", " }\n", "\n", " fig.buttons = {};\n", " var buttonGroup = document.createElement('div');\n", " buttonGroup.classList = 'btn-group';\n", " var button;\n", " for (var toolbar_ind in mpl.toolbar_items) {\n", " var name = mpl.toolbar_items[toolbar_ind][0];\n", " var tooltip = mpl.toolbar_items[toolbar_ind][1];\n", " var image = mpl.toolbar_items[toolbar_ind][2];\n", " var method_name = mpl.toolbar_items[toolbar_ind][3];\n", "\n", " if (!name) {\n", " /* Instead of a spacer, we start a new button group. */\n", " if (buttonGroup.hasChildNodes()) {\n", " toolbar.appendChild(buttonGroup);\n", " }\n", " buttonGroup = document.createElement('div');\n", " buttonGroup.classList = 'btn-group';\n", " continue;\n", " }\n", "\n", " button = fig.buttons[name] = document.createElement('button');\n", " button.classList = 'btn btn-default';\n", " button.href = '#';\n", " button.title = name;\n", " button.innerHTML = '';\n", " button.addEventListener('click', on_click_closure(method_name));\n", " button.addEventListener('mouseover', on_mouseover_closure(tooltip));\n", " buttonGroup.appendChild(button);\n", " }\n", "\n", " if (buttonGroup.hasChildNodes()) {\n", " toolbar.appendChild(buttonGroup);\n", " }\n", "\n", " // Add the status bar.\n", " var status_bar = document.createElement('span');\n", " status_bar.classList = 'mpl-message pull-right';\n", " toolbar.appendChild(status_bar);\n", " this.message = status_bar;\n", "\n", " // Add the close button to the window.\n", " var buttongrp = document.createElement('div');\n", " buttongrp.classList = 'btn-group inline pull-right';\n", " button = document.createElement('button');\n", " button.classList = 'btn btn-mini btn-primary';\n", " button.href = '#';\n", " button.title = 'Stop Interaction';\n", " button.innerHTML = '';\n", " button.addEventListener('click', function (_evt) {\n", " fig.handle_close(fig, {});\n", " });\n", " button.addEventListener(\n", " 'mouseover',\n", " on_mouseover_closure('Stop Interaction')\n", " );\n", " buttongrp.appendChild(button);\n", " var titlebar = this.root.querySelector('.ui-dialog-titlebar');\n", " titlebar.insertBefore(buttongrp, titlebar.firstChild);\n", "};\n", "\n", "mpl.figure.prototype._remove_fig_handler = function (event) {\n", " var fig = event.data.fig;\n", " if (event.target !== this) {\n", " // Ignore bubbled events from children.\n", " return;\n", " }\n", " fig.close_ws(fig, {});\n", "};\n", "\n", "mpl.figure.prototype._root_extra_style = function (el) {\n", " el.style.boxSizing = 'content-box'; // override notebook setting of border-box.\n", "};\n", "\n", "mpl.figure.prototype._canvas_extra_style = function (el) {\n", " // this is important to make the div 'focusable\n", " el.setAttribute('tabindex', 0);\n", " // reach out to IPython and tell the keyboard manager to turn it's self\n", " // off when our div gets focus\n", "\n", " // location in version 3\n", " if (IPython.notebook.keyboard_manager) {\n", " IPython.notebook.keyboard_manager.register_events(el);\n", " } else {\n", " // location in version 2\n", " IPython.keyboard_manager.register_events(el);\n", " }\n", "};\n", "\n", "mpl.figure.prototype._key_event_extra = function (event, _name) {\n", " // Check for shift+enter\n", " if (event.shiftKey && event.which === 13) {\n", " this.canvas_div.blur();\n", " // select the cell after this one\n", " var index = IPython.notebook.find_cell_index(this.cell_info[0]);\n", " IPython.notebook.select(index + 1);\n", " }\n", "};\n", "\n", "mpl.figure.prototype.handle_save = function (fig, _msg) {\n", " fig.ondownload(fig, null);\n", "};\n", "\n", "mpl.find_output_cell = function (html_output) {\n", " // Return the cell and output element which can be found *uniquely* in the notebook.\n", " // Note - this is a bit hacky, but it is done because the \"notebook_saving.Notebook\"\n", " // IPython event is triggered only after the cells have been serialised, which for\n", " // our purposes (turning an active figure into a static one), is too late.\n", " var cells = IPython.notebook.get_cells();\n", " var ncells = cells.length;\n", " for (var i = 0; i < ncells; i++) {\n", " var cell = cells[i];\n", " if (cell.cell_type === 'code') {\n", " for (var j = 0; j < cell.output_area.outputs.length; j++) {\n", " var data = cell.output_area.outputs[j];\n", " if (data.data) {\n", " // IPython >= 3 moved mimebundle to data attribute of output\n", " data = data.data;\n", " }\n", " if (data['text/html'] === html_output) {\n", " return [cell, data, j];\n", " }\n", " }\n", " }\n", " }\n", "};\n", "\n", "// Register the function which deals with the matplotlib target/channel.\n", "// The kernel may be null if the page has been refreshed.\n", "if (IPython.notebook.kernel !== null) {\n", " IPython.notebook.kernel.comm_manager.register_target(\n", " 'matplotlib',\n", " mpl.mpl_figure_comm\n", " );\n", "}\n" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "fig = plt.figure()\n", "ax = fig.add_subplot(111, projection='3d')" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Here's a full example:" ] }, { "cell_type": "code", "execution_count": 146, "metadata": {}, "outputs": [ { "data": { "application/javascript": [ "/* Put everything inside the global mpl namespace */\n", "/* global mpl */\n", "window.mpl = {};\n", "\n", "mpl.get_websocket_type = function () {\n", " if (typeof WebSocket !== 'undefined') {\n", " return WebSocket;\n", " } else if (typeof MozWebSocket !== 'undefined') {\n", " return MozWebSocket;\n", " } else {\n", " alert(\n", " 'Your browser does not have WebSocket support. ' +\n", " 'Please try Chrome, Safari or Firefox ≥ 6. ' +\n", " 'Firefox 4 and 5 are also supported but you ' +\n", " 'have to enable WebSockets in about:config.'\n", " );\n", " }\n", "};\n", "\n", "mpl.figure = function (figure_id, websocket, ondownload, parent_element) {\n", " this.id = figure_id;\n", "\n", " this.ws = websocket;\n", "\n", " this.supports_binary = this.ws.binaryType !== undefined;\n", "\n", " if (!this.supports_binary) {\n", " var warnings = document.getElementById('mpl-warnings');\n", " if (warnings) {\n", " warnings.style.display = 'block';\n", " warnings.textContent =\n", " 'This browser does not support binary websocket messages. ' +\n", " 'Performance may be slow.';\n", " }\n", " }\n", "\n", " this.imageObj = new Image();\n", "\n", " this.context = undefined;\n", " this.message = undefined;\n", " this.canvas = undefined;\n", " this.rubberband_canvas = undefined;\n", " this.rubberband_context = undefined;\n", " this.format_dropdown = undefined;\n", "\n", " this.image_mode = 'full';\n", "\n", " this.root = document.createElement('div');\n", " this.root.setAttribute('style', 'display: inline-block');\n", " this._root_extra_style(this.root);\n", "\n", " parent_element.appendChild(this.root);\n", "\n", " this._init_header(this);\n", " this._init_canvas(this);\n", " this._init_toolbar(this);\n", "\n", " var fig = this;\n", "\n", " this.waiting = false;\n", "\n", " this.ws.onopen = function () {\n", " fig.send_message('supports_binary', { value: fig.supports_binary });\n", " fig.send_message('send_image_mode', {});\n", " if (fig.ratio !== 1) {\n", " fig.send_message('set_device_pixel_ratio', {\n", " device_pixel_ratio: fig.ratio,\n", " });\n", " }\n", " fig.send_message('refresh', {});\n", " };\n", "\n", " this.imageObj.onload = function () {\n", " if (fig.image_mode === 'full') {\n", " // Full images could contain transparency (where diff images\n", " // almost always do), so we need to clear the canvas so that\n", " // there is no ghosting.\n", " fig.context.clearRect(0, 0, fig.canvas.width, fig.canvas.height);\n", " }\n", " fig.context.drawImage(fig.imageObj, 0, 0);\n", " };\n", "\n", " this.imageObj.onunload = function () {\n", " fig.ws.close();\n", " };\n", "\n", " this.ws.onmessage = this._make_on_message_function(this);\n", "\n", " this.ondownload = ondownload;\n", "};\n", "\n", "mpl.figure.prototype._init_header = function () {\n", " var titlebar = document.createElement('div');\n", " titlebar.classList =\n", " 'ui-dialog-titlebar ui-widget-header ui-corner-all ui-helper-clearfix';\n", " var titletext = document.createElement('div');\n", " titletext.classList = 'ui-dialog-title';\n", " titletext.setAttribute(\n", " 'style',\n", " 'width: 100%; text-align: center; padding: 3px;'\n", " );\n", " titlebar.appendChild(titletext);\n", " this.root.appendChild(titlebar);\n", " this.header = titletext;\n", "};\n", "\n", "mpl.figure.prototype._canvas_extra_style = function (_canvas_div) {};\n", "\n", "mpl.figure.prototype._root_extra_style = function (_canvas_div) {};\n", "\n", "mpl.figure.prototype._init_canvas = function () {\n", " var fig = this;\n", "\n", " var canvas_div = (this.canvas_div = document.createElement('div'));\n", " canvas_div.setAttribute(\n", " 'style',\n", " 'border: 1px solid #ddd;' +\n", " 'box-sizing: content-box;' +\n", " 'clear: both;' +\n", " 'min-height: 1px;' +\n", " 'min-width: 1px;' +\n", " 'outline: 0;' +\n", " 'overflow: hidden;' +\n", " 'position: relative;' +\n", " 'resize: both;'\n", " );\n", "\n", " function on_keyboard_event_closure(name) {\n", " return function (event) {\n", " return fig.key_event(event, name);\n", " };\n", " }\n", "\n", " canvas_div.addEventListener(\n", " 'keydown',\n", " on_keyboard_event_closure('key_press')\n", " );\n", " canvas_div.addEventListener(\n", " 'keyup',\n", " on_keyboard_event_closure('key_release')\n", " );\n", "\n", " this._canvas_extra_style(canvas_div);\n", " this.root.appendChild(canvas_div);\n", "\n", " var canvas = (this.canvas = document.createElement('canvas'));\n", " canvas.classList.add('mpl-canvas');\n", " canvas.setAttribute('style', 'box-sizing: content-box;');\n", "\n", " this.context = canvas.getContext('2d');\n", "\n", " var backingStore =\n", " this.context.backingStorePixelRatio ||\n", " this.context.webkitBackingStorePixelRatio ||\n", " this.context.mozBackingStorePixelRatio ||\n", " this.context.msBackingStorePixelRatio ||\n", " this.context.oBackingStorePixelRatio ||\n", " this.context.backingStorePixelRatio ||\n", " 1;\n", "\n", " this.ratio = (window.devicePixelRatio || 1) / backingStore;\n", "\n", " var rubberband_canvas = (this.rubberband_canvas = document.createElement(\n", " 'canvas'\n", " ));\n", " rubberband_canvas.setAttribute(\n", " 'style',\n", " 'box-sizing: content-box; position: absolute; left: 0; top: 0; z-index: 1;'\n", " );\n", "\n", " // Apply a ponyfill if ResizeObserver is not implemented by browser.\n", " if (this.ResizeObserver === undefined) {\n", " if (window.ResizeObserver !== undefined) {\n", " this.ResizeObserver = window.ResizeObserver;\n", " } else {\n", " var obs = _JSXTOOLS_RESIZE_OBSERVER({});\n", " this.ResizeObserver = obs.ResizeObserver;\n", " }\n", " }\n", "\n", " this.resizeObserverInstance = new this.ResizeObserver(function (entries) {\n", " var nentries = entries.length;\n", " for (var i = 0; i < nentries; i++) {\n", " var entry = entries[i];\n", " var width, height;\n", " if (entry.contentBoxSize) {\n", " if (entry.contentBoxSize instanceof Array) {\n", " // Chrome 84 implements new version of spec.\n", " width = entry.contentBoxSize[0].inlineSize;\n", " height = entry.contentBoxSize[0].blockSize;\n", " } else {\n", " // Firefox implements old version of spec.\n", " width = entry.contentBoxSize.inlineSize;\n", " height = entry.contentBoxSize.blockSize;\n", " }\n", " } else {\n", " // Chrome <84 implements even older version of spec.\n", " width = entry.contentRect.width;\n", " height = entry.contentRect.height;\n", " }\n", "\n", " // Keep the size of the canvas and rubber band canvas in sync with\n", " // the canvas container.\n", " if (entry.devicePixelContentBoxSize) {\n", " // Chrome 84 implements new version of spec.\n", " canvas.setAttribute(\n", " 'width',\n", " entry.devicePixelContentBoxSize[0].inlineSize\n", " );\n", " canvas.setAttribute(\n", " 'height',\n", " entry.devicePixelContentBoxSize[0].blockSize\n", " );\n", " } else {\n", " canvas.setAttribute('width', width * fig.ratio);\n", " canvas.setAttribute('height', height * fig.ratio);\n", " }\n", " canvas.setAttribute(\n", " 'style',\n", " 'width: ' + width + 'px; height: ' + height + 'px;'\n", " );\n", "\n", " rubberband_canvas.setAttribute('width', width);\n", " rubberband_canvas.setAttribute('height', height);\n", "\n", " // And update the size in Python. We ignore the initial 0/0 size\n", " // that occurs as the element is placed into the DOM, which should\n", " // otherwise not happen due to the minimum size styling.\n", " if (fig.ws.readyState == 1 && width != 0 && height != 0) {\n", " fig.request_resize(width, height);\n", " }\n", " }\n", " });\n", " this.resizeObserverInstance.observe(canvas_div);\n", "\n", " function on_mouse_event_closure(name) {\n", " return function (event) {\n", " return fig.mouse_event(event, name);\n", " };\n", " }\n", "\n", " rubberband_canvas.addEventListener(\n", " 'mousedown',\n", " on_mouse_event_closure('button_press')\n", " );\n", " rubberband_canvas.addEventListener(\n", " 'mouseup',\n", " on_mouse_event_closure('button_release')\n", " );\n", " rubberband_canvas.addEventListener(\n", " 'dblclick',\n", " on_mouse_event_closure('dblclick')\n", " );\n", " // Throttle sequential mouse events to 1 every 20ms.\n", " rubberband_canvas.addEventListener(\n", " 'mousemove',\n", " on_mouse_event_closure('motion_notify')\n", " );\n", "\n", " rubberband_canvas.addEventListener(\n", " 'mouseenter',\n", " on_mouse_event_closure('figure_enter')\n", " );\n", " rubberband_canvas.addEventListener(\n", " 'mouseleave',\n", " on_mouse_event_closure('figure_leave')\n", " );\n", "\n", " canvas_div.addEventListener('wheel', function (event) {\n", " if (event.deltaY < 0) {\n", " event.step = 1;\n", " } else {\n", " event.step = -1;\n", " }\n", " on_mouse_event_closure('scroll')(event);\n", " });\n", "\n", " canvas_div.appendChild(canvas);\n", " canvas_div.appendChild(rubberband_canvas);\n", "\n", " this.rubberband_context = rubberband_canvas.getContext('2d');\n", " this.rubberband_context.strokeStyle = '#000000';\n", "\n", " this._resize_canvas = function (width, height, forward) {\n", " if (forward) {\n", " canvas_div.style.width = width + 'px';\n", " canvas_div.style.height = height + 'px';\n", " }\n", " };\n", "\n", " // Disable right mouse context menu.\n", " this.rubberband_canvas.addEventListener('contextmenu', function (_e) {\n", " event.preventDefault();\n", " return false;\n", " });\n", "\n", " function set_focus() {\n", " canvas.focus();\n", " canvas_div.focus();\n", " }\n", "\n", " window.setTimeout(set_focus, 100);\n", "};\n", "\n", "mpl.figure.prototype._init_toolbar = function () {\n", " var fig = this;\n", "\n", " var toolbar = document.createElement('div');\n", " toolbar.classList = 'mpl-toolbar';\n", " this.root.appendChild(toolbar);\n", "\n", " function on_click_closure(name) {\n", " return function (_event) {\n", " return fig.toolbar_button_onclick(name);\n", " };\n", " }\n", "\n", " function on_mouseover_closure(tooltip) {\n", " return function (event) {\n", " if (!event.currentTarget.disabled) {\n", " return fig.toolbar_button_onmouseover(tooltip);\n", " }\n", " };\n", " }\n", "\n", " fig.buttons = {};\n", " var buttonGroup = document.createElement('div');\n", " buttonGroup.classList = 'mpl-button-group';\n", " for (var toolbar_ind in mpl.toolbar_items) {\n", " var name = mpl.toolbar_items[toolbar_ind][0];\n", " var tooltip = mpl.toolbar_items[toolbar_ind][1];\n", " var image = mpl.toolbar_items[toolbar_ind][2];\n", " var method_name = mpl.toolbar_items[toolbar_ind][3];\n", "\n", " if (!name) {\n", " /* Instead of a spacer, we start a new button group. */\n", " if (buttonGroup.hasChildNodes()) {\n", " toolbar.appendChild(buttonGroup);\n", " }\n", " buttonGroup = document.createElement('div');\n", " buttonGroup.classList = 'mpl-button-group';\n", " continue;\n", " }\n", "\n", " var button = (fig.buttons[name] = document.createElement('button'));\n", " button.classList = 'mpl-widget';\n", " button.setAttribute('role', 'button');\n", " button.setAttribute('aria-disabled', 'false');\n", " button.addEventListener('click', on_click_closure(method_name));\n", " button.addEventListener('mouseover', on_mouseover_closure(tooltip));\n", "\n", " var icon_img = document.createElement('img');\n", " icon_img.src = '_images/' + image + '.png';\n", " icon_img.srcset = '_images/' + image + '_large.png 2x';\n", " icon_img.alt = tooltip;\n", " button.appendChild(icon_img);\n", "\n", " buttonGroup.appendChild(button);\n", " }\n", "\n", " if (buttonGroup.hasChildNodes()) {\n", " toolbar.appendChild(buttonGroup);\n", " }\n", "\n", " var fmt_picker = document.createElement('select');\n", " fmt_picker.classList = 'mpl-widget';\n", " toolbar.appendChild(fmt_picker);\n", " this.format_dropdown = fmt_picker;\n", "\n", " for (var ind in mpl.extensions) {\n", " var fmt = mpl.extensions[ind];\n", " var option = document.createElement('option');\n", " option.selected = fmt === mpl.default_extension;\n", " option.innerHTML = fmt;\n", " fmt_picker.appendChild(option);\n", " }\n", "\n", " var status_bar = document.createElement('span');\n", " status_bar.classList = 'mpl-message';\n", " toolbar.appendChild(status_bar);\n", " this.message = status_bar;\n", "};\n", "\n", "mpl.figure.prototype.request_resize = function (x_pixels, y_pixels) {\n", " // Request matplotlib to resize the figure. Matplotlib will then trigger a resize in the client,\n", " // which will in turn request a refresh of the image.\n", " this.send_message('resize', { width: x_pixels, height: y_pixels });\n", "};\n", "\n", "mpl.figure.prototype.send_message = function (type, properties) {\n", " properties['type'] = type;\n", " properties['figure_id'] = this.id;\n", " this.ws.send(JSON.stringify(properties));\n", "};\n", "\n", "mpl.figure.prototype.send_draw_message = function () {\n", " if (!this.waiting) {\n", " this.waiting = true;\n", " this.ws.send(JSON.stringify({ type: 'draw', figure_id: this.id }));\n", " }\n", "};\n", "\n", "mpl.figure.prototype.handle_save = function (fig, _msg) {\n", " var format_dropdown = fig.format_dropdown;\n", " var format = format_dropdown.options[format_dropdown.selectedIndex].value;\n", " fig.ondownload(fig, format);\n", "};\n", "\n", "mpl.figure.prototype.handle_resize = function (fig, msg) {\n", " var size = msg['size'];\n", " if (size[0] !== fig.canvas.width || size[1] !== fig.canvas.height) {\n", " fig._resize_canvas(size[0], size[1], msg['forward']);\n", " fig.send_message('refresh', {});\n", " }\n", "};\n", "\n", "mpl.figure.prototype.handle_rubberband = function (fig, msg) {\n", " var x0 = msg['x0'] / fig.ratio;\n", " var y0 = (fig.canvas.height - msg['y0']) / fig.ratio;\n", " var x1 = msg['x1'] / fig.ratio;\n", " var y1 = (fig.canvas.height - msg['y1']) / fig.ratio;\n", " x0 = Math.floor(x0) + 0.5;\n", " y0 = Math.floor(y0) + 0.5;\n", " x1 = Math.floor(x1) + 0.5;\n", " y1 = Math.floor(y1) + 0.5;\n", " var min_x = Math.min(x0, x1);\n", " var min_y = Math.min(y0, y1);\n", " var width = Math.abs(x1 - x0);\n", " var height = Math.abs(y1 - y0);\n", "\n", " fig.rubberband_context.clearRect(\n", " 0,\n", " 0,\n", " fig.canvas.width / fig.ratio,\n", " fig.canvas.height / fig.ratio\n", " );\n", "\n", " fig.rubberband_context.strokeRect(min_x, min_y, width, height);\n", "};\n", "\n", "mpl.figure.prototype.handle_figure_label = function (fig, msg) {\n", " // Updates the figure title.\n", " fig.header.textContent = msg['label'];\n", "};\n", "\n", "mpl.figure.prototype.handle_cursor = function (fig, msg) {\n", " fig.rubberband_canvas.style.cursor = msg['cursor'];\n", "};\n", "\n", "mpl.figure.prototype.handle_message = function (fig, msg) {\n", " fig.message.textContent = msg['message'];\n", "};\n", "\n", "mpl.figure.prototype.handle_draw = function (fig, _msg) {\n", " // Request the server to send over a new figure.\n", " fig.send_draw_message();\n", "};\n", "\n", "mpl.figure.prototype.handle_image_mode = function (fig, msg) {\n", " fig.image_mode = msg['mode'];\n", "};\n", "\n", "mpl.figure.prototype.handle_history_buttons = function (fig, msg) {\n", " for (var key in msg) {\n", " if (!(key in fig.buttons)) {\n", " continue;\n", " }\n", " fig.buttons[key].disabled = !msg[key];\n", " fig.buttons[key].setAttribute('aria-disabled', !msg[key]);\n", " }\n", "};\n", "\n", "mpl.figure.prototype.handle_navigate_mode = function (fig, msg) {\n", " if (msg['mode'] === 'PAN') {\n", " fig.buttons['Pan'].classList.add('active');\n", " fig.buttons['Zoom'].classList.remove('active');\n", " } else if (msg['mode'] === 'ZOOM') {\n", " fig.buttons['Pan'].classList.remove('active');\n", " fig.buttons['Zoom'].classList.add('active');\n", " } else {\n", " fig.buttons['Pan'].classList.remove('active');\n", " fig.buttons['Zoom'].classList.remove('active');\n", " }\n", "};\n", "\n", "mpl.figure.prototype.updated_canvas_event = function () {\n", " // Called whenever the canvas gets updated.\n", " this.send_message('ack', {});\n", "};\n", "\n", "// A function to construct a web socket function for onmessage handling.\n", "// Called in the figure constructor.\n", "mpl.figure.prototype._make_on_message_function = function (fig) {\n", " return function socket_on_message(evt) {\n", " if (evt.data instanceof Blob) {\n", " var img = evt.data;\n", " if (img.type !== 'image/png') {\n", " /* FIXME: We get \"Resource interpreted as Image but\n", " * transferred with MIME type text/plain:\" errors on\n", " * Chrome. But how to set the MIME type? It doesn't seem\n", " * to be part of the websocket stream */\n", " img.type = 'image/png';\n", " }\n", "\n", " /* Free the memory for the previous frames */\n", " if (fig.imageObj.src) {\n", " (window.URL || window.webkitURL).revokeObjectURL(\n", " fig.imageObj.src\n", " );\n", " }\n", "\n", " fig.imageObj.src = (window.URL || window.webkitURL).createObjectURL(\n", " img\n", " );\n", " fig.updated_canvas_event();\n", " fig.waiting = false;\n", " return;\n", " } else if (\n", " typeof evt.data === 'string' &&\n", " evt.data.slice(0, 21) === 'data:image/png;base64'\n", " ) {\n", " fig.imageObj.src = evt.data;\n", " fig.updated_canvas_event();\n", " fig.waiting = false;\n", " return;\n", " }\n", "\n", " var msg = JSON.parse(evt.data);\n", " var msg_type = msg['type'];\n", "\n", " // Call the \"handle_{type}\" callback, which takes\n", " // the figure and JSON message as its only arguments.\n", " try {\n", " var callback = fig['handle_' + msg_type];\n", " } catch (e) {\n", " console.log(\n", " \"No handler for the '\" + msg_type + \"' message type: \",\n", " msg\n", " );\n", " return;\n", " }\n", "\n", " if (callback) {\n", " try {\n", " // console.log(\"Handling '\" + msg_type + \"' message: \", msg);\n", " callback(fig, msg);\n", " } catch (e) {\n", " console.log(\n", " \"Exception inside the 'handler_\" + msg_type + \"' callback:\",\n", " e,\n", " e.stack,\n", " msg\n", " );\n", " }\n", " }\n", " };\n", "};\n", "\n", "// from https://stackoverflow.com/questions/1114465/getting-mouse-location-in-canvas\n", "mpl.findpos = function (e) {\n", " //this section is from http://www.quirksmode.org/js/events_properties.html\n", " var targ;\n", " if (!e) {\n", " e = window.event;\n", " }\n", " if (e.target) {\n", " targ = e.target;\n", " } else if (e.srcElement) {\n", " targ = e.srcElement;\n", " }\n", " if (targ.nodeType === 3) {\n", " // defeat Safari bug\n", " targ = targ.parentNode;\n", " }\n", "\n", " // pageX,Y are the mouse positions relative to the document\n", " var boundingRect = targ.getBoundingClientRect();\n", " var x = e.pageX - (boundingRect.left + document.body.scrollLeft);\n", " var y = e.pageY - (boundingRect.top + document.body.scrollTop);\n", "\n", " return { x: x, y: y };\n", "};\n", "\n", "/*\n", " * return a copy of an object with only non-object keys\n", " * we need this to avoid circular references\n", " * https://stackoverflow.com/a/24161582/3208463\n", " */\n", "function simpleKeys(original) {\n", " return Object.keys(original).reduce(function (obj, key) {\n", " if (typeof original[key] !== 'object') {\n", " obj[key] = original[key];\n", " }\n", " return obj;\n", " }, {});\n", "}\n", "\n", "mpl.figure.prototype.mouse_event = function (event, name) {\n", " var canvas_pos = mpl.findpos(event);\n", "\n", " if (name === 'button_press') {\n", " this.canvas.focus();\n", " this.canvas_div.focus();\n", " }\n", "\n", " var x = canvas_pos.x * this.ratio;\n", " var y = canvas_pos.y * this.ratio;\n", "\n", " this.send_message(name, {\n", " x: x,\n", " y: y,\n", " button: event.button,\n", " step: event.step,\n", " guiEvent: simpleKeys(event),\n", " });\n", "\n", " /* This prevents the web browser from automatically changing to\n", " * the text insertion cursor when the button is pressed. We want\n", " * to control all of the cursor setting manually through the\n", " * 'cursor' event from matplotlib */\n", " event.preventDefault();\n", " return false;\n", "};\n", "\n", "mpl.figure.prototype._key_event_extra = function (_event, _name) {\n", " // Handle any extra behaviour associated with a key event\n", "};\n", "\n", "mpl.figure.prototype.key_event = function (event, name) {\n", " // Prevent repeat events\n", " if (name === 'key_press') {\n", " if (event.key === this._key) {\n", " return;\n", " } else {\n", " this._key = event.key;\n", " }\n", " }\n", " if (name === 'key_release') {\n", " this._key = null;\n", " }\n", "\n", " var value = '';\n", " if (event.ctrlKey && event.key !== 'Control') {\n", " value += 'ctrl+';\n", " }\n", " else if (event.altKey && event.key !== 'Alt') {\n", " value += 'alt+';\n", " }\n", " else if (event.shiftKey && event.key !== 'Shift') {\n", " value += 'shift+';\n", " }\n", "\n", " value += 'k' + event.key;\n", "\n", " this._key_event_extra(event, name);\n", "\n", " this.send_message(name, { key: value, guiEvent: simpleKeys(event) });\n", " return false;\n", "};\n", "\n", "mpl.figure.prototype.toolbar_button_onclick = function (name) {\n", " if (name === 'download') {\n", " this.handle_save(this, null);\n", " } else {\n", " this.send_message('toolbar_button', { name: name });\n", " }\n", "};\n", "\n", "mpl.figure.prototype.toolbar_button_onmouseover = function (tooltip) {\n", " this.message.textContent = tooltip;\n", "};\n", "\n", "///////////////// REMAINING CONTENT GENERATED BY embed_js.py /////////////////\n", "// prettier-ignore\n", "var _JSXTOOLS_RESIZE_OBSERVER=function(A){var t,i=new WeakMap,n=new WeakMap,a=new WeakMap,r=new WeakMap,o=new Set;function s(e){if(!(this instanceof s))throw new TypeError(\"Constructor requires 'new' operator\");i.set(this,e)}function h(){throw new TypeError(\"Function is not a constructor\")}function c(e,t,i,n){e=0 in arguments?Number(arguments[0]):0,t=1 in arguments?Number(arguments[1]):0,i=2 in arguments?Number(arguments[2]):0,n=3 in arguments?Number(arguments[3]):0,this.right=(this.x=this.left=e)+(this.width=i),this.bottom=(this.y=this.top=t)+(this.height=n),Object.freeze(this)}function d(){t=requestAnimationFrame(d);var s=new WeakMap,p=new Set;o.forEach((function(t){r.get(t).forEach((function(i){var r=t instanceof window.SVGElement,o=a.get(t),d=r?0:parseFloat(o.paddingTop),f=r?0:parseFloat(o.paddingRight),l=r?0:parseFloat(o.paddingBottom),u=r?0:parseFloat(o.paddingLeft),g=r?0:parseFloat(o.borderTopWidth),m=r?0:parseFloat(o.borderRightWidth),w=r?0:parseFloat(o.borderBottomWidth),b=u+f,F=d+l,v=(r?0:parseFloat(o.borderLeftWidth))+m,W=g+w,y=r?0:t.offsetHeight-W-t.clientHeight,E=r?0:t.offsetWidth-v-t.clientWidth,R=b+v,z=F+W,M=r?t.width:parseFloat(o.width)-R-E,O=r?t.height:parseFloat(o.height)-z-y;if(n.has(t)){var k=n.get(t);if(k[0]===M&&k[1]===O)return}n.set(t,[M,O]);var S=Object.create(h.prototype);S.target=t,S.contentRect=new c(u,d,M,O),s.has(i)||(s.set(i,[]),p.add(i)),s.get(i).push(S)}))})),p.forEach((function(e){i.get(e).call(e,s.get(e),e)}))}return s.prototype.observe=function(i){if(i instanceof window.Element){r.has(i)||(r.set(i,new Set),o.add(i),a.set(i,window.getComputedStyle(i)));var n=r.get(i);n.has(this)||n.add(this),cancelAnimationFrame(t),t=requestAnimationFrame(d)}},s.prototype.unobserve=function(i){if(i instanceof window.Element&&r.has(i)){var n=r.get(i);n.has(this)&&(n.delete(this),n.size||(r.delete(i),o.delete(i))),n.size||r.delete(i),o.size||cancelAnimationFrame(t)}},A.DOMRectReadOnly=c,A.ResizeObserver=s,A.ResizeObserverEntry=h,A}; // eslint-disable-line\n", "mpl.toolbar_items = [[\"Home\", \"Reset original view\", \"fa fa-home icon-home\", \"home\"], [\"Back\", \"Back to previous view\", \"fa fa-arrow-left icon-arrow-left\", \"back\"], [\"Forward\", \"Forward to next view\", \"fa fa-arrow-right icon-arrow-right\", \"forward\"], [\"\", \"\", \"\", \"\"], [\"Pan\", \"Left button pans, Right button zooms\\nx/y fixes axis, CTRL fixes aspect\", \"fa fa-arrows icon-move\", \"pan\"], [\"Zoom\", \"Zoom to rectangle\\nx/y fixes axis\", \"fa fa-square-o icon-check-empty\", \"zoom\"], [\"\", \"\", \"\", \"\"], [\"Download\", \"Download plot\", \"fa fa-floppy-o icon-save\", \"download\"]];\n", "\n", "mpl.extensions = [\"eps\", \"jpeg\", \"pgf\", \"pdf\", \"png\", \"ps\", \"raw\", \"svg\", \"tif\"];\n", "\n", "mpl.default_extension = \"png\";/* global mpl */\n", "\n", "var comm_websocket_adapter = function (comm) {\n", " // Create a \"websocket\"-like object which calls the given IPython comm\n", " // object with the appropriate methods. Currently this is a non binary\n", " // socket, so there is still some room for performance tuning.\n", " var ws = {};\n", "\n", " ws.binaryType = comm.kernel.ws.binaryType;\n", " ws.readyState = comm.kernel.ws.readyState;\n", " function updateReadyState(_event) {\n", " if (comm.kernel.ws) {\n", " ws.readyState = comm.kernel.ws.readyState;\n", " } else {\n", " ws.readyState = 3; // Closed state.\n", " }\n", " }\n", " comm.kernel.ws.addEventListener('open', updateReadyState);\n", " comm.kernel.ws.addEventListener('close', updateReadyState);\n", " comm.kernel.ws.addEventListener('error', updateReadyState);\n", "\n", " ws.close = function () {\n", " comm.close();\n", " };\n", " ws.send = function (m) {\n", " //console.log('sending', m);\n", " comm.send(m);\n", " };\n", " // Register the callback with on_msg.\n", " comm.on_msg(function (msg) {\n", " //console.log('receiving', msg['content']['data'], msg);\n", " var data = msg['content']['data'];\n", " if (data['blob'] !== undefined) {\n", " data = {\n", " data: new Blob(msg['buffers'], { type: data['blob'] }),\n", " };\n", " }\n", " // Pass the mpl event to the overridden (by mpl) onmessage function.\n", " ws.onmessage(data);\n", " });\n", " return ws;\n", "};\n", "\n", "mpl.mpl_figure_comm = function (comm, msg) {\n", " // This is the function which gets called when the mpl process\n", " // starts-up an IPython Comm through the \"matplotlib\" channel.\n", "\n", " var id = msg.content.data.id;\n", " // Get hold of the div created by the display call when the Comm\n", " // socket was opened in Python.\n", " var element = document.getElementById(id);\n", " var ws_proxy = comm_websocket_adapter(comm);\n", "\n", " function ondownload(figure, _format) {\n", " window.open(figure.canvas.toDataURL());\n", " }\n", "\n", " var fig = new mpl.figure(id, ws_proxy, ondownload, element);\n", "\n", " // Call onopen now - mpl needs it, as it is assuming we've passed it a real\n", " // web socket which is closed, not our websocket->open comm proxy.\n", " ws_proxy.onopen();\n", "\n", " fig.parent_element = element;\n", " fig.cell_info = mpl.find_output_cell(\"
\");\n", " if (!fig.cell_info) {\n", " console.error('Failed to find cell for figure', id, fig);\n", " return;\n", " }\n", " fig.cell_info[0].output_area.element.on(\n", " 'cleared',\n", " { fig: fig },\n", " fig._remove_fig_handler\n", " );\n", "};\n", "\n", "mpl.figure.prototype.handle_close = function (fig, msg) {\n", " var width = fig.canvas.width / fig.ratio;\n", " fig.cell_info[0].output_area.element.off(\n", " 'cleared',\n", " fig._remove_fig_handler\n", " );\n", " fig.resizeObserverInstance.unobserve(fig.canvas_div);\n", "\n", " // Update the output cell to use the data from the current canvas.\n", " fig.push_to_output();\n", " var dataURL = fig.canvas.toDataURL();\n", " // Re-enable the keyboard manager in IPython - without this line, in FF,\n", " // the notebook keyboard shortcuts fail.\n", " IPython.keyboard_manager.enable();\n", " fig.parent_element.innerHTML =\n", " '';\n", " fig.close_ws(fig, msg);\n", "};\n", "\n", "mpl.figure.prototype.close_ws = function (fig, msg) {\n", " fig.send_message('closing', msg);\n", " // fig.ws.close()\n", "};\n", "\n", "mpl.figure.prototype.push_to_output = function (_remove_interactive) {\n", " // Turn the data on the canvas into data in the output cell.\n", " var width = this.canvas.width / this.ratio;\n", " var dataURL = this.canvas.toDataURL();\n", " this.cell_info[1]['text/html'] =\n", " '';\n", "};\n", "\n", "mpl.figure.prototype.updated_canvas_event = function () {\n", " // Tell IPython that the notebook contents must change.\n", " IPython.notebook.set_dirty(true);\n", " this.send_message('ack', {});\n", " var fig = this;\n", " // Wait a second, then push the new image to the DOM so\n", " // that it is saved nicely (might be nice to debounce this).\n", " setTimeout(function () {\n", " fig.push_to_output();\n", " }, 1000);\n", "};\n", "\n", "mpl.figure.prototype._init_toolbar = function () {\n", " var fig = this;\n", "\n", " var toolbar = document.createElement('div');\n", " toolbar.classList = 'btn-toolbar';\n", " this.root.appendChild(toolbar);\n", "\n", " function on_click_closure(name) {\n", " return function (_event) {\n", " return fig.toolbar_button_onclick(name);\n", " };\n", " }\n", "\n", " function on_mouseover_closure(tooltip) {\n", " return function (event) {\n", " if (!event.currentTarget.disabled) {\n", " return fig.toolbar_button_onmouseover(tooltip);\n", " }\n", " };\n", " }\n", "\n", " fig.buttons = {};\n", " var buttonGroup = document.createElement('div');\n", " buttonGroup.classList = 'btn-group';\n", " var button;\n", " for (var toolbar_ind in mpl.toolbar_items) {\n", " var name = mpl.toolbar_items[toolbar_ind][0];\n", " var tooltip = mpl.toolbar_items[toolbar_ind][1];\n", " var image = mpl.toolbar_items[toolbar_ind][2];\n", " var method_name = mpl.toolbar_items[toolbar_ind][3];\n", "\n", " if (!name) {\n", " /* Instead of a spacer, we start a new button group. */\n", " if (buttonGroup.hasChildNodes()) {\n", " toolbar.appendChild(buttonGroup);\n", " }\n", " buttonGroup = document.createElement('div');\n", " buttonGroup.classList = 'btn-group';\n", " continue;\n", " }\n", "\n", " button = fig.buttons[name] = document.createElement('button');\n", " button.classList = 'btn btn-default';\n", " button.href = '#';\n", " button.title = name;\n", " button.innerHTML = '';\n", " button.addEventListener('click', on_click_closure(method_name));\n", " button.addEventListener('mouseover', on_mouseover_closure(tooltip));\n", " buttonGroup.appendChild(button);\n", " }\n", "\n", " if (buttonGroup.hasChildNodes()) {\n", " toolbar.appendChild(buttonGroup);\n", " }\n", "\n", " // Add the status bar.\n", " var status_bar = document.createElement('span');\n", " status_bar.classList = 'mpl-message pull-right';\n", " toolbar.appendChild(status_bar);\n", " this.message = status_bar;\n", "\n", " // Add the close button to the window.\n", " var buttongrp = document.createElement('div');\n", " buttongrp.classList = 'btn-group inline pull-right';\n", " button = document.createElement('button');\n", " button.classList = 'btn btn-mini btn-primary';\n", " button.href = '#';\n", " button.title = 'Stop Interaction';\n", " button.innerHTML = '';\n", " button.addEventListener('click', function (_evt) {\n", " fig.handle_close(fig, {});\n", " });\n", " button.addEventListener(\n", " 'mouseover',\n", " on_mouseover_closure('Stop Interaction')\n", " );\n", " buttongrp.appendChild(button);\n", " var titlebar = this.root.querySelector('.ui-dialog-titlebar');\n", " titlebar.insertBefore(buttongrp, titlebar.firstChild);\n", "};\n", "\n", "mpl.figure.prototype._remove_fig_handler = function (event) {\n", " var fig = event.data.fig;\n", " if (event.target !== this) {\n", " // Ignore bubbled events from children.\n", " return;\n", " }\n", " fig.close_ws(fig, {});\n", "};\n", "\n", "mpl.figure.prototype._root_extra_style = function (el) {\n", " el.style.boxSizing = 'content-box'; // override notebook setting of border-box.\n", "};\n", "\n", "mpl.figure.prototype._canvas_extra_style = function (el) {\n", " // this is important to make the div 'focusable\n", " el.setAttribute('tabindex', 0);\n", " // reach out to IPython and tell the keyboard manager to turn it's self\n", " // off when our div gets focus\n", "\n", " // location in version 3\n", " if (IPython.notebook.keyboard_manager) {\n", " IPython.notebook.keyboard_manager.register_events(el);\n", " } else {\n", " // location in version 2\n", " IPython.keyboard_manager.register_events(el);\n", " }\n", "};\n", "\n", "mpl.figure.prototype._key_event_extra = function (event, _name) {\n", " // Check for shift+enter\n", " if (event.shiftKey && event.which === 13) {\n", " this.canvas_div.blur();\n", " // select the cell after this one\n", " var index = IPython.notebook.find_cell_index(this.cell_info[0]);\n", " IPython.notebook.select(index + 1);\n", " }\n", "};\n", "\n", "mpl.figure.prototype.handle_save = function (fig, _msg) {\n", " fig.ondownload(fig, null);\n", "};\n", "\n", "mpl.find_output_cell = function (html_output) {\n", " // Return the cell and output element which can be found *uniquely* in the notebook.\n", " // Note - this is a bit hacky, but it is done because the \"notebook_saving.Notebook\"\n", " // IPython event is triggered only after the cells have been serialised, which for\n", " // our purposes (turning an active figure into a static one), is too late.\n", " var cells = IPython.notebook.get_cells();\n", " var ncells = cells.length;\n", " for (var i = 0; i < ncells; i++) {\n", " var cell = cells[i];\n", " if (cell.cell_type === 'code') {\n", " for (var j = 0; j < cell.output_area.outputs.length; j++) {\n", " var data = cell.output_area.outputs[j];\n", " if (data.data) {\n", " // IPython >= 3 moved mimebundle to data attribute of output\n", " data = data.data;\n", " }\n", " if (data['text/html'] === html_output) {\n", " return [cell, data, j];\n", " }\n", " }\n", " }\n", " }\n", "};\n", "\n", "// Register the function which deals with the matplotlib target/channel.\n", "// The kernel may be null if the page has been refreshed.\n", "if (IPython.notebook.kernel !== null) {\n", " IPython.notebook.kernel.comm_manager.register_target(\n", " 'matplotlib',\n", " mpl.mpl_figure_comm\n", " );\n", "}\n" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/plain": [ "Text(0.5, 0, '$z$')" ] }, "execution_count": 146, "metadata": {}, "output_type": "execute_result" } ], "source": [ "xx = np.arange(-5, 5, 0.25)\n", "yy = np.arange(-5, 5, 0.25)\n", "xx, yy = np.meshgrid(xx, yy)\n", "zz = xx**2 + yy**2\n", "\n", "fig = plt.figure()\n", "ax = fig.add_subplot(111, projection='3d')\n", "\n", "ax.plot_surface(xx, yy, zz, color = \"lightblue\")\n", "ax.set_xlabel('$x$')\n", "ax.set_ylabel('$y$')\n", "ax.set_zlabel('$z$')" ] } ], "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.10.6" } }, "nbformat": 4, "nbformat_minor": 4 }