From d5cc5d6971ce7ad204190a94b70469bd1ce6e633 Mon Sep 17 00:00:00 2001 From: Remco de Boer <29308176+redeboer@users.noreply.github.com> Date: Sat, 2 Dec 2023 19:19:27 +0100 Subject: [PATCH 1/2] DX: remove `figure_formats = ["svg"]` statement --- .pre-commit-config.yaml | 2 +- docs/amplitude-analysis.ipynb | 1 - docs/amplitude-analysis/analytic-continuation.ipynb | 1 - docs/usage.ipynb | 1 - docs/usage/basics.ipynb | 1 - docs/usage/binned-fit.ipynb | 1 - docs/usage/caching.ipynb | 1 - docs/usage/chi-squared.ipynb | 1 - docs/usage/faster-lambdify.ipynb | 1 - docs/usage/unbinned-fit.ipynb | 1 - 10 files changed, 1 insertion(+), 10 deletions(-) diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml index 695214fe..fbd23936 100644 --- a/.pre-commit-config.yaml +++ b/.pre-commit-config.yaml @@ -42,7 +42,7 @@ repos: - id: trailing-whitespace - repo: https://github.com/ComPWA/repo-maintenance - rev: 0.1.4 + rev: 0.1.5 hooks: - id: check-dev-files args: diff --git a/docs/amplitude-analysis.ipynb b/docs/amplitude-analysis.ipynb index f1fdf6ea..8bbc79ed 100644 --- a/docs/amplitude-analysis.ipynb +++ b/docs/amplitude-analysis.ipynb @@ -43,7 +43,6 @@ }, "outputs": [], "source": [ - "%config InlineBackend.figure_formats = ['svg']\n", "import os\n", "\n", "STATIC_WEB_PAGE = {\"EXECUTE_NB\", \"READTHEDOCS\"}.intersection(os.environ)" diff --git a/docs/amplitude-analysis/analytic-continuation.ipynb b/docs/amplitude-analysis/analytic-continuation.ipynb index a9184594..c04319a2 100644 --- a/docs/amplitude-analysis/analytic-continuation.ipynb +++ b/docs/amplitude-analysis/analytic-continuation.ipynb @@ -43,7 +43,6 @@ }, "outputs": [], "source": [ - "%config InlineBackend.figure_formats = ['svg']\n", "import os\n", "\n", "STATIC_WEB_PAGE = {\"EXECUTE_NB\", \"READTHEDOCS\"}.intersection(os.environ)" diff --git a/docs/usage.ipynb b/docs/usage.ipynb index 3b73195a..e3b8cbc4 100644 --- a/docs/usage.ipynb +++ b/docs/usage.ipynb @@ -43,7 +43,6 @@ }, "outputs": [], "source": [ - "%config InlineBackend.figure_formats = ['svg']\n", "import os\n", "\n", "STATIC_WEB_PAGE = {\"EXECUTE_NB\", \"READTHEDOCS\"}.intersection(os.environ)" diff --git a/docs/usage/basics.ipynb b/docs/usage/basics.ipynb index bff3e467..7ed43bbf 100644 --- a/docs/usage/basics.ipynb +++ b/docs/usage/basics.ipynb @@ -43,7 +43,6 @@ }, "outputs": [], "source": [ - "%config InlineBackend.figure_formats = ['svg']\n", "import os\n", "\n", "STATIC_WEB_PAGE = {\"EXECUTE_NB\", \"READTHEDOCS\"}.intersection(os.environ)" diff --git a/docs/usage/binned-fit.ipynb b/docs/usage/binned-fit.ipynb index 5b193b2e..2ddcad26 100644 --- a/docs/usage/binned-fit.ipynb +++ b/docs/usage/binned-fit.ipynb @@ -43,7 +43,6 @@ }, "outputs": [], "source": [ - "%config InlineBackend.figure_formats = ['svg']\n", "import os\n", "\n", "STATIC_WEB_PAGE = {\"EXECUTE_NB\", \"READTHEDOCS\"}.intersection(os.environ)" diff --git a/docs/usage/caching.ipynb b/docs/usage/caching.ipynb index 60ab4ab3..0af1235e 100644 --- a/docs/usage/caching.ipynb +++ b/docs/usage/caching.ipynb @@ -43,7 +43,6 @@ }, "outputs": [], "source": [ - "%config InlineBackend.figure_formats = ['svg']\n", "import os\n", "\n", "STATIC_WEB_PAGE = {\"EXECUTE_NB\", \"READTHEDOCS\"}.intersection(os.environ)" diff --git a/docs/usage/chi-squared.ipynb b/docs/usage/chi-squared.ipynb index 57ed3677..1b4718af 100644 --- a/docs/usage/chi-squared.ipynb +++ b/docs/usage/chi-squared.ipynb @@ -43,7 +43,6 @@ }, "outputs": [], "source": [ - "%config InlineBackend.figure_formats = ['svg']\n", "import os\n", "\n", "STATIC_WEB_PAGE = {\"EXECUTE_NB\", \"READTHEDOCS\"}.intersection(os.environ)" diff --git a/docs/usage/faster-lambdify.ipynb b/docs/usage/faster-lambdify.ipynb index 3a02850a..403308d0 100644 --- a/docs/usage/faster-lambdify.ipynb +++ b/docs/usage/faster-lambdify.ipynb @@ -43,7 +43,6 @@ }, "outputs": [], "source": [ - "%config InlineBackend.figure_formats = ['svg']\n", "import os\n", "\n", "STATIC_WEB_PAGE = {\"EXECUTE_NB\", \"READTHEDOCS\"}.intersection(os.environ)" diff --git a/docs/usage/unbinned-fit.ipynb b/docs/usage/unbinned-fit.ipynb index de747b1f..0812449d 100644 --- a/docs/usage/unbinned-fit.ipynb +++ b/docs/usage/unbinned-fit.ipynb @@ -43,7 +43,6 @@ }, "outputs": [], "source": [ - "%config InlineBackend.figure_formats = ['svg']\n", "import os\n", "\n", "STATIC_WEB_PAGE = {\"EXECUTE_NB\", \"READTHEDOCS\"}.intersection(os.environ)" From f65cd693fe226554b52aeaefa4c4507a544c8667 Mon Sep 17 00:00:00 2001 From: Remco de Boer <29308176+redeboer@users.noreply.github.com> Date: Sat, 2 Dec 2023 20:47:58 +0100 Subject: [PATCH 2/2] DOC: plot with SVG where needed --- docs/amplitude-analysis.ipynb | 11 ++- .../analytic-continuation.ipynb | 4 +- docs/usage.ipynb | 13 ++-- docs/usage/basics.ipynb | 75 ++++++++++++------- docs/usage/binned-fit.ipynb | 1 + docs/usage/chi-squared.ipynb | 1 + docs/usage/unbinned-fit.ipynb | 11 ++- 7 files changed, 69 insertions(+), 47 deletions(-) diff --git a/docs/amplitude-analysis.ipynb b/docs/amplitude-analysis.ipynb index 8bbc79ed..bae91f98 100644 --- a/docs/amplitude-analysis.ipynb +++ b/docs/amplitude-analysis.ipynb @@ -748,15 +748,15 @@ }, "outputs": [], "source": [ + "%config InlineBackend.figure_formats = ['svg']\n", "import matplotlib.pyplot as plt\n", - "from matplotlib import cm\n", "\n", "resonances = sorted(\n", " reaction.get_intermediate_particles(),\n", " key=lambda p: p.mass,\n", ")\n", "evenly_spaced_interval = np.linspace(0, 1, len(resonances))\n", - "colors = [cm.rainbow(x) for x in evenly_spaced_interval]\n", + "colors = [plt.cm.rainbow(x) for x in evenly_spaced_interval]\n", "fig, ax = plt.subplots(figsize=(9, 4))\n", "ax.hist(\n", " np.real(data_frame[\"m_12\"]),\n", @@ -1465,7 +1465,6 @@ "source": [ "import matplotlib.pyplot as plt\n", "import numpy as np\n", - "from matplotlib import cm\n", "\n", "resonances = sorted(\n", " reaction.get_intermediate_particles(),\n", @@ -1473,7 +1472,7 @@ ")\n", "\n", "evenly_spaced_interval = np.linspace(0, 1, len(resonances))\n", - "colors = [cm.rainbow(x) for x in evenly_spaced_interval]\n", + "colors = [plt.cm.rainbow(x) for x in evenly_spaced_interval]\n", "\n", "\n", "def indicate_masses(ax):\n", @@ -1917,7 +1916,7 @@ }, "outputs": [], "source": [ - "fig, ax = plt.subplots(1, figsize=(8, 5))\n", + "fig, ax = plt.subplots(figsize=(8, 5))\n", "bins = 150\n", "phsp_projection = np.real(phsp[\"m_12\"])\n", "ax.hist(\n", @@ -1989,7 +1988,7 @@ " sub_dataset = helicity_transformer(sub_events)\n", " masses.append(np.real(sub_dataset[\"m_12\"]))\n", "\n", - "fig, ax = plt.subplots(1, figsize=(8, 5))\n", + "fig, ax = plt.subplots(figsize=(8, 5))\n", "plt.hist(masses, bins=100, stacked=True, alpha=0.6)\n", "ax.set_xlim(0.25, 2.5)\n", "ax.set_xlabel(R\"$m_{\\pi^0\\pi^0}$ [GeV]\")\n", diff --git a/docs/amplitude-analysis/analytic-continuation.ipynb b/docs/amplitude-analysis/analytic-continuation.ipynb index c04319a2..c2df027e 100644 --- a/docs/amplitude-analysis/analytic-continuation.ipynb +++ b/docs/amplitude-analysis/analytic-continuation.ipynb @@ -256,8 +256,8 @@ }, "outputs": [], "source": [ + "%config InlineBackend.figure_formats = ['svg']\n", "import numpy as np\n", - "from matplotlib import cm\n", "\n", "phsp = helicity_transformer(phsp_momenta)\n", "intensities = np.array(intensity(phsp))\n", @@ -267,7 +267,7 @@ " key=lambda p: p.mass,\n", ")\n", "evenly_spaced_interval = np.linspace(0, 1, len(resonances))\n", - "colors = [cm.rainbow(x) for x in evenly_spaced_interval]\n", + "colors = [plt.cm.rainbow(x) for x in evenly_spaced_interval]\n", "\n", "fig, ax = plt.subplots()\n", "ax.set_xlabel(\"$m_{02}$ [GeV]\")\n", diff --git a/docs/usage.ipynb b/docs/usage.ipynb index e3b8cbc4..a51dc013 100644 --- a/docs/usage.ipynb +++ b/docs/usage.ipynb @@ -191,6 +191,7 @@ }, "outputs": [], "source": [ + "%config InlineBackend.figure_formats = ['svg']\n", "import matplotlib.pyplot as plt\n", "\n", "fig, ax = plt.subplots(figsize=(5, 3))\n", @@ -245,6 +246,7 @@ }, "outputs": [], "source": [ + "%config InlineBackend.figure_formats = ['svg']\n", "%matplotlib widget\n", "import matplotlib.pyplot as plt\n", "from matplotlib.animation import PillowWriter\n", @@ -702,19 +704,20 @@ "source_hidden": true }, "tags": [ + "full-width", "hide-input" ] }, "outputs": [], "source": [ - "from matplotlib import cm\n", + "%config InlineBackend.figure_formats = ['png']\n", "\n", "fig, (ax1, ax2) = plt.subplots(ncols=2, figsize=(7, 4.3))\n", "fig.canvas.toolbar_visible = False\n", "fig.canvas.header_visible = False\n", "fig.canvas.footer_visible = False\n", - "ax1.hist2d(*cartesian_data.values(), bins=100, cmap=cm.coolwarm)\n", - "ax2.hist2d(polar_data[\"phi\"], polar_data[\"r\"], bins=100, cmap=cm.coolwarm)\n", + "ax1.hist2d(*cartesian_data.values(), bins=100, cmap=plt.cm.coolwarm)\n", + "ax2.hist2d(polar_data[\"phi\"], polar_data[\"r\"], bins=100, cmap=plt.cm.coolwarm)\n", "fig.suptitle(\"Hit-and-miss intensity distribution\")\n", "ax1.set_title(\"cartesian\")\n", "ax2.set_title(\"polar\")\n", @@ -770,11 +773,11 @@ }, "outputs": [], "source": [ + "%config InlineBackend.figure_formats = ['png']\n", "%matplotlib widget\n", "import ipywidgets\n", "import matplotlib.pyplot as plt\n", "import numpy as np\n", - "from matplotlib import cm\n", "\n", "size = 200\n", "X, Y = np.meshgrid(\n", @@ -809,7 +812,7 @@ " Z = polar_function(polar_domain)\n", " if color_mesh is not None:\n", " color_mesh.remove()\n", - " color_mesh = ax_interactive.pcolormesh(X, Y, Z, cmap=cm.coolwarm)" + " color_mesh = ax_interactive.pcolormesh(X, Y, Z, cmap=plt.cm.coolwarm)" ] }, { diff --git a/docs/usage/basics.ipynb b/docs/usage/basics.ipynb index 7ed43bbf..af3f37c8 100644 --- a/docs/usage/basics.ipynb +++ b/docs/usage/basics.ipynb @@ -225,6 +225,7 @@ }, "outputs": [], "source": [ + "%config InlineBackend.figure_formats = ['svg']\n", "parameter_defaults = {\n", " a: 0.15,\n", " b: 0.05,\n", @@ -367,9 +368,12 @@ }, "outputs": [], "source": [ - "plt.scatter(x_values, y_values)\n", - "plt.gca().set_xlabel(\"$x$\")\n", - "plt.gca().set_ylabel(\"$f(x)$\");" + "%config InlineBackend.figure_formats = ['svg']\n", + "fig, ax = plt.subplots()\n", + "ax.scatter(x_values, y_values)\n", + "ax.set_xlabel(\"$x$\")\n", + "ax.set_ylabel(\"$f(x)$\")\n", + "plt.show()" ] }, { @@ -420,12 +424,13 @@ }, "outputs": [], "source": [ + "%config InlineBackend.figure_formats = ['svg']\n", "x_domain = np.linspace(0, 5, num=200)\n", "y_values = function_1d({\"x\": x_domain})\n", - "fig = plt.figure(figsize=(8, 5))\n", - "plt.plot(x_domain, y_values)\n", - "plt.gca().set_xlabel(\"$x$\")\n", - "plt.gca().set_ylabel(\"$f(x)$\")\n", + "fig, ax = plt.subplots(figsize=(8, 5))\n", + "ax.plot(x_domain, y_values)\n", + "ax.set_xlabel(\"$x$\")\n", + "ax.set_ylabel(\"$f(x)$\")\n", "\n", "x_min = x_range[1]\n", "x_max = x_range[2]\n", @@ -433,37 +438,37 @@ "x_value = 1.5\n", "\n", "line_segment = [[0, 0], [0, y_max]]\n", - "plt.plot(*line_segment, color=\"black\")\n", - "plt.text(\n", + "ax.plot(*line_segment, color=\"black\")\n", + "ax.text(\n", " -0.22,\n", " y_max / 2 * 0.5,\n", " \"uniform sample $(0, y_{max})$\",\n", " rotation=\"vertical\",\n", ")\n", - "plt.axhline(y=y_max, linestyle=\"dotted\", color=\"black\")\n", - "plt.text(\n", + "ax.axhline(y=y_max, linestyle=\"dotted\", color=\"black\")\n", + "ax.text(\n", " x_min + 0.1,\n", " y_max - 0.01,\n", " \"$y_{max}$\",\n", ")\n", "\n", "line_segment = [[x_min, x_max], [0, 0]]\n", - "plt.plot(*line_segment, color=\"black\")\n", - "plt.text(\n", + "ax.plot(*line_segment, color=\"black\")\n", + "ax.text(\n", " (x_max - x_min) / 2 - 0.22,\n", " 0.005,\n", " R\"uniform sample $(x_\\mathrm{min}, x_\\mathrm{max})$\",\n", ")\n", - "plt.scatter(x_value, function_1d({\"x\": x_value}))\n", - "plt.axvline(x=x_value, linestyle=\"dotted\")\n", + "ax.scatter(x_value, function_1d({\"x\": x_value}))\n", + "ax.axvline(x=x_value, linestyle=\"dotted\")\n", "\n", "\n", - "def draw_y_hit(x_random, y_random):\n", + "def draw_y_hit(ax, x_random, y_random):\n", " y_value = function_1d({\"x\": x_random})\n", " color = \"green\" if y_random < y_value else \"red\"\n", " text = \"hit\" if y_random < y_value else \"miss\"\n", - " plt.scatter(0, y_random, color=color)\n", - " plt.arrow(\n", + " ax.scatter(0, y_random, color=color)\n", + " ax.arrow(\n", " x=0,\n", " y=y_random,\n", " dx=x_random,\n", @@ -473,11 +478,11 @@ " color=color,\n", " linestyle=\"dotted\",\n", " )\n", - " plt.text(x_value + 0.05, y_random, text)\n", + " ax.text(x_value + 0.05, y_random, text)\n", "\n", "\n", - "draw_y_hit(x_random=x_value, y_random=0.05)\n", - "draw_y_hit(x_random=x_value, y_random=0.17)" + "draw_y_hit(ax, x_random=x_value, y_random=0.05)\n", + "draw_y_hit(ax, x_random=x_value, y_random=0.17)" ] }, { @@ -564,6 +569,7 @@ }, "outputs": [], "source": [ + "%config InlineBackend.figure_formats = ['png']\n", "plt.hist(\n", " domain[\"x\"],\n", " bins=200,\n", @@ -636,6 +642,7 @@ }, "outputs": [], "source": [ + "%config InlineBackend.figure_formats = ['png']\n", "plt.hist(data[\"x\"], bins=200);" ] }, @@ -694,6 +701,7 @@ }, "outputs": [], "source": [ + "%config InlineBackend.figure_formats = ['png']\n", "plt.hist(data[\"x\"], bins=200, density=True)\n", "plt.hist(\n", " domain[\"x\"],\n", @@ -803,6 +811,7 @@ }, "outputs": [], "source": [ + "%config InlineBackend.figure_formats = ['png']\n", "plt.hist(data[\"x\"], bins=200, density=True)\n", "plt.hist(\n", " domain[\"x\"],\n", @@ -874,14 +883,16 @@ }, "outputs": [], "source": [ + "%config InlineBackend.figure_formats = ['svg']\n", "fit_traceback = pd.read_csv(\"traceback-1D.csv\")\n", "fig, (ax1, ax2) = plt.subplots(\n", - " 2, figsize=(7, 9), sharex=True, gridspec_kw={\"height_ratios\": [1, 2]}\n", + " nrows=2, figsize=(7, 9), sharex=True, gridspec_kw={\"height_ratios\": [1, 2]}\n", ")\n", "fit_traceback.plot(\"function_call\", \"estimator_value\", ax=ax1)\n", "fit_traceback.plot(\"function_call\", sorted(initial_parameters), ax=ax2)\n", "fig.tight_layout()\n", - "ax2.set_xlabel(\"function call\");" + "ax2.set_xlabel(\"function call\")\n", + "plt.show()" ] }, { @@ -962,9 +973,10 @@ "metadata": {}, "outputs": [], "source": [ + "%config InlineBackend.figure_formats = ['png']\n", "y_range = (y, -sp.pi, +sp.pi)\n", "substituted_expr_2d = expression_2d.subs(parameter_defaults)\n", - "plot3d(substituted_expr_2d, x_range, y_range)" + "plot3d(substituted_expr_2d, x_range, y_range);" ] }, { @@ -1015,6 +1027,7 @@ }, "outputs": [], "source": [ + "%config InlineBackend.figure_formats = ['svg']\n", "fig, axes = plt.subplots(1, 2, figsize=(8, 3))\n", "intensities = np.array(function_2d(domain_2d))\n", "kwargs = {\n", @@ -1072,7 +1085,8 @@ }, "outputs": [], "source": [ - "fig, axes = plt.subplots(1, 2, figsize=(9, 4), sharey=True, tight_layout=True)\n", + "%config InlineBackend.figure_formats = ['png']\n", + "fig, axes = plt.subplots(ncols=2, figsize=(9, 4), sharey=True, tight_layout=True)\n", "axes[0].hist2d(**data_2d, bins=50)\n", "axes[1].hist2d(**domain_2d, weights=function_2d(domain_2d), bins=50)\n", "axes[0].set_xlabel(\"$x$\")\n", @@ -1080,7 +1094,8 @@ "axes[1].set_xlabel(\"$x$\")\n", "axes[0].set_ylabel(\"$y$\")\n", "axes[0].set_title(\"Data sample\")\n", - "axes[1].set_title(\"Function with optimized parameters\");" + "axes[1].set_title(\"Function with optimized parameters\")\n", + "plt.show()" ] }, { @@ -1224,6 +1239,7 @@ }, "outputs": [], "source": [ + "%config InlineBackend.figure_formats = ['png']\n", "fig, axes = plt.subplots(1, 2, figsize=(9, 4), sharey=True, tight_layout=True)\n", "fig.suptitle(\"Final fit result\")\n", "axes[0].hist2d(**data_2d, bins=50)\n", @@ -1233,7 +1249,8 @@ "axes[1].set_xlabel(\"$x$\")\n", "axes[0].set_ylabel(\"$y$\")\n", "axes[0].set_title(\"Data sample\")\n", - "axes[1].set_title(\"Function with optimized parameters\");" + "axes[1].set_title(\"Function with optimized parameters\")\n", + "plt.show()" ] }, { @@ -1257,6 +1274,7 @@ }, "outputs": [], "source": [ + "%config InlineBackend.figure_formats = ['svg']\n", "minuit_traceback = pd.read_csv(\"traceback.csv\")\n", "scipy_traceback = pd.read_csv(\"traceback-scipy.csv\")\n", "fig, ((ax1, ax2), (ax3, ax4)) = plt.subplots(\n", @@ -1284,7 +1302,8 @@ " loc=\"upper right\"\n", ")\n", "fig.tight_layout()\n", - "ax2.set_xlabel(\"function call\");" + "ax2.set_xlabel(\"function call\")\n", + "plt.show()" ] } ], diff --git a/docs/usage/binned-fit.ipynb b/docs/usage/binned-fit.ipynb index 2ddcad26..27784202 100644 --- a/docs/usage/binned-fit.ipynb +++ b/docs/usage/binned-fit.ipynb @@ -106,6 +106,7 @@ }, "outputs": [], "source": [ + "%config InlineBackend.figure_formats = ['svg']\n", "import matplotlib.pyplot as plt\n", "\n", "fig, ax = plt.subplots(figsize=(8, 5))\n", diff --git a/docs/usage/chi-squared.ipynb b/docs/usage/chi-squared.ipynb index 1b4718af..81b15450 100644 --- a/docs/usage/chi-squared.ipynb +++ b/docs/usage/chi-squared.ipynb @@ -169,6 +169,7 @@ }, "outputs": [], "source": [ + "%config InlineBackend.figure_formats = ['svg']\n", "import matplotlib.pyplot as plt\n", "\n", "\n", diff --git a/docs/usage/unbinned-fit.ipynb b/docs/usage/unbinned-fit.ipynb index 0812449d..31e4e245 100644 --- a/docs/usage/unbinned-fit.ipynb +++ b/docs/usage/unbinned-fit.ipynb @@ -112,7 +112,6 @@ "%config InlineBackend.figure_formats = ['png']\n", "import matplotlib as mpl\n", "import matplotlib.pyplot as plt\n", - "from matplotlib import cm\n", "\n", "mpl.rcParams[\"figure.dpi\"] = 300\n", "\n", @@ -139,7 +138,7 @@ "\n", "bins_x, bins_y = 80, 50\n", "bin_values, bin_edges_x, bin_edges_y, _ = ax2d.hist2d(\n", - " data[\"x\"], data[\"y\"], bins=(bins_x, bins_y), cmap=cm.coolwarm\n", + " data[\"x\"], data[\"y\"], bins=(bins_x, bins_y), cmap=plt.cm.coolwarm\n", ")\n", "xlim = 0, 4\n", "ylim = -3, +3\n", @@ -250,8 +249,8 @@ ")\n", "ax1.set_title(\"Data distribution\")\n", "ax2.set_title(\"Initial fit model\")\n", - "ax1.hist2d(data[\"x\"], data[\"y\"], cmap=cm.coolwarm, bins=(bins_x, bins_y))\n", - "ax2.pcolormesh(X, Y, Z, cmap=cm.coolwarm)\n", + "ax1.hist2d(data[\"x\"], data[\"y\"], cmap=plt.cm.coolwarm, bins=(bins_x, bins_y))\n", + "ax2.pcolormesh(X, Y, Z, cmap=plt.cm.coolwarm)\n", "for ax in [ax1, ax2]:\n", " ax.set_xlim(*xlim)\n", " ax.set_ylim(*ylim)\n", @@ -330,8 +329,8 @@ ")\n", "ax1.set_title(\"Data distribution\")\n", "ax2.set_title(\"Model with optimized parameters\")\n", - "ax1.hist2d(data[\"x\"], data[\"y\"], cmap=cm.coolwarm, bins=(bins_x, bins_y))\n", - "ax2.pcolormesh(X, Y, Z, cmap=cm.coolwarm)\n", + "ax1.hist2d(data[\"x\"], data[\"y\"], cmap=plt.cm.coolwarm, bins=(bins_x, bins_y))\n", + "ax2.pcolormesh(X, Y, Z, cmap=plt.cm.coolwarm)\n", "for ax in [ax1, ax2]:\n", " ax.set_xlim(*xlim)\n", " ax.set_ylim(*ylim)\n",