{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# Activity 8 - Interaction and Animation\n", "\n", "We saw in our previous notebook how to create visualisations using matplotlib, seaborn, and pandas - however, in most cases these were static. We did get some interaction through the 3D plots and through using the Plotly library. Here, we are going to pursue this further, and look at how we can incorporate interaction and animation into our tools.\n", "\n", "In particular, interaction techniques are useful for creatng dashboards (visual analytics) interfaces. Animations can be useful for conveying the story, by linking multiple still images together or by showing the analytical process.\n", "\n", "In this example notebook, we demonstrate how to create interactive widgets that can be used to filter data from a dataframe, either based on range selection or by item selection. We also demonstrate how an animated GIF can be constructed by taking frames of a plot to build an animation. We use a live data set based on COVID-19 to illustrate the concepts in this notebook.\n", "\n", "Further details are in the following blog post: https://towardsdatascience.com/interactive-controls-for-jupyter-notebooks-f5c94829aee6" ] }, { "cell_type": "code", "execution_count": 15, "metadata": {}, "outputs": [], "source": [ "import pandas as pd\n", "from datetime import datetime, timedelta\n", "import matplotlib.pyplot as plt" ] }, { "cell_type": "code", "execution_count": 17, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Requirement already satisfied: ipywidgets in c:\\python39\\lib\\site-packages (7.6.5)\n", "Requirement already satisfied: nbformat>=4.2.0 in c:\\python39\\lib\\site-packages (from ipywidgets) (5.1.3)\n", "Requirement already satisfied: widgetsnbextension~=3.5.0 in c:\\python39\\lib\\site-packages (from ipywidgets) (3.5.2)\n", "Requirement already satisfied: ipykernel>=4.5.1 in c:\\python39\\lib\\site-packages (from ipywidgets) (6.5.0)\n", "Requirement already satisfied: ipython-genutils~=0.2.0 in c:\\python39\\lib\\site-packages (from ipywidgets) (0.2.0)\n", "Requirement already satisfied: ipython>=4.0.0 in c:\\python39\\lib\\site-packages (from ipywidgets) (7.29.0)\n", "Requirement already satisfied: traitlets>=4.3.1 in c:\\python39\\lib\\site-packages (from ipywidgets) (5.1.1)\n", "Requirement already satisfied: jupyterlab-widgets>=1.0.0 in c:\\python39\\lib\\site-packages (from ipywidgets) (1.0.2)\n", "Requirement already satisfied: debugpy<2.0,>=1.0.0 in c:\\python39\\lib\\site-packages (from ipykernel>=4.5.1->ipywidgets) (1.5.1)\n", "Requirement already satisfied: tornado<7.0,>=4.2 in c:\\python39\\lib\\site-packages (from ipykernel>=4.5.1->ipywidgets) (6.1)\n", "Requirement already satisfied: matplotlib-inline<0.2.0,>=0.1.0 in c:\\python39\\lib\\site-packages (from ipykernel>=4.5.1->ipywidgets) (0.1.3)\n", "Requirement already satisfied: jupyter-client<8.0 in c:\\python39\\lib\\site-packages (from ipykernel>=4.5.1->ipywidgets) (7.0.6)\n", "Requirement already satisfied: decorator in c:\\python39\\lib\\site-packages (from ipython>=4.0.0->ipywidgets) (4.4.2)\n", "Requirement already satisfied: pygments in c:\\python39\\lib\\site-packages (from ipython>=4.0.0->ipywidgets) (2.10.0)\n", "Requirement already satisfied: prompt-toolkit!=3.0.0,!=3.0.1,<3.1.0,>=2.0.0 in c:\\python39\\lib\\site-packages (from ipython>=4.0.0->ipywidgets) (3.0.22)\n", "Requirement already satisfied: setuptools>=18.5 in c:\\python39\\lib\\site-packages (from ipython>=4.0.0->ipywidgets) (57.4.0)\n", "Requirement already satisfied: backcall in c:\\python39\\lib\\site-packages (from ipython>=4.0.0->ipywidgets) (0.2.0)\n", "Requirement already satisfied: colorama in c:\\python39\\lib\\site-packages (from ipython>=4.0.0->ipywidgets) (0.4.4)\n", "Requirement already satisfied: jedi>=0.16 in c:\\python39\\lib\\site-packages (from ipython>=4.0.0->ipywidgets) (0.18.0)\n", "Requirement already satisfied: pickleshare in c:\\python39\\lib\\site-packages (from ipython>=4.0.0->ipywidgets) (0.7.5)\n", "Requirement already satisfied: jsonschema!=2.5.0,>=2.4 in c:\\python39\\lib\\site-packages (from nbformat>=4.2.0->ipywidgets) (3.2.0)\n", "Requirement already satisfied: jupyter-core in c:\\python39\\lib\\site-packages (from nbformat>=4.2.0->ipywidgets) (4.9.1)\n", "Requirement already satisfied: notebook>=4.4.1 in c:\\python39\\lib\\site-packages (from widgetsnbextension~=3.5.0->ipywidgets) (6.4.5)\n", "Requirement already satisfied: parso<0.9.0,>=0.8.0 in c:\\python39\\lib\\site-packages (from jedi>=0.16->ipython>=4.0.0->ipywidgets) (0.8.2)\n", "Requirement already satisfied: six>=1.11.0 in c:\\python39\\lib\\site-packages (from jsonschema!=2.5.0,>=2.4->nbformat>=4.2.0->ipywidgets) (1.16.0)\n", "Requirement already satisfied: pyrsistent>=0.14.0 in c:\\python39\\lib\\site-packages (from jsonschema!=2.5.0,>=2.4->nbformat>=4.2.0->ipywidgets) (0.18.0)\n", "Requirement already satisfied: attrs>=17.4.0 in c:\\python39\\lib\\site-packages (from jsonschema!=2.5.0,>=2.4->nbformat>=4.2.0->ipywidgets) (21.2.0)\n", "Requirement already satisfied: nest-asyncio>=1.5 in c:\\python39\\lib\\site-packages (from jupyter-client<8.0->ipykernel>=4.5.1->ipywidgets) (1.5.1)\n", "Requirement already satisfied: python-dateutil>=2.1 in c:\\python39\\lib\\site-packages (from jupyter-client<8.0->ipykernel>=4.5.1->ipywidgets) (2.8.2)\n", "Requirement already satisfied: entrypoints in c:\\python39\\lib\\site-packages (from jupyter-client<8.0->ipykernel>=4.5.1->ipywidgets) (0.3)\n", "Requirement already satisfied: pyzmq>=13 in c:\\python39\\lib\\site-packages (from jupyter-client<8.0->ipykernel>=4.5.1->ipywidgets) (22.3.0)\n", "Requirement already satisfied: pywin32>=1.0 in c:\\python39\\lib\\site-packages (from jupyter-core->nbformat>=4.2.0->ipywidgets) (302)\n", "Requirement already satisfied: argon2-cffi in c:\\python39\\lib\\site-packages (from notebook>=4.4.1->widgetsnbextension~=3.5.0->ipywidgets) (21.1.0)\n", "Requirement already satisfied: terminado>=0.8.3 in c:\\python39\\lib\\site-packages (from notebook>=4.4.1->widgetsnbextension~=3.5.0->ipywidgets) (0.12.1)\n", "Requirement already satisfied: jinja2 in c:\\python39\\lib\\site-packages (from notebook>=4.4.1->widgetsnbextension~=3.5.0->ipywidgets) (3.0.3)\n", "Requirement already satisfied: Send2Trash>=1.5.0 in c:\\python39\\lib\\site-packages (from notebook>=4.4.1->widgetsnbextension~=3.5.0->ipywidgets) (1.8.0)\n", "Requirement already satisfied: prometheus-client in c:\\python39\\lib\\site-packages (from notebook>=4.4.1->widgetsnbextension~=3.5.0->ipywidgets) (0.12.0)\n", "Requirement already satisfied: nbconvert in c:\\python39\\lib\\site-packages (from notebook>=4.4.1->widgetsnbextension~=3.5.0->ipywidgets) (6.3.0)\n", "Requirement already satisfied: wcwidth in c:\\python39\\lib\\site-packages (from prompt-toolkit!=3.0.0,!=3.0.1,<3.1.0,>=2.0.0->ipython>=4.0.0->ipywidgets) (0.2.5)\n", "Requirement already satisfied: pywinpty>=1.1.0 in c:\\python39\\lib\\site-packages (from terminado>=0.8.3->notebook>=4.4.1->widgetsnbextension~=3.5.0->ipywidgets) (1.1.5)\n", "Requirement already satisfied: cffi>=1.0.0 in c:\\python39\\lib\\site-packages (from argon2-cffi->notebook>=4.4.1->widgetsnbextension~=3.5.0->ipywidgets) (1.15.0)\n", "Requirement already satisfied: MarkupSafe>=2.0 in c:\\python39\\lib\\site-packages (from jinja2->notebook>=4.4.1->widgetsnbextension~=3.5.0->ipywidgets) (2.0.1)\n", "Requirement already satisfied: bleach in c:\\python39\\lib\\site-packages (from nbconvert->notebook>=4.4.1->widgetsnbextension~=3.5.0->ipywidgets) (4.1.0)\n", "Requirement already satisfied: jupyterlab-pygments in c:\\python39\\lib\\site-packages (from nbconvert->notebook>=4.4.1->widgetsnbextension~=3.5.0->ipywidgets) (0.1.2)\n", "Requirement already satisfied: defusedxml in c:\\python39\\lib\\site-packages (from nbconvert->notebook>=4.4.1->widgetsnbextension~=3.5.0->ipywidgets) (0.7.1)\n", "Requirement already satisfied: testpath in c:\\python39\\lib\\site-packages (from nbconvert->notebook>=4.4.1->widgetsnbextension~=3.5.0->ipywidgets) (0.5.0)\n", "Requirement already satisfied: mistune<2,>=0.8.1 in c:\\python39\\lib\\site-packages (from nbconvert->notebook>=4.4.1->widgetsnbextension~=3.5.0->ipywidgets) (0.8.4)\n", "Requirement already satisfied: pandocfilters>=1.4.1 in c:\\python39\\lib\\site-packages (from nbconvert->notebook>=4.4.1->widgetsnbextension~=3.5.0->ipywidgets) (1.5.0)\n", "Requirement already satisfied: nbclient<0.6.0,>=0.5.0 in c:\\python39\\lib\\site-packages (from nbconvert->notebook>=4.4.1->widgetsnbextension~=3.5.0->ipywidgets) (0.5.8)\n", "Requirement already satisfied: pycparser in c:\\python39\\lib\\site-packages (from cffi>=1.0.0->argon2-cffi->notebook>=4.4.1->widgetsnbextension~=3.5.0->ipywidgets) (2.21)\n", "Requirement already satisfied: packaging in c:\\python39\\lib\\site-packages (from bleach->nbconvert->notebook>=4.4.1->widgetsnbextension~=3.5.0->ipywidgets) (21.2)\n", "Requirement already satisfied: webencodings in c:\\python39\\lib\\site-packages (from bleach->nbconvert->notebook>=4.4.1->widgetsnbextension~=3.5.0->ipywidgets) (0.5.1)\n", "Requirement already satisfied: pyparsing<3,>=2.0.2 in c:\\python39\\lib\\site-packages (from packaging->bleach->nbconvert->notebook>=4.4.1->widgetsnbextension~=3.5.0->ipywidgets) (2.4.7)\n" ] } ], "source": [ "!pip install ipywidgets" ] }, { "cell_type": "code", "execution_count": 16, "metadata": {}, "outputs": [], "source": [ "import ipywidgets as widgets\n", "from ipywidgets import interact, interact_manual" ] }, { "cell_type": "code", "execution_count": 18, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
Area nameArea codeArea typeSpecimen dateDaily lab-confirmed casesCumulative lab-confirmed casesCumulative lab-confirmed cases rate
0Stoke-on-TrentE06000021ltla2021-04-265200837833.4
1Staffordshire MoorlandsE07000198ltla2021-04-26553515436.1
2Hackney and City of LondonE09000012ltla2021-04-265216727451.5
3Staffordshire MoorlandsE07000198ltla2021-04-25653465431.0
4Newark and SherwoodE07000175ltla2021-04-26472925956.5
........................
45292NorfolkE10000020utla2021-01-13621286303153.9
45293NorfolkE10000020utla2021-01-12671280093085.5
45294NorfolkE10000020utla2021-01-11795273383011.6
45295NorfolkE10000020utla2021-01-10504265432924.0
45296NorfolkE10000020utla2021-01-09392260392868.5
\n", "

45297 rows × 7 columns

\n", "
" ], "text/plain": [ " Area name Area code Area type Specimen date \\\n", "0 Stoke-on-Trent E06000021 ltla 2021-04-26 \n", "1 Staffordshire Moorlands E07000198 ltla 2021-04-26 \n", "2 Hackney and City of London E09000012 ltla 2021-04-26 \n", "3 Staffordshire Moorlands E07000198 ltla 2021-04-25 \n", "4 Newark and Sherwood E07000175 ltla 2021-04-26 \n", "... ... ... ... ... \n", "45292 Norfolk E10000020 utla 2021-01-13 \n", "45293 Norfolk E10000020 utla 2021-01-12 \n", "45294 Norfolk E10000020 utla 2021-01-11 \n", "45295 Norfolk E10000020 utla 2021-01-10 \n", "45296 Norfolk E10000020 utla 2021-01-09 \n", "\n", " Daily lab-confirmed cases Cumulative lab-confirmed cases \\\n", "0 5 20083 \n", "1 5 5351 \n", "2 5 21672 \n", "3 6 5346 \n", "4 4 7292 \n", "... ... ... \n", "45292 621 28630 \n", "45293 671 28009 \n", "45294 795 27338 \n", "45295 504 26543 \n", "45296 392 26039 \n", "\n", " Cumulative lab-confirmed cases rate \n", "0 7833.4 \n", "1 5436.1 \n", "2 7451.5 \n", "3 5431.0 \n", "4 5956.5 \n", "... ... \n", "45292 3153.9 \n", "45293 3085.5 \n", "45294 3011.6 \n", "45295 2924.0 \n", "45296 2868.5 \n", "\n", "[45297 rows x 7 columns]" ] }, "execution_count": 18, "metadata": {}, "output_type": "execute_result" } ], "source": [ "df = pd.read_csv('https://coronavirus.data.gov.uk/downloads/csv/coronavirus-cases_latest.csv')\n", "df" ] }, { "cell_type": "code", "execution_count": 23, "metadata": {}, "outputs": [ { "data": { "application/vnd.jupyter.widget-view+json": { "model_id": "dd849c6d82e940ef9617f7978aedfb69", "version_major": 2, "version_minor": 0 }, "text/plain": [ "interactive(children=(Text(value='Daily lab-confirmed cases', description='column'), IntSlider(value=20, descr…" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "@interact\n", "def show_articles_more_than(column='Daily lab-confirmed cases', x=20):\n", " return df.loc[df[column] > x]" ] }, { "cell_type": "code", "execution_count": 22, "metadata": {}, "outputs": [ { "data": { "application/vnd.jupyter.widget-view+json": { "model_id": "32282259552d4e2c812a2ff7fc02bcc7", "version_major": 2, "version_minor": 0 }, "text/plain": [ "interactive(children=(Text(value='Daily lab-confirmed cases', description='column'), IntSlider(value=10, descr…" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "# What if we want a custom min-max range for our slider?\n", "# https://ipywidgets.readthedocs.io/en/latest/examples/Using%20Interact.html\n", "\n", "@interact\n", "def show_articles_more_than(column='Daily lab-confirmed cases', x=widgets.IntSlider(min=0, max=1000, step=1, value=10)):\n", " return df.loc[df[column] > x]" ] }, { "cell_type": "code", "execution_count": 25, "metadata": {}, "outputs": [ { "data": { "application/vnd.jupyter.widget-view+json": { "model_id": "da54702077fb47ebb20120d8f77e542e", "version_major": 2, "version_minor": 0 }, "text/plain": [ "interactive(children=(Text(value='Area name', description='column'), Dropdown(description='x', options=('Arun'…" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "@interact\n", "def show_for_place(column='Area name', x=sorted(df['Area name'].unique())):\n", " return df.loc[df[column] == x]" ] }, { "cell_type": "code", "execution_count": 26, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Requirement already satisfied: moviepy in c:\\python39\\lib\\site-packages (1.0.3)\n", "Requirement already satisfied: numpy>=1.17.3 in c:\\python39\\lib\\site-packages (from moviepy) (1.21.2)\n", "Requirement already satisfied: requests<3.0,>=2.8.1 in c:\\python39\\lib\\site-packages (from moviepy) (2.26.0)\n", "Requirement already satisfied: proglog<=1.0.0 in c:\\python39\\lib\\site-packages (from moviepy) (0.1.9)\n", "Requirement already satisfied: tqdm<5.0,>=4.11.2 in c:\\python39\\lib\\site-packages (from moviepy) (4.62.3)\n", "Requirement already satisfied: decorator<5.0,>=4.0.2 in c:\\python39\\lib\\site-packages (from moviepy) (4.4.2)\n", "Requirement already satisfied: imageio-ffmpeg>=0.2.0 in c:\\python39\\lib\\site-packages (from moviepy) (0.4.5)\n", "Requirement already satisfied: imageio<3.0,>=2.5 in c:\\python39\\lib\\site-packages (from moviepy) (2.12.0)\n", "Requirement already satisfied: pillow>=8.3.2 in c:\\python39\\lib\\site-packages (from imageio<3.0,>=2.5->moviepy) (8.4.0)\n", "Requirement already satisfied: charset-normalizer~=2.0.0 in c:\\python39\\lib\\site-packages (from requests<3.0,>=2.8.1->moviepy) (2.0.7)\n", "Requirement already satisfied: certifi>=2017.4.17 in c:\\python39\\lib\\site-packages (from requests<3.0,>=2.8.1->moviepy) (2021.10.8)\n", "Requirement already satisfied: idna<4,>=2.5 in c:\\python39\\lib\\site-packages (from requests<3.0,>=2.8.1->moviepy) (2.10)\n", "Requirement already satisfied: urllib3<1.27,>=1.21.1 in c:\\python39\\lib\\site-packages (from requests<3.0,>=2.8.1->moviepy) (1.26.7)\n", "Requirement already satisfied: colorama in c:\\python39\\lib\\site-packages (from tqdm<5.0,>=4.11.2->moviepy) (0.4.4)\n" ] } ], "source": [ "!pip install moviepy\n", "\n", "import glob\n", "import moviepy.editor as mpy" ] }, { "cell_type": "code", "execution_count": 27, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "[]" ] }, "execution_count": 27, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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LKnVt9+7RM43rBe3LEtf/M0G/eG1A/rpx87SeQ0VNlVqv8HhiJ7ZeVgPbzyox7d2KBCOqLzArauX1unzFzcmraslPBzVvz+0WQ+81KKvv3uh3nfmtKTcN9H6QkN6eZ9PL+7p0pomnzYf9MuypNwch86YXqp3njZVb19cS/cQAFsQCAEAACDj/PCp3frmozv0rtOn6ptXL35dKPTLl5r15d9v0ucubtDnLm60scrUEhqKaPWOTj204YAe2dSuxqpC3fqB0zSvujih9917OKDP/vI1bWz166aVs/Xly+cl9H528g8M6aW9IwHR6p2H1NQZUKnHpfedOU0fWj5NdaUeu0sEkEUIhAAAAJCRvv/ELn378Z16zxl1+vq7F8nhMNpy0K933vaCls0s008+etabuocwYvWOQ/q732xQb2hY//zWU3Tt2dPHfGxqrCzL0m9eadVXHtoil9Ohr797od5yak1c75HKLMvSi01d+ukL+/XY1nZJ0sWnVOm6c2bonNnlcf/1BoA3IhACAABAxvru4zv1vSd26f1n1usfLz9FV/7wOQ0ORfXwZ1aovDDX7vJSWmffoP7+txu0ekenLppXqW9cvShuv2b+gSH90x826eGNbVo+q0zffd+SrJrj9EYHegZ0/9r9euClFvkCYc2uKNB158zQu06vY509gIQhEAIAAEDGsixL33l8p77/5G5VFuXKFwjrV59YrjOmJ35gcSawLEs/eWGf/ueR7SrxuPTt9yzW+Y2Tm7n00l6fPv+r9eroDenzlzTqppWz6dSKCQ1F9PDGNt334j5tbPWrMDdH7z59qj589gzNqSy0uzwAGYZACAAAABnNsix949Edun31Hv3LFafo4+fNsruktLOtrVefeeA17TrUrxvOm6m/u2zuuLdkDUeiuvXJ3frBk7tUX+bR995/mpbUexNTcAZY39Kjn76wT3/a2KZwJKrzGqbo2rP/f3tnHidHWef/93cyuSYzyeScSTKTBEMCJCaEcIsrKsghCAqLBz8Rj13BVURdF93f+ltx1RXd/bmurseP5efJrgheaDgUBRHkCJCTEHKQkEzCZHInM7nmevaPqglNO5nq6eruqqf78369ntdUV/W7n29Vfevp6meeqprBG0+cpA408Wds2NHBL5Zu5fhJtVx28hRdctgPHUe6WbllH8u37GXTrgM0j6th9qQ6Tmis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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "plt.figure(figsize=(20,10))\n", "data = df[df['Area type'] == 'utla']\n", "plt.xticks(rotation=90)\n", "plt.plot(data.groupby('Specimen date').sum()['Daily lab-confirmed cases'])" ] }, { "cell_type": "code", "execution_count": 29, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "Specimen date\n", "2021-01-09 392\n", "2021-01-10 504\n", "2021-01-11 795\n", "2021-01-12 671\n", "2021-01-13 621\n", " ... \n", "2021-04-17 13\n", "2021-04-18 21\n", "2021-04-20 25\n", "2021-04-21 30\n", "2021-04-26 26\n", "Name: Daily lab-confirmed cases, Length: 69, dtype: int64" ] }, "execution_count": 29, "metadata": {}, "output_type": "execute_result" } ], "source": [ "data = df[df['Area type'] == 'utla']\n", "output = data.groupby('Specimen date').sum()['Daily lab-confirmed cases']\n", "output" ] }, { "cell_type": "code", "execution_count": 30, "metadata": {}, "outputs": [], "source": [ "for i in range(len(output)):\n", " oo = output[:i]\n", " plt.xticks(rotation=90)\n", " plt.plot(oo)\n", " plt.savefig(f\"./pngs/{i}.png\")\n", " plt.close()" ] }, { "cell_type": "code", "execution_count": 31, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "MoviePy - Building file COVID.gif with imageio.\n" ] }, { "name": "stderr", "output_type": "stream", "text": [ " \r" ] } ], "source": [ "import os\n", "\n", "gif_name = 'COVID.gif'\n", "fps = 6\n", "file_list = sorted(glob.glob('./pngs/*.png'), key=os.path.getmtime)\n", "clip = mpy.ImageSequenceClip(file_list, fps=fps)\n", "clip.write_gif('{}'.format(gif_name), fps=fps)" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [] } ], "metadata": { "kernelspec": { "display_name": "Python 3 (ipykernel)", "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.9.13" } }, "nbformat": 4, "nbformat_minor": 4 }