Raw File
{
 "cells": [
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# Excess mortality in Russia during the covid19 pandemics\n",
    "## Analysis and figures for the Significance-2021 paper"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 1,
   "metadata": {},
   "outputs": [],
   "source": [
    "%matplotlib notebook\n",
    "\n",
    "import numpy as np\n",
    "import pandas as pd\n",
    "import pylab as plt\n",
    "import seaborn as sns\n",
    "import matplotlib\n",
    "\n",
    "from matplotlib.patches import Polygon"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "metadata": {},
   "outputs": [],
   "source": [
    "months_eng = ['January', 'February', 'March', 'April', 'May', 'June',\n",
    "              'July', 'August', 'September', 'October', 'November', 'December']\n",
    "\n",
    "months_eng_short = ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun',\n",
    "                    'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec']\n",
    "\n",
    "months_rus = ['Январь', 'Февраль', 'Март', 'Апрель', 'Май', 'Июнь',\n",
    "              'Июль', 'Август', 'Сентябрь', 'Октябрь', 'Ноябрь', 'Декабрь']\n",
    "\n",
    "months_rus_short = ['янв', 'фев', 'мар', 'апр', 'май', 'июн',\n",
    "                    'июл', 'авг', 'сен', 'окт', 'ноя', 'дек']"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Names, locations, etc. of Russian regions"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "metadata": {},
   "outputs": [],
   "source": [
    "def rename(regions):\n",
    "    regions[regions=='Hижегородская область'] = 'Нижегородская область'\n",
    "\n",
    "    # in EMISS files\n",
    "    regions[regions=='Город Москва столица Российской Федерации город федерального значения'] = 'Москва'\n",
    "    regions[regions=='Город Санкт-Петербург город федерального значения'] = 'Санкт-Петербург'\n",
    "    regions[regions=='Город федерального значения Севастополь'] = 'Севастополь'\n",
    "    regions[regions=='Ненецкий автономный округ (Архангельская область)'] = 'Ненецкий АО'\n",
    "    regions[regions=='Архангельская область (кроме Ненецкого автономного округа)'] = 'Архангельская область без АО'\n",
    "    regions[regions=='Ханты-Мансийский автономный округ - Югра (Тюменская область)'] = 'Ханты-Мансийский АО'\n",
    "    regions[regions=='Ямало-Ненецкий автономный округ (Тюменская область)'] = 'Ямало-Hенецкий АО'\n",
    "    regions[regions=='Тюменская область (кроме Ханты-Мансийского автономного округа-Югры и Ямало-Ненецкого автономного округа)'] = 'Тюменская область без АО'\n",
    "    regions[regions=='Чукотский автономный округ'] = 'Чукотский АО'\n",
    "    regions[regions=='Еврейская автономная область'] = 'Еврейская АО'\n",
    "    regions[regions=='Республика Адыгея (Адыгея)'] = 'Республика Адыгея'\n",
    "    regions[regions=='Республика Татарстан (Татарстан)'] = 'Республика Татарстан' \n",
    "    regions[regions=='Чувашская Республика - Чувашия'] = 'Чувашская Республика'\n",
    "    regions[regions=='Республика Северная Осетия-Алания'] = 'Северная Осетия'\n",
    "    regions[regions=='Республика Саха (Якутия)'] = 'Якутия'\n",
    "    regions[regions=='Кабардино-Балкарская Республика'] = 'Кабардино-Балкария'\n",
    "    regions[regions=='Карачаево-Черкесская Республика'] = 'Карачаево-Черкесия'\n",
    "    regions[regions=='Кемеровская область - Кузбасс'] = 'Кемеровская область'\n",
    "    \n",
    "    # in addition in Rosstat files\n",
    "    regions[regions=='г.Москва'] = 'Москва'\n",
    "    regions[regions=='г.Санкт-Петербург'] = 'Санкт-Петербург'\n",
    "    regions[regions=='г.Севастополь'] = 'Севастополь'\n",
    "    regions[regions=='Hенецкий авт.округ'] = 'Ненецкий АО'\n",
    "    regions[regions=='Архангельская область без автономии'] = 'Архангельская область без АО'\n",
    "    regions[regions=='Ханты-Мансийский авт.округ-Югра'] = 'Ханты-Мансийский АО'\n",
    "    regions[regions=='Ямало-Hенецкий авт.округ'] = 'Ямало-Hенецкий АО'\n",
    "    regions[regions=='Тюменская область без автономии'] = 'Тюменская область без АО'\n",
    "    regions[regions=='Чукотский авт.округ'] = 'Чукотский АО'\n",
    "    regions[regions=='Республика Татарстан(Татарстан)'] = 'Республика Татарстан'\n",
    "    regions[regions=='Чувашская Республика(Чувашия)'] = 'Чувашская Республика'\n",
    "    regions[regions=='Республика Северная Осетия- Алания'] = 'Северная Осетия'\n",
    "    \n",
    "    # in addition in Stopcoronavirus files\n",
    "    regions[regions=='Ненецкий автономный округ'] = 'Ненецкий АО'\n",
    "    regions[regions=='Республика Северная Осетия — Алания'] = 'Северная Осетия'\n",
    "    regions[regions=='Республика Чувашия'] = 'Чувашская Республика'\n",
    "    regions[regions=='Чукотский автономный округ'] = 'Чукотский АО'\n",
    "    regions[regions=='Ямало-Ненецкий автономный округ'] = 'Ямало-Hенецкий АО'\n",
    "    if 'Архангельская область без АО' not in regions:\n",
    "        regions[regions=='Архангельская область'] = 'Архангельская область без АО'\n",
    "        regions[regions=='Тюменская область'] = 'Тюменская область без АО'\n",
    "        \n",
    "    return regions"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "metadata": {},
   "outputs": [],
   "source": [
    "regions_table = {'Алтайский край':[3,12], 'Амурская область':[2,15],\n",
    "       'Архангельская область без АО':[1,8], 'Астраханская область':[7,7],\n",
    "       'Белгородская область':[6,4], 'Брянская область':[4,2], 'Владимирская область':[3,5],\n",
    "       'Волгоградская область':[6,6], 'Вологодская область':[1,5],\n",
    "       'Воронежская область':[6,5], 'Еврейская АО':[3,15], 'Забайкальский край':[1,15],\n",
    "       'Ивановская область':[2,5], 'Иркутская область':[1,14], 'Кабардино-Балкария':[9,4],\n",
    "       'Калининградская область':[1,0], 'Калужская область':[3,2], 'Камчатский край':[1,17],\n",
    "       'Карачаево-Черкесия':[8,4], 'Кемеровская область':[1,13], 'Кировская область':[2,8],\n",
    "       'Костромская область':[2,6], 'Краснодарский край':[7,4], 'Красноярский край':[0,13],\n",
    "       'Курганская область':[2,11], 'Курская область':[5,3], 'Ленинградская область':[1,3],\n",
    "       'Липецкая область':[5,4], 'Магаданская область':[1,16], 'Москва':[3,3],\n",
    "       'Московская область':[3,4], 'Мурманская область':[0,4], 'Ненецкий АО':[0,9],\n",
    "       'Нижегородская область':[3,6], 'Новгородская область':[1,4],\n",
    "       'Новосибирская область':[2,12], 'Омская область':[3,11], 'Оренбургская область':[5,8],\n",
    "       'Орловская область':[4,3], 'Пензенская область':[5,6], 'Пермский край':[2,9],\n",
    "       'Приморский край':[3,16], 'Псковская область':[2,2], 'Республика Адыгея':[8,3],\n",
    "       'Республика Алтай':[4,12], 'Республика Башкортостан':[4,9],\n",
    "       'Республика Бурятия':[2,14], 'Республика Дагестан':[8,7],\n",
    "       'Республика Ингушетия':[9,6], 'Республика Калмыкия':[7,6],\n",
    "       'Республика Карелия':[0,3], 'Республика Коми':[1,9], 'Республика Крым':[7,3],\n",
    "       'Республика Марий Эл':[2,7], 'Республика Мордовия':[4,6],\n",
    "       'Республика Татарстан':[3,8], 'Республика Тыва':[3,13], 'Республика Хакасия':[2,13],\n",
    "       'Ростовская область':[7,5], 'Рязанская область':[4,5], 'Самарская область':[4,8],\n",
    "       'Санкт-Петербург':[1,2], 'Саратовская область':[5,7], 'Сахалинская область':[3,17],\n",
    "       'Свердловская область':[2,10], 'Севастополь':[7,2], 'Северная Осетия':[9,5],\n",
    "       'Смоленская область':[3,1], 'Ставропольский край':[8,5], 'Тамбовская область':[5,5],\n",
    "       'Тверская область':[2,3], 'Томская область':[1,12], 'Тульская область':[4,4],\n",
    "       'Тюменская область без АО':[1,11], 'Удмуртская Республика':[3,9],\n",
    "       'Ульяновская область':[4,7], 'Хабаровский край':[2,16], 'Ханты-Мансийский АО':[1,10],\n",
    "       'Челябинская область':[3,10], 'Чеченская Республика':[8,6],\n",
    "       'Чувашская Республика':[3,7], 'Чукотский АО':[0,17], 'Якутия':[3,14],\n",
    "       'Ямало-Hенецкий АО':[0,10], 'Ярославская область':[2,4]}\n",
    "\n",
    "regions_short = ['Российская Федерация', 'Белгородская', 'Брянская',\n",
    "       'Владимирская', 'Воронежская',\n",
    "       'Ивановская', 'Калужская', 'Костромская',\n",
    "       'Курская', 'Липецкая', 'Московская',\n",
    "       'Орловская', 'Рязанская', 'Смоленская',\n",
    "       'Тамбовская', 'Тверская', 'Тульская',\n",
    "       'Ярославская', 'Москва', 'Карелия',\n",
    "       'Коми', 'Ненецкий АО', 'Архангельская',\n",
    "       'Вологодская', 'Калининградская',\n",
    "       'Ленинградская', 'Мурманская',\n",
    "       'Новгородская', 'Псковская', 'Петербург',\n",
    "       'Адыгея', 'Калмыкия', 'Крым',\n",
    "       'Краснодарский', 'Астраханская',\n",
    "       'Волгоградская', 'Ростовская', 'Севастополь',\n",
    "       'Дагестан', 'Ингушетия',\n",
    "       'Каб-Балкария', 'Кар-Черкесия', 'Сев Осетия',\n",
    "       'Чеченская', 'Ставропольский',\n",
    "       'Башкортостан', 'Марий Эл',\n",
    "       'Мордовия', 'Татарстан',\n",
    "       'Удмуртия', 'Чувашия', 'Пермский',\n",
    "       'Кировская', 'Нижегородская',\n",
    "       'Оренбургская', 'Пензенская', 'Самарская',\n",
    "       'Саратовская', 'Ульяновская', 'Курганская',\n",
    "       'Свердловская', 'Ханты-Манс АО', 'Ямало-Hен АО',\n",
    "       'Тюменская', 'Челябинская',\n",
    "       'Алтай', 'Тыва', 'Хакасия',\n",
    "       'Алтайский', 'Красноярский', 'Иркутская',\n",
    "       'Кемеровская', 'Новосибирская', 'Омская',\n",
    "       'Томская', 'Бурятия', 'Якутия',\n",
    "       'Забайкальский', 'Камчатский', 'Приморский',\n",
    "       'Хабаровский', 'Амурская', 'Магаданская',\n",
    "       'Сахалинская', 'Еврейская АО', 'Чукотский АО']"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 5,
   "metadata": {},
   "outputs": [],
   "source": [
    "coordinates={}\n",
    "coordinates['Белгородская область'               ] = [145,575]\n",
    "coordinates['Брянская область'                   ] = [140,510]\n",
    "coordinates['Владимирская область'               ] = [245,530]\n",
    "coordinates['Воронежская область'                ] = [170,590]\n",
    "coordinates['Ивановская область'                 ] = [265,515]\n",
    "coordinates['Калужская область'                  ] = [170,505]\n",
    "coordinates['Костромская область'                ] = [300,500]\n",
    "coordinates['Курская область'                    ] = [140,545]\n",
    "coordinates['Липецкая область'                   ] = [180,560]\n",
    "coordinates['Московская область'                 ] = [214,500]\n",
    "coordinates['Орловская область'                  ] = [165,535]\n",
    "coordinates['Рязанская область'                  ] = [220,550]\n",
    "coordinates['Смоленская область'                 ] = [160,475]\n",
    "coordinates['Тамбовская область'                 ] = [210,580]\n",
    "coordinates['Тверская область'                   ] = [190,455]\n",
    "coordinates['Тульская область'                   ] = [185,530]\n",
    "coordinates['Ярославская область'                ] = [260,480]\n",
    "coordinates['Москва'                             ] = [60, 460]\n",
    "coordinates['Республика Карелия'                 ] = [290,360]\n",
    "coordinates['Республика Коми'                    ] = [440,470]\n",
    "coordinates['Ненецкий АО'                        ] = [480,400]\n",
    "coordinates['Архангельская область без АО'       ] = [340,420]\n",
    "coordinates['Вологодская область'                ] = [290,460]\n",
    "coordinates['Калининградская область'            ] = [80,380]\n",
    "coordinates['Ленинградская область'              ] = [240,410]\n",
    "coordinates['Мурманская область'                 ] = [360,310]\n",
    "coordinates['Новгородская область'               ] = [210,425]\n",
    "coordinates['Псковская область'                  ] = [170,410]\n",
    "coordinates['Санкт-Петербург'                    ] = [200,370]\n",
    "coordinates['Республика Адыгея'                  ] = [90,690]\n",
    "coordinates['Республика Калмыкия'                ] = [170,705]\n",
    "coordinates['Краснодарский край'                 ] = [92,660]\n",
    "coordinates['Астраханская область'               ] = [205,710]\n",
    "coordinates['Волгоградская область'              ] = [195,645]\n",
    "coordinates['Ростовская область'                 ] = [140,650]\n",
    "coordinates['Республика Дагестан'                ] = [146,792]\n",
    "coordinates['Республика Ингушетия'               ] = [127,760]\n",
    "coordinates['Кабардино-Балкария'                 ] = [110,735]\n",
    "coordinates['Карачаево-Черкесия'                 ] = [95,720]\n",
    "coordinates['Северная Осетия'                    ] = [115,750]\n",
    "coordinates['Чеченская Республика'               ] = [140,760]\n",
    "coordinates['Ставропольский край'                ] = [125,710]\n",
    "coordinates['Республика Башкортостан'            ] = [365,650]\n",
    "coordinates['Республика Марий Эл'                ] = [320,560]\n",
    "coordinates['Республика Мордовия'                ] = [250,570]\n",
    "coordinates['Республика Татарстан'               ] = [320,600]\n",
    "coordinates['Удмуртская Республика'              ] = [360,580]\n",
    "coordinates['Чувашская Республика'               ] = [290,575]\n",
    "coordinates['Пермский край'                      ] = [410,560]\n",
    "coordinates['Кировская область'                  ] = [350,540]\n",
    "coordinates['Нижегородская область'              ] = [270,550]\n",
    "coordinates['Оренбургская область'               ] = [320,660]\n",
    "coordinates['Пензенская область'                 ] = [250,600]\n",
    "coordinates['Самарская область'                  ] = [300,630]\n",
    "coordinates['Саратовская область'                ] = [250,640]\n",
    "coordinates['Ульяновская область'                ] = [275,600]\n",
    "coordinates['Курганская область'                 ] = [460,660]\n",
    "coordinates['Свердловская область'               ] = [460,600]\n",
    "coordinates['Ханты-Мансийский АО'                ] = [550,550]\n",
    "coordinates['Ямало-Hенецкий АО'                  ] = [630,510]\n",
    "coordinates['Тюменская область без АО'           ] = [510,640]\n",
    "coordinates['Челябинская область'                ] = [420,660]\n",
    "coordinates['Республика Алтай'                   ] = [700,800]\n",
    "coordinates['Республика Бурятия'                 ] = [980,720]\n",
    "coordinates['Республика Тыва'                    ] = [810,790]\n",
    "coordinates['Республика Хакасия'                 ] = [750,755]\n",
    "coordinates['Алтайский край'                     ] = [650,770]\n",
    "coordinates['Забайкальский край'                 ] = [1060,710]\n",
    "coordinates['Красноярский край'                  ] = [790,520]\n",
    "coordinates['Иркутская область'                  ] = [900,670]\n",
    "coordinates['Кемеровская область'                ] = [710,725]\n",
    "coordinates['Новосибирская область'              ] = [620,710]\n",
    "coordinates['Омская область'                     ] = [560,680]\n",
    "coordinates['Томская область'                    ] = [660,650]\n",
    "coordinates['Якутия'                             ] = [1030,430]\n",
    "coordinates['Камчатский край'                    ] = [1390,360]\n",
    "coordinates['Приморский край'                    ] = [1340,730]\n",
    "coordinates['Хабаровский край'                   ] = [1200,510]\n",
    "coordinates['Амурская область'                   ] = [1160,630]\n",
    "coordinates['Магаданская область'                ] = [1250,320]\n",
    "coordinates['Сахалинская область'                ] = [1355,575]\n",
    "coordinates['Еврейская АО'                       ] = [1265,690]\n",
    "coordinates['Чукотский АО'                       ] = [1260,150]\n",
    "coordinates['Республика Крым'                    ] = [35,620]\n",
    "coordinates['Севастополь'                        ] = [20,625]"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 6,
   "metadata": {},
   "outputs": [],
   "source": [
    "regionsToEnglish = {'Москва':'Moscow', \n",
    "                    'Московская область':'Moscow Oblast',\n",
    "                    'Санкт-Петербург':'St. Petersburg',       \n",
    "                    'Республика Татарстан':'Tatarstan',\n",
    "                    'Республика Башкортостан':'Bashkortostan',\n",
    "                    'Краснодарский край':'Krasnodar Krai',\n",
    "                    'Свердловская область':'Sverdlovsk Oblast',\n",
    "                    'Самарская область':'Samara Oblast',\n",
    "                    'Республика Дагестан':'Dagestan',\n",
    "                    'Челябинская область':'Chelyabinsk Oblast',\n",
    "                    'Нижегородская область':'Nizhny Novgorod Oblast',\n",
    "                    'Ростовская область':'Rostov Oblast',\n",
    "                    'Волгоградская область':'Volgograd Oblast',\n",
    "                    'Ленинградская область':'Leningrad Oblast',\n",
    "                    'Пензенская область':'Penza Oblast',\n",
    "                    'Оренбургская область':'Orenburg Oblast',\n",
    "                    'Новосибирская область':'Novosibirsk Oblast',\n",
    "                    'Пермский край':'Perm Krai',\n",
    "                   }\n",
    "\n",
    "regionsToEnglishShort = {\n",
    "                    'Москва':'Moscow', \n",
    "                    'Московская область':'Moscow Oblast',\n",
    "                    'Санкт-Петербург':'St. Petersburg',       \n",
    "                    'Республика Татарстан':'Tatarstan',\n",
    "                    'Республика Башкортостан':'Bashkortostan',\n",
    "                    'Краснодарский край':'Krasnodar Krai',\n",
    "                    'Свердловская область':'Sverdlovsk O.',\n",
    "                    'Самарская область':'Samara O.',\n",
    "                    'Республика Дагестан':'Dagestan',\n",
    "                    'Челябинская область':'Chelyabinsk O.',\n",
    "                    'Нижегородская область':'N. Novgorod O.',\n",
    "                    'Ростовская область':'Rostov O.',\n",
    "                    'Волгоградская область':'Volgograd O.',\n",
    "                    'Ленинградская область':'Leningrad O.',\n",
    "                    'Пензенская область':'Penza O.',\n",
    "                    'Оренбургская область':'Orenburg O.',\n",
    "                    'Новосибирская область':'Novosibirsk O.',\n",
    "                    'Пермский край':'Perm Krai',\n",
    "                        }"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Load data\n",
    "\n",
    "Data sources:\n",
    "\n",
    "* https://www.fedstat.ru/indicator/33556\n",
    "\n",
    "* https://www.fedstat.ru/indicator/31556\n",
    "\n",
    "* https://rosstat.gov.ru/storage/mediabank/ldMWepjj/edn11-2020.htm\n",
    "\n",
    "* https://docs.google.com/spreadsheets/d/1nCxvNcuZGNswsf97mliLikmUIsOrOGZtL-VI7xfN-Zw (scraped by Sergey Shpilkin)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 7,
   "metadata": {},
   "outputs": [],
   "source": [
    "table = pd.read_excel('russian-data/data.xls')\n",
    "\n",
    "regions = table.values[3:,0]\n",
    "regions = np.array([r.strip(' *') for r in regions])\n",
    "\n",
    "deaths = table.values[3:,1:].astype(float)\n",
    "\n",
    "# fill in fields that are empty for some years for unclear reasons\n",
    "deaths[regions=='Архангельская область (кроме Ненецкого автономного округа)',:] = \\\n",
    "    deaths[regions=='Архангельская область',:] - \\\n",
    "    deaths[regions=='Ненецкий автономный округ (Архангельская область)',:]\n",
    "\n",
    "deaths[regions=='Тюменская область (кроме Ханты-Мансийского автономного округа-Югры и Ямало-Ненецкого автономного округа)',:] = \\\n",
    "    deaths[regions=='Тюменская область',:] - \\\n",
    "    deaths[regions=='Ханты-Мансийский автономный округ - Югра (Тюменская область)',:] - \\\n",
    "    deaths[regions=='Ямало-Ненецкий автономный округ (Тюменская область)',:]\n",
    "\n",
    "kickout = np.isnan(deaths[:,-1])\n",
    "kickout |= np.array(['федеральный округ' in r for r in regions])\n",
    "kickout |= np.isin(regions, ['Архангельская область', 'Тюменская область'])\n",
    "\n",
    "regions = regions[~kickout]\n",
    "deaths = deaths[~kickout]\n",
    "\n",
    "regions = rename(regions)\n",
    "\n",
    "assert(all(deaths[0] == np.nansum(deaths[1:],axis=0)))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 8,
   "metadata": {},
   "outputs": [],
   "source": [
    "deaths_year = np.zeros((regions.size, 15, 12)) * np.nan\n",
    "for y in range(14):\n",
    "    deaths_year[:,y,:] = deaths[:, y*12:(y+1)*12]\n",
    "deaths_year[:,14,:deaths.shape[1]-14*12] = deaths[:, 14*12:]\n",
    "\n",
    "deaths = deaths_year"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 9,
   "metadata": {},
   "outputs": [],
   "source": [
    "# Append last months\n",
    "\n",
    "d = pd.read_excel('russian-data/edn10_2020.xlsx', sheet_name='t1_1')\n",
    "r = d.values[:,0][4:]\n",
    "d = d.values[:,5][4:]\n",
    "r = np.array([a.strip() for a in r])\n",
    "r = rename(r)\n",
    "\n",
    "for i,reg in enumerate(regions):\n",
    "    deaths[i,-1,9] = d[r==reg][0]\n",
    "    \n",
    "d = pd.read_excel('russian-data/edn11_2020.xlsx', sheet_name='t1_1')\n",
    "r = d.values[:,0][4:]\n",
    "d = d.values[:,5][4:]\n",
    "r = np.array([a.strip() for a in r])\n",
    "r = rename(r)\n",
    "\n",
    "for i,reg in enumerate(regions):\n",
    "    deaths[i,-1,10] = d[r==reg][0]"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 10,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[164075. 143179. 152740. 150873. 172914. 162758. 181479. 157181. 170717.\n",
      " 205456. 219872.     nan]\n"
     ]
    }
   ],
   "source": [
    "print(deaths[0,-1])"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 11,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[[    0.     0.     0.     0.]\n",
      " [    0.     0.     0.     0.]\n",
      " [    0.     0.     0.     0.]\n",
      " [ 2700.   796.   870.  1284.]\n",
      " [11852.  3354.  3218.  6914.]\n",
      " [11650.  2984.  2968.  7068.]\n",
      " [10126.  2042.  2474.  6100.]\n",
      " [ 6872.  1164.  2368.  4942.]\n",
      " [ 9158.  1718.  2856.  6626.]\n",
      " [26154.  4052.  3588. 14872.]\n",
      " [39252.  7968.  4356. 19714.]\n",
      " [    0.     0.     0.     0.]] \n",
      "\n",
      "[58882. 12039. 11349. 33760.] \n",
      "\n",
      "116030.0\n"
     ]
    }
   ],
   "source": [
    "covid_deaths = np.zeros((regions.size, 12, 4))\n",
    "\n",
    "files = ['edn04_2020.xlsx', 'edn05_2020.xlsx', 'edn06_2020.xlsx',\n",
    "         'edn07_2020.xlsx', 'edn08_2020.xlsx', 'edn09_2020.xlsx',\n",
    "         'edn10_2020.xlsx', 'edn11_2020.xlsx']\n",
    "sheets = ['5.1', '5_1', '5_1', 't5_1', '5.1', '5.1', '5.1', 't5_1']\n",
    "fromrow = [6,5,6,6,6,6,5,5]\n",
    "\n",
    "for month, (file, sheet, row) in enumerate(zip(files, sheets, fromrow)):\n",
    "    d = pd.read_excel('russian-data/'+file, sheet_name=sheet)\n",
    "    r = d.values[:,0][row:-1]\n",
    "    d = d.values[:,[2,3,5,6]][row:-1,:]\n",
    "    r = np.array([a.strip() for a in r])\n",
    "    r = rename(r)\n",
    "    for i,reg in enumerate(regions):\n",
    "        covid_deaths[i,3+month,:] = d[r==reg][0]\n",
    "\n",
    "covid_deaths[np.isnan(covid_deaths)] = 0\n",
    "    \n",
    "assert(np.all(covid_deaths[0] == np.sum(covid_deaths[1:,:,:], axis=0)))\n",
    "\n",
    "print(np.sum(covid_deaths,axis=0), '\\n')\n",
    "print(np.sum(covid_deaths[0],axis=0), '\\n')\n",
    "print(np.sum(covid_deaths[0]))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 12,
   "metadata": {},
   "outputs": [],
   "source": [
    "table = pd.read_excel('russian-data/data_population.xls')\n",
    "\n",
    "r = table.values[2:,0]\n",
    "r = np.array([a.strip(' *') for a in r])\n",
    "r = rename(r)\n",
    "pop = table.values[2:,2].astype(float)\n",
    "\n",
    "population = np.zeros(regions.size)\n",
    "for i,reg in enumerate(regions):\n",
    "    population[i] = pop[r==reg][0]"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 13,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "40464.0\n",
      "[   nan    nan    nan  1145.  3686.  4681.  4522.  3241.  3592.  7344.\n",
      " 12229. 17091.]\n"
     ]
    }
   ],
   "source": [
    "table = pd.read_csv('russian-data/StopCoronaRF - died.csv')\n",
    "off = table.values[:,table.columns=='01.12.2020'].flatten()\n",
    "r = table.values[:,0]\n",
    "r = rename(r)\n",
    "\n",
    "official_deaths = np.zeros(regions.size)\n",
    "official_deaths_monthly = np.zeros((regions.size, 12))\n",
    "for i,reg in enumerate(regions):\n",
    "    if reg != 'Российская Федерация':\n",
    "        official_deaths[i] = off[r==reg][0]\n",
    "        for m in range(12):\n",
    "            if m==11:\n",
    "                nextm = 1\n",
    "                nexty = 2021\n",
    "            else:\n",
    "                nextm = m+2\n",
    "                nexty = 2020\n",
    "            if f'01.{nextm:02d}.{nexty}' in table.columns and f'01.{m+1:02d}.2020' in table.columns:\n",
    "                official_deaths_monthly[i,m] = \\\n",
    "                    table.values[:,table.columns==f'01.{nextm:02d}.{nexty}'].flatten()[r==reg][0] - \\\n",
    "                    table.values[:,table.columns==f'01.{m+1:02d}.2020'].flatten()[r==reg][0]\n",
    "            else:\n",
    "                official_deaths_monthly[i,m] = np.nan\n",
    "official_deaths[regions=='Российская Федерация'] = np.sum(official_deaths)\n",
    "official_deaths_monthly[regions=='Российская Федерация',:] = np.sum(official_deaths_monthly,axis=0)\n",
    "\n",
    "print(official_deaths[0])\n",
    "print(official_deaths_monthly[0])"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Compute excess deaths"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 14,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "242598.0\n",
      "230763.33333333334\n",
      "212433.4\n"
     ]
    }
   ],
   "source": [
    "# Compared to 2019\n",
    "deaths_model = deaths[:,-2,:]\n",
    "excess = deaths[:,-1,:] - deaths_model\n",
    "total = np.nansum(excess[:,3:], axis=1)\n",
    "print(total[0])\n",
    "\n",
    "# Compared to the 2017-19 avearge\n",
    "deaths_model = np.mean(deaths[:,-4:-1,:], axis=1)\n",
    "excess = deaths[:,-1,:] - deaths_model\n",
    "total = np.nansum(excess[:,3:], axis=1)\n",
    "print(total[0])\n",
    "\n",
    "# Compared to the 2015-19 average\n",
    "deaths_model = np.mean(deaths[:,-6:-1,:], axis=1)\n",
    "excess = deaths[:,-1,:] - deaths_model\n",
    "total = np.nansum(excess[:,3:], axis=1)\n",
    "print(total[0])"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 15,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[  511.  1536. -3902.  4771. 21070. 18950. 34728. 14410. 33590. 56120.\n",
      " 80461.    nan]\n",
      "264100\n",
      "0% 1% -2% 3% 14% 13% 24% 10% 24% 38% 58% nan%\n",
      "0% 0% -0% 0% 1% 1% 2% 1% 2% 3% 5% nan%\n",
      "nan nan nan 4.2 5.7 4.0 7.7 4.4 9.4 7.6 6.6 nan\n",
      "266709\n",
      "1799\n",
      "22.8%\n",
      "15.0%\n",
      "262245\n"
     ]
    }
   ],
   "source": [
    "from scipy import stats\n",
    "\n",
    "yearly = np.mean(deaths,axis=2)\n",
    "for r in range(yearly.shape[0]):\n",
    "    b = stats.linregress(np.arange(2015, 2020), yearly[r,-6:-1])\n",
    "    yearly[r,-1] = b.intercept + b.slope * 2020\n",
    "    \n",
    "monthly = np.nanmedian(deaths[:,:-1,:] - yearly[:,:-1,np.newaxis], axis=1)\n",
    "\n",
    "deaths_model = monthly + yearly[:,-1][:,np.newaxis]\n",
    "\n",
    "excess = deaths[:,-1,:] - deaths_model\n",
    "total = np.nansum(excess[:,3:], axis=1)\n",
    "\n",
    "ratio = excess / deaths_model\n",
    "maxratio = np.nanmax(ratio,axis=1)\n",
    "fullratio = total / np.sum(deaths_model[:,~np.isnan(ratio[0])][:,3:], axis=1)\n",
    "yearratio = total / np.sum(deaths_model, axis=1)\n",
    "\n",
    "excess_permln = excess / population[:,np.newaxis] * 1e+6\n",
    "total_permln  = total / population * 1e+6\n",
    "\n",
    "print(np.round(excess[0,:]))\n",
    "print(f'{total[0]:.0f}')\n",
    "print(' '.join([f'{r*100:.0f}%' for r in ratio[0]]))\n",
    "print(' '.join([f'{r*100:.0f}%' for r in excess[0]/np.sum(deaths_model[0])]))\n",
    "print(' '.join([f'{r:.1f}' for r in excess[0]/official_deaths_monthly[0]]))\n",
    "print(f'{np.sum(total[1:]):.0f}')\n",
    "print(f'{total_permln[0]:.0f}')\n",
    "print(f'{fullratio[0]*100:.1f}%')\n",
    "print(f'{yearratio[0]*100:.1f}%')\n",
    "\n",
    "print(f'{np.nansum(excess[0,:]):.0f}')"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 16,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "147164.28328810912\n",
      "2048.718950118371\n",
      "16389.75160094697\n",
      "[231975.77852881 296223.60480452]\n"
     ]
    }
   ],
   "source": [
    "r=0\n",
    "\n",
    "X = np.concatenate((np.ones((5,1)), np.arange(2015,2020)[:,np.newaxis]), axis=1)\n",
    "y = yearly[r,-6:-1][:,np.newaxis]\n",
    "b = np.linalg.inv(X.T @ X) @ X.T @ y\n",
    "yhat = X @ b\n",
    "sigma2 = np.sum((y-yhat)**2) / (5-2)\n",
    "x = np.array([[1], [2020]])\n",
    "yhat = b.T @ x\n",
    "print(yhat[0][0])\n",
    "\n",
    "predictive_var = sigma2 * (1 + x.T @ np.linalg.inv(X.T @ X) @ x)\n",
    "predictive_std = np.sqrt(predictive_var)[0][0]\n",
    "\n",
    "print(predictive_std)\n",
    "\n",
    "a = 3\n",
    "b = np.where(np.isnan(deaths[r,-1,:]))[0][0]\n",
    "print(predictive_std*(b-a))\n",
    "print(predictive_std*(b-a)*np.array([-1.96,1.96]) + total[0])"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Comparison betwen countries\n",
    "\n",
    "https://www.nytimes.com/interactive/2020/04/21/world/coronavirus-missing-deaths.html  \n",
    "https://www.economist.com/graphic-detail/2020/07/15/tracking-covid-19-excess-deaths-across-countries  \n",
    "https://www.ft.com/content/a2901ce8-5eb7-4633-b89c-cbdf5b386938\n",
    "\n",
    "Iran:   \n",
    "https://www.medrxiv.org/content/10.1101/2020.12.07.20245621v1.full\n",
    "\n",
    "Daily data: https://en.wikipedia.org/wiki/COVID-19_pandemic_by_country_and_territory#Total_cases_and_deaths  \n",
    "Mortality rate: https://en.wikipedia.org/wiki/List_of_sovereign_states_and_dependent_territories_by_mortality_rate"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 17,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<style  type=\"text/css\" >\n",
       "    #T_df049bd6_5675_11eb_bc02_7b3d2a8951ec th {\n",
       "          max-width: 180px;\n",
       "    }</style><table id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951ec\" ><caption>Excess mortality estimates</caption><thead>    <tr>        <th class=\"blank level0\" ></th>        <th class=\"col_heading level0 col0\" >Country</th>        <th class=\"col_heading level0 col1\" >Covid19 deaths, now</th>        <th class=\"col_heading level0 col2\" >Source</th>        <th class=\"col_heading level0 col6\" >Underreporting (excess deaths / covid19 deaths)</th>        <th class=\"col_heading level0 col9\" >Estimated deaths</th>        <th class=\"col_heading level0 col10\" >Estimated deaths per 100,000</th>    </tr></thead><tbody>\n",
       "                <tr>\n",
       "                        <th id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951eclevel0_row0\" class=\"row_heading level0 row0\" >1</th>\n",
       "                        <td id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951ecrow0_col0\" class=\"data row0 col0\" >United States 🇺🇸</td>\n",
       "                        <td id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951ecrow0_col1\" class=\"data row0 col1\" >349,397</td>\n",
       "                        <td id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951ecrow0_col2\" class=\"data row0 col2\" >Ec</td>\n",
       "                                                <td id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951ecrow0_col6\" class=\"data row0 col6\" >1.3</td>\n",
       "                                        <td id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951ecrow0_col9\" class=\"data row0 col9\" >451,000</td>\n",
       "                        <td id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951ecrow0_col10\" class=\"data row0 col10\" >137</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                        <th id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951eclevel0_row1\" class=\"row_heading level0 row1\" >2</th>\n",
       "                        <td id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951ecrow1_col0\" class=\"data row1 col0\" >Brazil 🇧🇷</td>\n",
       "                        <td id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951ecrow1_col1\" class=\"data row1 col1\" >194,976</td>\n",
       "                        <td id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951ecrow1_col2\" class=\"data row1 col2\" >Ec</td>\n",
       "                                                <td id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951ecrow1_col6\" class=\"data row1 col6\" >1.1</td>\n",
       "                                        <td id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951ecrow1_col9\" class=\"data row1 col9\" >213,000</td>\n",
       "                        <td id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951ecrow1_col10\" class=\"data row1 col10\" >101</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                        <th id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951eclevel0_row2\" class=\"row_heading level0 row2\" >3</th>\n",
       "                        <td id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951ecrow2_col0\" class=\"data row2 col0\" >India 🇮🇳</td>\n",
       "                        <td id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951ecrow2_col1\" class=\"data row2 col1\" >148,994</td>\n",
       "                        <td id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951ecrow2_col2\" class=\"data row2 col2\" ></td>\n",
       "                                                <td id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951ecrow2_col6\" class=\"data row2 col6\" ></td>\n",
       "                                        <td id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951ecrow2_col9\" class=\"data row2 col9\" ></td>\n",
       "                        <td id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951ecrow2_col10\" class=\"data row2 col10\" ></td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                        <th id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951eclevel0_row3\" class=\"row_heading level0 row3\" >4</th>\n",
       "                        <td id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951ecrow3_col0\" class=\"data row3 col0\" >Mexico 🇲🇽</td>\n",
       "                        <td id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951ecrow3_col1\" class=\"data row3 col1\" >125,807</td>\n",
       "                        <td id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951ecrow3_col2\" class=\"data row3 col2\" >Ec</td>\n",
       "                                                <td id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951ecrow3_col6\" class=\"data row3 col6\" >2.5</td>\n",
       "                                        <td id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951ecrow3_col9\" class=\"data row3 col9\" >313,000</td>\n",
       "                        <td id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951ecrow3_col10\" class=\"data row3 col10\" >248</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                        <th id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951eclevel0_row4\" class=\"row_heading level0 row4\" >5</th>\n",
       "                        <td id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951ecrow4_col0\" class=\"data row4 col0\" >Italy 🇮🇹</td>\n",
       "                        <td id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951ecrow4_col1\" class=\"data row4 col1\" >74,159</td>\n",
       "                        <td id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951ecrow4_col2\" class=\"data row4 col2\" >Ec</td>\n",
       "                                                <td id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951ecrow4_col6\" class=\"data row4 col6\" >1.7</td>\n",
       "                                        <td id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951ecrow4_col9\" class=\"data row4 col9\" >128,000</td>\n",
       "                        <td id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951ecrow4_col10\" class=\"data row4 col10\" >211</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                        <th id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951eclevel0_row5\" class=\"row_heading level0 row5\" >6</th>\n",
       "                        <td id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951ecrow5_col0\" class=\"data row5 col0\" >United Kingdom 🇬🇧</td>\n",
       "                        <td id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951ecrow5_col1\" class=\"data row5 col1\" >74,125</td>\n",
       "                        <td id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951ecrow5_col2\" class=\"data row5 col2\" >Ec</td>\n",
       "                                                <td id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951ecrow5_col6\" class=\"data row5 col6\" >1.5</td>\n",
       "                                        <td id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951ecrow5_col9\" class=\"data row5 col9\" >114,000</td>\n",
       "                        <td id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951ecrow5_col10\" class=\"data row5 col10\" >171</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                        <th id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951eclevel0_row6\" class=\"row_heading level0 row6\" >7</th>\n",
       "                        <td id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951ecrow6_col0\" class=\"data row6 col0\" >France 🇫🇷</td>\n",
       "                        <td id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951ecrow6_col1\" class=\"data row6 col1\" >64,632</td>\n",
       "                        <td id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951ecrow6_col2\" class=\"data row6 col2\" >Ec</td>\n",
       "                                                <td id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951ecrow6_col6\" class=\"data row6 col6\" >1.1</td>\n",
       "                                        <td id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951ecrow6_col9\" class=\"data row6 col9\" >68,000</td>\n",
       "                        <td id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951ecrow6_col10\" class=\"data row6 col10\" >102</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                        <th id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951eclevel0_row7\" class=\"row_heading level0 row7\" >8</th>\n",
       "                        <td id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951ecrow7_col0\" class=\"data row7 col0\" >Russia 🇷🇺</td>\n",
       "                        <td id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951ecrow7_col1\" class=\"data row7 col1\" >57,555</td>\n",
       "                        <td id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951ecrow7_col2\" class=\"data row7 col2\" >DK</td>\n",
       "                                                <td id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951ecrow7_col6\" class=\"data row7 col6\" >6.5</td>\n",
       "                                        <td id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951ecrow7_col9\" class=\"data row7 col9\" >376,000</td>\n",
       "                        <td id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951ecrow7_col10\" class=\"data row7 col10\" >256</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                        <th id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951eclevel0_row8\" class=\"row_heading level0 row8\" >9</th>\n",
       "                        <td id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951ecrow8_col0\" class=\"data row8 col0\" >Iran 🇮🇷</td>\n",
       "                        <td id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951ecrow8_col1\" class=\"data row8 col1\" >55,337</td>\n",
       "                        <td id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951ecrow8_col2\" class=\"data row8 col2\" >Ghafari et al.</td>\n",
       "                                                <td id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951ecrow8_col6\" class=\"data row8 col6\" >2.4</td>\n",
       "                                        <td id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951ecrow8_col9\" class=\"data row8 col9\" >134,000</td>\n",
       "                        <td id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951ecrow8_col10\" class=\"data row8 col10\" >164</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                        <th id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951eclevel0_row9\" class=\"row_heading level0 row9\" >10</th>\n",
       "                        <td id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951ecrow9_col0\" class=\"data row9 col0\" >Spain 🇪🇸</td>\n",
       "                        <td id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951ecrow9_col1\" class=\"data row9 col1\" >50,837</td>\n",
       "                        <td id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951ecrow9_col2\" class=\"data row9 col2\" >Ec</td>\n",
       "                                                <td id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951ecrow9_col6\" class=\"data row9 col6\" >1.4</td>\n",
       "                                        <td id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951ecrow9_col9\" class=\"data row9 col9\" >71,000</td>\n",
       "                        <td id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951ecrow9_col10\" class=\"data row9 col10\" >152</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                        <th id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951eclevel0_row10\" class=\"row_heading level0 row10\" >11</th>\n",
       "                        <td id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951ecrow10_col0\" class=\"data row10 col0\" >Argentina 🇦🇷</td>\n",
       "                        <td id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951ecrow10_col1\" class=\"data row10 col1\" >43,245</td>\n",
       "                        <td id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951ecrow10_col2\" class=\"data row10 col2\" ></td>\n",
       "                                                <td id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951ecrow10_col6\" class=\"data row10 col6\" ></td>\n",
       "                                        <td id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951ecrow10_col9\" class=\"data row10 col9\" ></td>\n",
       "                        <td id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951ecrow10_col10\" class=\"data row10 col10\" ></td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                        <th id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951eclevel0_row11\" class=\"row_heading level0 row11\" >12</th>\n",
       "                        <td id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951ecrow11_col0\" class=\"data row11 col0\" >Colombia 🇨🇴</td>\n",
       "                        <td id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951ecrow11_col1\" class=\"data row11 col1\" >43,213</td>\n",
       "                        <td id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951ecrow11_col2\" class=\"data row11 col2\" >NYT</td>\n",
       "                                                <td id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951ecrow11_col6\" class=\"data row11 col6\" >0.9</td>\n",
       "                                        <td id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951ecrow11_col9\" class=\"data row11 col9\" >43,000</td>\n",
       "                        <td id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951ecrow11_col10\" class=\"data row11 col10\" >87</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                        <th id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951eclevel0_row12\" class=\"row_heading level0 row12\" >13</th>\n",
       "                        <td id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951ecrow12_col0\" class=\"data row12 col0\" >Peru 🇵🇪</td>\n",
       "                        <td id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951ecrow12_col1\" class=\"data row12 col1\" >37,680</td>\n",
       "                        <td id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951ecrow12_col2\" class=\"data row12 col2\" >Ec</td>\n",
       "                                                <td id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951ecrow12_col6\" class=\"data row12 col6\" >2.3</td>\n",
       "                                        <td id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951ecrow12_col9\" class=\"data row12 col9\" >86,000</td>\n",
       "                        <td id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951ecrow12_col10\" class=\"data row12 col10\" >269</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                        <th id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951eclevel0_row13\" class=\"row_heading level0 row13\" >14</th>\n",
       "                        <td id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951ecrow13_col0\" class=\"data row13 col0\" >Germany 🇩🇪</td>\n",
       "                        <td id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951ecrow13_col1\" class=\"data row13 col1\" >34,222</td>\n",
       "                        <td id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951ecrow13_col2\" class=\"data row13 col2\" >Ec</td>\n",
       "                                                <td id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951ecrow13_col6\" class=\"data row13 col6\" >1.2</td>\n",
       "                                        <td id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951ecrow13_col9\" class=\"data row13 col9\" >40,000</td>\n",
       "                        <td id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951ecrow13_col10\" class=\"data row13 col10\" >48</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                        <th id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951eclevel0_row14\" class=\"row_heading level0 row14\" >15</th>\n",
       "                        <td id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951ecrow14_col0\" class=\"data row14 col0\" >Poland 🇵🇱</td>\n",
       "                        <td id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951ecrow14_col1\" class=\"data row14 col1\" >28,956</td>\n",
       "                        <td id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951ecrow14_col2\" class=\"data row14 col2\" >FT</td>\n",
       "                                                <td id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951ecrow14_col6\" class=\"data row14 col6\" >2.9</td>\n",
       "                                        <td id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951ecrow14_col9\" class=\"data row14 col9\" >83,000</td>\n",
       "                        <td id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951ecrow14_col10\" class=\"data row14 col10\" >218</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                        <th id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951eclevel0_row15\" class=\"row_heading level0 row15\" >16</th>\n",
       "                        <td id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951ecrow15_col0\" class=\"data row15 col0\" >South Africa 🇿🇦</td>\n",
       "                        <td id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951ecrow15_col1\" class=\"data row15 col1\" >28,469</td>\n",
       "                        <td id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951ecrow15_col2\" class=\"data row15 col2\" >Ec</td>\n",
       "                                                <td id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951ecrow15_col6\" class=\"data row15 col6\" >2.1</td>\n",
       "                                        <td id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951ecrow15_col9\" class=\"data row15 col9\" >60,000</td>\n",
       "                        <td id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951ecrow15_col10\" class=\"data row15 col10\" >104</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                        <th id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951eclevel0_row16\" class=\"row_heading level0 row16\" >17</th>\n",
       "                        <td id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951ecrow16_col0\" class=\"data row16 col0\" >Indonesia 🇮🇩</td>\n",
       "                        <td id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951ecrow16_col1\" class=\"data row16 col1\" >22,329</td>\n",
       "                        <td id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951ecrow16_col2\" class=\"data row16 col2\" ></td>\n",
       "                                                <td id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951ecrow16_col6\" class=\"data row16 col6\" ></td>\n",
       "                                        <td id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951ecrow16_col9\" class=\"data row16 col9\" ></td>\n",
       "                        <td id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951ecrow16_col10\" class=\"data row16 col10\" ></td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                        <th id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951eclevel0_row17\" class=\"row_heading level0 row17\" >18</th>\n",
       "                        <td id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951ecrow17_col0\" class=\"data row17 col0\" >Turkey 🇹🇷</td>\n",
       "                        <td id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951ecrow17_col1\" class=\"data row17 col1\" >20,881</td>\n",
       "                        <td id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951ecrow17_col2\" class=\"data row17 col2\" ></td>\n",
       "                                                <td id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951ecrow17_col6\" class=\"data row17 col6\" ></td>\n",
       "                                        <td id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951ecrow17_col9\" class=\"data row17 col9\" ></td>\n",
       "                        <td id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951ecrow17_col10\" class=\"data row17 col10\" ></td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                        <th id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951eclevel0_row18\" class=\"row_heading level0 row18\" >19</th>\n",
       "                        <td id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951ecrow18_col0\" class=\"data row18 col0\" >Belgium 🇧🇪</td>\n",
       "                        <td id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951ecrow18_col1\" class=\"data row18 col1\" >19,528</td>\n",
       "                        <td id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951ecrow18_col2\" class=\"data row18 col2\" >Ec</td>\n",
       "                                                <td id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951ecrow18_col6\" class=\"data row18 col6\" >1.1</td>\n",
       "                                        <td id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951ecrow18_col9\" class=\"data row18 col9\" >21,000</td>\n",
       "                        <td id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951ecrow18_col10\" class=\"data row18 col10\" >184</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                        <th id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951eclevel0_row19\" class=\"row_heading level0 row19\" >20</th>\n",
       "                        <td id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951ecrow19_col0\" class=\"data row19 col0\" >Ukraine 🇺🇦</td>\n",
       "                        <td id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951ecrow19_col1\" class=\"data row19 col1\" >18,680</td>\n",
       "                        <td id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951ecrow19_col2\" class=\"data row19 col2\" >DK</td>\n",
       "                                                <td id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951ecrow19_col6\" class=\"data row19 col6\" >1.8</td>\n",
       "                                        <td id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951ecrow19_col9\" class=\"data row19 col9\" >33,000</td>\n",
       "                        <td id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951ecrow19_col10\" class=\"data row19 col10\" >78</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                        <th id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951eclevel0_row20\" class=\"row_heading level0 row20\" >21</th>\n",
       "                        <td id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951ecrow20_col0\" class=\"data row20 col0\" >Chile 🇨🇱</td>\n",
       "                        <td id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951ecrow20_col1\" class=\"data row20 col1\" >16,608</td>\n",
       "                        <td id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951ecrow20_col2\" class=\"data row20 col2\" >Ec</td>\n",
       "                                                <td id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951ecrow20_col6\" class=\"data row20 col6\" >0.9</td>\n",
       "                                        <td id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951ecrow20_col9\" class=\"data row20 col9\" >17,000</td>\n",
       "                        <td id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951ecrow20_col10\" class=\"data row20 col10\" >89</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                        <th id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951eclevel0_row21\" class=\"row_heading level0 row21\" >22</th>\n",
       "                        <td id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951ecrow21_col0\" class=\"data row21 col0\" >Romania 🇷🇴</td>\n",
       "                        <td id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951ecrow21_col1\" class=\"data row21 col1\" >15,841</td>\n",
       "                        <td id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951ecrow21_col2\" class=\"data row21 col2\" ></td>\n",
       "                                                <td id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951ecrow21_col6\" class=\"data row21 col6\" ></td>\n",
       "                                        <td id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951ecrow21_col9\" class=\"data row21 col9\" ></td>\n",
       "                        <td id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951ecrow21_col10\" class=\"data row21 col10\" ></td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                        <th id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951eclevel0_row22\" class=\"row_heading level0 row22\" >23</th>\n",
       "                        <td id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951ecrow22_col0\" class=\"data row22 col0\" >Canada 🇨🇦</td>\n",
       "                        <td id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951ecrow22_col1\" class=\"data row22 col1\" >15,606</td>\n",
       "                        <td id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951ecrow22_col2\" class=\"data row22 col2\" ></td>\n",
       "                                                <td id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951ecrow22_col6\" class=\"data row22 col6\" ></td>\n",
       "                                        <td id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951ecrow22_col9\" class=\"data row22 col9\" ></td>\n",
       "                        <td id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951ecrow22_col10\" class=\"data row22 col10\" ></td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                        <th id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951eclevel0_row23\" class=\"row_heading level0 row23\" >24</th>\n",
       "                        <td id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951ecrow23_col0\" class=\"data row23 col0\" >Ecuador 🇪🇨</td>\n",
       "                        <td id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951ecrow23_col1\" class=\"data row23 col1\" >14,032</td>\n",
       "                        <td id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951ecrow23_col2\" class=\"data row23 col2\" >Ec</td>\n",
       "                                                <td id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951ecrow23_col6\" class=\"data row23 col6\" >3.0</td>\n",
       "                                        <td id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951ecrow23_col9\" class=\"data row23 col9\" >42,000</td>\n",
       "                        <td id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951ecrow23_col10\" class=\"data row23 col10\" >246</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                        <th id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951eclevel0_row24\" class=\"row_heading level0 row24\" >25</th>\n",
       "                        <td id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951ecrow24_col0\" class=\"data row24 col0\" >Iraq 🇮🇶</td>\n",
       "                        <td id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951ecrow24_col1\" class=\"data row24 col1\" >12,824</td>\n",
       "                        <td id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951ecrow24_col2\" class=\"data row24 col2\" ></td>\n",
       "                                                <td id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951ecrow24_col6\" class=\"data row24 col6\" ></td>\n",
       "                                        <td id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951ecrow24_col9\" class=\"data row24 col9\" ></td>\n",
       "                        <td id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951ecrow24_col10\" class=\"data row24 col10\" ></td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                        <th id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951eclevel0_row25\" class=\"row_heading level0 row25\" >26</th>\n",
       "                        <td id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951ecrow25_col0\" class=\"data row25 col0\" >Czech Republic 🇨🇿</td>\n",
       "                        <td id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951ecrow25_col1\" class=\"data row25 col1\" >11,711</td>\n",
       "                        <td id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951ecrow25_col2\" class=\"data row25 col2\" ></td>\n",
       "                                                <td id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951ecrow25_col6\" class=\"data row25 col6\" ></td>\n",
       "                                        <td id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951ecrow25_col9\" class=\"data row25 col9\" ></td>\n",
       "                        <td id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951ecrow25_col10\" class=\"data row25 col10\" ></td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                        <th id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951eclevel0_row26\" class=\"row_heading level0 row26\" >27</th>\n",
       "                        <td id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951ecrow26_col0\" class=\"data row26 col0\" >Netherlands 🇳🇱</td>\n",
       "                        <td id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951ecrow26_col1\" class=\"data row26 col1\" >11,432</td>\n",
       "                        <td id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951ecrow26_col2\" class=\"data row26 col2\" >Ec</td>\n",
       "                                                <td id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951ecrow26_col6\" class=\"data row26 col6\" >1.5</td>\n",
       "                                        <td id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951ecrow26_col9\" class=\"data row26 col9\" >17,000</td>\n",
       "                        <td id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951ecrow26_col10\" class=\"data row26 col10\" >96</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                        <th id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951eclevel0_row27\" class=\"row_heading level0 row27\" >28</th>\n",
       "                        <td id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951ecrow27_col0\" class=\"data row27 col0\" >Pakistan 🇵🇰</td>\n",
       "                        <td id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951ecrow27_col1\" class=\"data row27 col1\" >10,176</td>\n",
       "                        <td id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951ecrow27_col2\" class=\"data row27 col2\" ></td>\n",
       "                                                <td id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951ecrow27_col6\" class=\"data row27 col6\" ></td>\n",
       "                                        <td id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951ecrow27_col9\" class=\"data row27 col9\" ></td>\n",
       "                        <td id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951ecrow27_col10\" class=\"data row27 col10\" ></td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                        <th id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951eclevel0_row28\" class=\"row_heading level0 row28\" >29</th>\n",
       "                        <td id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951ecrow28_col0\" class=\"data row28 col0\" >Hungary 🇭🇺</td>\n",
       "                        <td id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951ecrow28_col1\" class=\"data row28 col1\" >9,667</td>\n",
       "                        <td id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951ecrow28_col2\" class=\"data row28 col2\" ></td>\n",
       "                                                <td id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951ecrow28_col6\" class=\"data row28 col6\" ></td>\n",
       "                                        <td id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951ecrow28_col9\" class=\"data row28 col9\" ></td>\n",
       "                        <td id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951ecrow28_col10\" class=\"data row28 col10\" ></td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                        <th id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951eclevel0_row29\" class=\"row_heading level0 row29\" >30</th>\n",
       "                        <td id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951ecrow29_col0\" class=\"data row29 col0\" >Philippines 🇵🇭</td>\n",
       "                        <td id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951ecrow29_col1\" class=\"data row29 col1\" >9,248</td>\n",
       "                        <td id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951ecrow29_col2\" class=\"data row29 col2\" ></td>\n",
       "                                                <td id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951ecrow29_col6\" class=\"data row29 col6\" ></td>\n",
       "                                        <td id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951ecrow29_col9\" class=\"data row29 col9\" ></td>\n",
       "                        <td id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951ecrow29_col10\" class=\"data row29 col10\" ></td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                        <th id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951eclevel0_row30\" class=\"row_heading level0 row30\" >31</th>\n",
       "                        <td id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951ecrow30_col0\" class=\"data row30 col0\" >Bolivia 🇧🇴</td>\n",
       "                        <td id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951ecrow30_col1\" class=\"data row30 col1\" >9,165</td>\n",
       "                        <td id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951ecrow30_col2\" class=\"data row30 col2\" >NYT</td>\n",
       "                                                <td id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951ecrow30_col6\" class=\"data row30 col6\" >3.2</td>\n",
       "                                        <td id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951ecrow30_col9\" class=\"data row30 col9\" >29,000</td>\n",
       "                        <td id=\"T_df049bd6_5675_11eb_bc02_7b3d2a8951ecrow30_col10\" class=\"data row30 col10\" >258</td>\n",
       "            </tr>\n",
       "    </tbody></table>"
      ],
      "text/plain": [
       "<pandas.io.formats.style.Styler at 0x7fd62ac5fe90>"
      ]
     },
     "execution_count": 17,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "# Now is Jan 1, 2021\n",
    "\n",
    "data = [['United States 🇺🇸', 349397, 'Ec', 'Dec 12', 375065, 290791, 0, 328.2],\n",
    "        ['Brazil 🇧🇷',        194976, 'Ec','Nov 21', 184202, 168974, 0, 209.5],\n",
    "        ['India 🇮🇳',         148994, '', '', np.nan, np.nan, 0, 1353], \n",
    "        ['Mexico 🇲🇽',        125807, 'Ec', 'Nov 21', 251805, 101357, 0, 126.2],\n",
    "        ['Italy 🇮🇹',          74159, 'Ec', 'Oct 27', 63645, 36963, 0, 60.4],\n",
    "        ['United Kingdom 🇬🇧', 74125, 'Ec', 'Dec 18', 82146, 53368, 0, 66.7], # COVID DEATHS FROM OURWORLDINDATA\n",
    "        ['France 🇫🇷',         64632, 'Ec', 'Dec 1', 55186, 52094, 0, 67.0],\n",
    "        ['Russia 🇷🇺',         57555, 'DK', 'Nov 30', total[0], official_deaths[0], 0, 146.8],\n",
    "        ['Iran 🇮🇷',           55337, 'Ghafari et al.', 'Sep 21', 58900, 24301, 0, 81.9], #7931+19460+40851\n",
    "        ['Spain 🇪🇸',          50837, 'Ec', 'Dec 29', 69702, 49974, 0, 46.7],\n",
    "        ['Argentina 🇦🇷',      43245, '', '', np.nan, np.nan, 0, 44.5],\n",
    "        ['Colombia 🇨🇴',       43213, 'NYT', 'Oct 4', 27000, 28787, 0, 49.7],\n",
    "        ['Peru 🇵🇪',           37680, 'Ec', 'Dec 31', 86156, 37650, 0, 32.0],\n",
    "        ['Germany 🇩🇪',        34222, 'Ec', 'Nov 24', 17290, 14808, 0, 83.02],\n",
    "        ['Poland 🇵🇱',         28956, 'FT', 'Oct', 16546, 5783, 0, 38.0],\n",
    "        ['South Africa 🇿🇦',   28469, 'Ec', 'Dec 29', 58315, 27541, 0, 57.8],\n",
    "        ['Indonesia 🇮🇩',      22329, '', '', np.nan, np.nan, 0, 267.7],\n",
    "        ['Turkey 🇹🇷',         20881, '', '', np.nan, np.nan, 0, 82],\n",
    "        ['Belgium 🇧🇪',        19528, 'Ec', 'Dec 15', 19836, 18299, 0, 11.5],\n",
    "        ['Ukraine 🇺🇦',        18680, 'DK', 'Oct 31', 13168, 7515, 0, 42.0],\n",
    "        ['Chile 🇨🇱',          16608, 'Ec', 'Dec 29', 14075, 16444, 0, 18.7],\n",
    "        ['Romania 🇷🇴',        15841, '', '', np.nan, np.nan, 0, 19.4],\n",
    "        ['Canada 🇨🇦',         15606, '', '', np.nan, np.nan, 0, 37.6],\n",
    "        ['Ecuador 🇪🇨',        14032, 'Ec', 'Sep 30', 34067, 11355, 0, 17.08],\n",
    "        ['Iraq 🇮🇶',           12824, '', '', np.nan, np.nan, 0, 38.4],\n",
    "        ['Czech Republic 🇨🇿', 11711, '', '', np.nan, np.nan, 0, 10.7],\n",
    "        ['Netherlands 🇳🇱',    11432, 'Ec', 'Dec 25', 15988, 11005, 0, 17.3],\n",
    "        ['Pakistan 🇵🇰',       10176, '', '', np.nan, np.nan, 0, 212.2],\n",
    "        ['Hungary 🇭🇺',         9667, '', '', np.nan, np.nan, 0, 9.8],\n",
    "        ['Philippines 🇵🇭',     9248, '', '', np.nan, np.nan, 0, 106.7],\n",
    "        ['Bolivia 🇧🇴',         9165, 'NYT', 'Sep', 25600,7965, 0, 11.4],\n",
    "       ]\n",
    "\n",
    "df = pd.DataFrame(data, columns=['Country', 'Covid19 deaths, now', 'Source',\n",
    "                                 'Mortality data until', 'Excess deaths', \n",
    "                                 'Covid19 deaths', 'Underreporting (excess deaths / covid19 deaths)', \n",
    "                                 'Population (mln)'])\n",
    "\n",
    "df['Underreporting (excess deaths / covid19 deaths)'] = df['Excess deaths'] / df['Covid19 deaths']\n",
    "df['Excess deaths per million'] = df['Excess deaths'] / df['Population (mln)']\n",
    "df.index += 1\n",
    "\n",
    "df['Estimated deaths'] = np.maximum(df['Underreporting (excess deaths / covid19 deaths)'],1) * df['Covid19 deaths, now']\n",
    "df['Estimated deaths per 100,000'] = df['Estimated deaths'] / df['Population (mln)'] / 10\n",
    "\n",
    "df.style.format({'Underreporting (excess deaths / covid19 deaths)': lambda x: f'{x:.1f}' if ~np.isnan(x) else '', \n",
    "                 'Excess deaths':  lambda x: f'{1000*(x/1000).round():,.0f}' if ~np.isnan(x) else '',\n",
    "                 'Covid19 deaths': lambda x: f'{x:,.0f}' if ~np.isnan(x) else '',\n",
    "                 'Excess deaths per million': \n",
    "                                   lambda x: f'{10*(x/10).round():,.0f}' if ~np.isnan(x) else '',\n",
    "                 'Population (mln)': '{:.1f}',\n",
    "                 'Estimated deaths': \n",
    "                                   lambda x: f'{1000*(x/1000).round():,.0f}' if ~np.isnan(x) else '',\n",
    "                 'Estimated deaths per 100,000': \n",
    "                                   lambda x: f'{np.round(x):,.0f}' if ~np.isnan(x) else '',\n",
    "                 'Covid19 deaths, now': '{:,.0f}'}).set_caption(\n",
    "    'Excess mortality estimates').hide_columns(\n",
    "    ['Population (mln)','Excess deaths per million','Mortality data until','Excess deaths','Covid19 deaths']).set_table_styles(\n",
    "    [dict(selector='th', props=[('max-width', '180px')])])"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# Figures for the paper"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 18,
   "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 (mpl.ratio !== 1) {\n",
       "            fig.send_message('set_dpi_ratio', { dpi_ratio: mpl.ratio });\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",
       "    mpl.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",
       "    var resizeObserver = new 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 * mpl.ratio);\n",
       "                canvas.setAttribute('height', height * mpl.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 (width != 0 && height != 0) {\n",
       "                fig.request_resize(width, height);\n",
       "            }\n",
       "        }\n",
       "    });\n",
       "    resizeObserver.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",
       "    // 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'] / mpl.ratio;\n",
       "    var y0 = (fig.canvas.height - msg['y0']) / mpl.ratio;\n",
       "    var x1 = msg['x1'] / mpl.ratio;\n",
       "    var y1 = (fig.canvas.height - msg['y1']) / mpl.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 / mpl.ratio,\n",
       "        fig.canvas.height / mpl.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",
       "    var cursor = msg['cursor'];\n",
       "    switch (cursor) {\n",
       "        case 0:\n",
       "            cursor = 'pointer';\n",
       "            break;\n",
       "        case 1:\n",
       "            cursor = 'default';\n",
       "            break;\n",
       "        case 2:\n",
       "            cursor = 'crosshair';\n",
       "            break;\n",
       "        case 3:\n",
       "            cursor = 'move';\n",
       "            break;\n",
       "    }\n",
       "    fig.rubberband_canvas.style.cursor = 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",
       "            /* 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",
       "            evt.data.type = 'image/png';\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",
       "                evt.data\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 http://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",
       " * http://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 * mpl.ratio;\n",
       "    var y = canvas_pos.y * mpl.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.which === this._key) {\n",
       "            return;\n",
       "        } else {\n",
       "            this._key = event.which;\n",
       "        }\n",
       "    }\n",
       "    if (name === 'key_release') {\n",
       "        this._key = null;\n",
       "    }\n",
       "\n",
       "    var value = '';\n",
       "    if (event.ctrlKey && event.which !== 17) {\n",
       "        value += 'ctrl+';\n",
       "    }\n",
       "    if (event.altKey && event.which !== 18) {\n",
       "        value += 'alt+';\n",
       "    }\n",
       "    if (event.shiftKey && event.which !== 16) {\n",
       "        value += 'shift+';\n",
       "    }\n",
       "\n",
       "    value += 'k';\n",
       "    value += event.which.toString();\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",
       "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, CTRL fixes aspect\", \"fa fa-square-o icon-check-empty\", \"zoom\"], [\"\", \"\", \"\", \"\"], [\"Download\", \"Download plot\", \"fa fa-floppy-o icon-save\", \"download\"]];\n",
       "\n",
       "mpl.extensions = [\"eps\", \"jpeg\", \"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.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",
       "        // Pass the mpl event to the overridden (by mpl) onmessage function.\n",
       "        ws.onmessage(msg['content']['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(\"<div id='\" + id + \"'></div>\");\n",
       "    if (!fig.cell_info) {\n",
       "        console.error('Failed to find cell for figure', id, fig);\n",
       "        return;\n",
       "    }\n",
       "};\n",
       "\n",
       "mpl.figure.prototype.handle_close = function (fig, msg) {\n",
       "    var width = fig.canvas.width / mpl.ratio;\n",
       "    fig.root.removeEventListener('remove', this._remove_fig_handler);\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",
       "        '<img src=\"' + dataURL + '\" width=\"' + width + '\">';\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 / mpl.ratio;\n",
       "    var dataURL = this.canvas.toDataURL();\n",
       "    this.cell_info[1]['text/html'] =\n",
       "        '<img src=\"' + dataURL + '\" width=\"' + width + '\">';\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 = '<i class=\"fa ' + image + ' fa-lg\"></i>';\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 = '<i class=\"fa fa-power-off icon-remove icon-large\"></i>';\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 () {\n",
       "    this.close_ws(this, {});\n",
       "};\n",
       "\n",
       "mpl.figure.prototype._root_extra_style = function (el) {\n",
       "    el.style.boxSizing = 'content-box'; // override notebook setting of border-box.\n",
       "    el.addEventListener('remove', this._remove_fig_handler);\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",
       "    var manager = IPython.notebook.keyboard_manager;\n",
       "    if (!manager) {\n",
       "        manager = IPython.keyboard_manager;\n",
       "    }\n",
       "\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": [
       "<IPython.core.display.Javascript object>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/html": [
       "<img src=\"data:image/png;base64,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\" width=\"520\">"
      ],
      "text/plain": [
       "<IPython.core.display.HTML object>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "fig = plt.figure(figsize=(8*.65, 4.5*.65))\n",
    "\n",
    "r=0\n",
    "plt.plot(deaths[r, -6:-2, :].T, linewidth=.75, color='#aaaaaa', label='')\n",
    "plt.plot(deaths[r, -2, :].T, linewidth=.75, color='#aaaaaa', label='2015–2019')\n",
    "plt.plot(deaths_model[r,:], 'k', linewidth=1.5, label='Projection based on 2006–2019')\n",
    "plt.plot(deaths[r, -1, :], 'r.-', linewidth=1.5, label='2020')\n",
    "plt.legend(frameon=False)\n",
    "\n",
    "a = 3\n",
    "b = np.where(np.isnan(deaths[r,-1,:]))[0][0]\n",
    "poly = np.zeros(((b-a)*2, 2))\n",
    "poly[:,0] = np.concatenate((np.arange(a,b), np.arange(b-1,a-1,-1)))\n",
    "poly[:,1] = np.concatenate((deaths[r,-1,a:b], deaths_model[r,a:b][::-1]))\n",
    "poly = Polygon(poly, facecolor='r', edgecolor='r', alpha=.4, zorder=5)\n",
    "plt.gca().add_patch(poly)\n",
    "\n",
    "plt.text(6.5,90000,f'{np.round(total[0]/100)*100:,.0f}\\nexcess deaths\\n(April–November)',\n",
    "         color='r', ha='center')\n",
    "\n",
    "plt.ylabel('Number of deaths per month')\n",
    "plt.gca().get_yaxis().set_major_formatter(\n",
    "    matplotlib.ticker.FuncFormatter(lambda x, p: format(int(x), ',')))\n",
    "plt.xticks(np.arange(12), months_eng_short)\n",
    "plt.ylim([0,225000])\n",
    "\n",
    "sns.despine()\n",
    "plt.tight_layout()\n",
    "\n",
    "plt.savefig('img/fig1.png', dpi=200)\n",
    "plt.savefig('img/fig1.pdf')"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 19,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Республика Башкортостан   - 114.8\n",
      "Республика Татарстан      - 68.5\n",
      "Сахалинская область       - 67.5\n",
      "Чеченская Республика      - 33.8\n",
      "Белгородская область      - 33.6\n",
      "Республика Мордовия       - 28.1\n",
      "Челябинская область       - 27.8\n",
      "Липецкая область          - 27.3\n",
      "Ярославская область       - 27.0\n",
      "Рязанская область         - 26.1\n",
      "Ленинградская область     - 25.0\n",
      "Тамбовская область        - 24.9\n",
      "Оренбургская область      - 23.8\n",
      "Самарская область         - 21.0\n",
      "Саратовская область       - 20.6\n"
     ]
    }
   ],
   "source": [
    "r = total/(official_deaths+.0001)\n",
    "r[official_deaths==0] = 0\n",
    "ind = np.argsort(r)\n",
    "for i in ind[::-1]:\n",
    "    if r[i]>20:\n",
    "        print(f'{regions[i]:25} - {r[i]:.1f}')"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 20,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Чеченская Республика      - 0.37\n",
      "Республика Дагестан       - 0.30\n",
      "Ямало-Hенецкий АО         - 0.27\n",
      "Республика Ингушетия      - 0.27\n",
      "Республика Татарстан      - 0.22\n",
      "Самарская область         - 0.22\n",
      "Оренбургская область      - 0.21\n",
      "Пензенская область        - 0.20\n",
      "Омская область            - 0.20\n",
      "Липецкая область          - 0.20\n"
     ]
    }
   ],
   "source": [
    "r = yearratio\n",
    "ind = np.argsort(r)\n",
    "for i in ind[::-1]:\n",
    "    if r[i]>0.2:\n",
    "        print(f'{regions[i]:25} - {r[i]:.2f}')"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 21,
   "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 (mpl.ratio !== 1) {\n",
       "            fig.send_message('set_dpi_ratio', { dpi_ratio: mpl.ratio });\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",
       "    mpl.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",
       "    var resizeObserver = new 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 * mpl.ratio);\n",
       "                canvas.setAttribute('height', height * mpl.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 (width != 0 && height != 0) {\n",
       "                fig.request_resize(width, height);\n",
       "            }\n",
       "        }\n",
       "    });\n",
       "    resizeObserver.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",
       "    // 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'] / mpl.ratio;\n",
       "    var y0 = (fig.canvas.height - msg['y0']) / mpl.ratio;\n",
       "    var x1 = msg['x1'] / mpl.ratio;\n",
       "    var y1 = (fig.canvas.height - msg['y1']) / mpl.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 / mpl.ratio,\n",
       "        fig.canvas.height / mpl.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",
       "    var cursor = msg['cursor'];\n",
       "    switch (cursor) {\n",
       "        case 0:\n",
       "            cursor = 'pointer';\n",
       "            break;\n",
       "        case 1:\n",
       "            cursor = 'default';\n",
       "            break;\n",
       "        case 2:\n",
       "            cursor = 'crosshair';\n",
       "            break;\n",
       "        case 3:\n",
       "            cursor = 'move';\n",
       "            break;\n",
       "    }\n",
       "    fig.rubberband_canvas.style.cursor = 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",
       "            /* 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",
       "            evt.data.type = 'image/png';\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",
       "                evt.data\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 http://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",
       " * http://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 * mpl.ratio;\n",
       "    var y = canvas_pos.y * mpl.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.which === this._key) {\n",
       "            return;\n",
       "        } else {\n",
       "            this._key = event.which;\n",
       "        }\n",
       "    }\n",
       "    if (name === 'key_release') {\n",
       "        this._key = null;\n",
       "    }\n",
       "\n",
       "    var value = '';\n",
       "    if (event.ctrlKey && event.which !== 17) {\n",
       "        value += 'ctrl+';\n",
       "    }\n",
       "    if (event.altKey && event.which !== 18) {\n",
       "        value += 'alt+';\n",
       "    }\n",
       "    if (event.shiftKey && event.which !== 16) {\n",
       "        value += 'shift+';\n",
       "    }\n",
       "\n",
       "    value += 'k';\n",
       "    value += event.which.toString();\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",
       "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, CTRL fixes aspect\", \"fa fa-square-o icon-check-empty\", \"zoom\"], [\"\", \"\", \"\", \"\"], [\"Download\", \"Download plot\", \"fa fa-floppy-o icon-save\", \"download\"]];\n",
       "\n",
       "mpl.extensions = [\"eps\", \"jpeg\", \"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.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",
       "        // Pass the mpl event to the overridden (by mpl) onmessage function.\n",
       "        ws.onmessage(msg['content']['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(\"<div id='\" + id + \"'></div>\");\n",
       "    if (!fig.cell_info) {\n",
       "        console.error('Failed to find cell for figure', id, fig);\n",
       "        return;\n",
       "    }\n",
       "};\n",
       "\n",
       "mpl.figure.prototype.handle_close = function (fig, msg) {\n",
       "    var width = fig.canvas.width / mpl.ratio;\n",
       "    fig.root.removeEventListener('remove', this._remove_fig_handler);\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",
       "        '<img src=\"' + dataURL + '\" width=\"' + width + '\">';\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 / mpl.ratio;\n",
       "    var dataURL = this.canvas.toDataURL();\n",
       "    this.cell_info[1]['text/html'] =\n",
       "        '<img src=\"' + dataURL + '\" width=\"' + width + '\">';\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 = '<i class=\"fa ' + image + ' fa-lg\"></i>';\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 = '<i class=\"fa fa-power-off icon-remove icon-large\"></i>';\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 () {\n",
       "    this.close_ws(this, {});\n",
       "};\n",
       "\n",
       "mpl.figure.prototype._root_extra_style = function (el) {\n",
       "    el.style.boxSizing = 'content-box'; // override notebook setting of border-box.\n",
       "    el.addEventListener('remove', this._remove_fig_handler);\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",
       "    var manager = IPython.notebook.keyboard_manager;\n",
       "    if (!manager) {\n",
       "        manager = IPython.keyboard_manager;\n",
       "    }\n",
       "\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": [
       "<IPython.core.display.Javascript object>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/html": [
       "<img src=\"data:image/png;base64,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\" width=\"400\">"
      ],
      "text/plain": [
       "<IPython.core.display.HTML object>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "r = 0\n",
    "\n",
    "plt.figure(figsize=(8/2,4.5/2))\n",
    "plt.plot(np.arange(2006,2020), yearly[r][:-1],'k.')\n",
    "\n",
    "plt.plot(np.arange(2006,2010), yearly[0][:4], 'k-', zorder=-1, lw=.5)\n",
    "plt.plot(np.arange(2011,2015), yearly[0][5:-6], 'k-', zorder=-1, lw=.5)\n",
    "plt.plot(np.arange(2015,2020), yearly[0][-6:-1], 'k-', zorder=-1, lw=.5)\n",
    "\n",
    "plt.plot([2009,2011], [yearly[0][3],yearly[0][5]], 'k:', zorder=-1, lw=.75)\n",
    "\n",
    "excl = ['Российская Федерация', 'Республика Крым', 'Севастополь']\n",
    "plt.plot(np.arange(2014,2020), \n",
    "         np.nansum(yearly[[r not in excl for r in regions],:], axis=0)[-7:-1], \n",
    "         'k:', zorder=-1, lw=.75)\n",
    "\n",
    "from sklearn.linear_model import LinearRegression\n",
    "from sklearn.preprocessing import PolynomialFeatures\n",
    "from sklearn.pipeline import make_pipeline\n",
    "\n",
    "xs = np.linspace(2015,2020,1000).reshape(-1,1)\n",
    "model = make_pipeline(PolynomialFeatures(1), LinearRegression())\n",
    "ys = model.fit(np.arange(2015,2020).reshape(-1,1), yearly[r][-6:-1]).predict(xs)\n",
    "plt.plot(xs[-1], ys[-1], 'r.', lw=.5)\n",
    "plt.plot(xs, ys, 'r', lw=.5, zorder=-1)\n",
    "\n",
    "X = np.concatenate((np.ones((5,1)), np.arange(2015,2020)[:,np.newaxis]), axis=1)\n",
    "y = yearly[r,-6:-1][:,np.newaxis]\n",
    "b = np.linalg.inv(X.T @ X) @ X.T @ y\n",
    "yhat = X @ b\n",
    "sigma2 = np.sum((y-yhat)**2) / (5-2)\n",
    "x = np.array([[1], [2020]])\n",
    "yhat = b.T @ x\n",
    "predictive_var = sigma2 * (1 + x.T @ np.linalg.inv(X.T @ X) @ x)\n",
    "predictive_std = np.sqrt(predictive_var)[0][0]\n",
    "\n",
    "plt.plot([xs[-1],xs[-1]], [ys[-1]-predictive_std, ys[-1]+predictive_std], 'r', lw=.5)\n",
    "\n",
    "plt.xticks([2005,2010,2015,2020])\n",
    "plt.gca().get_yaxis().set_major_formatter(\n",
    "    matplotlib.ticker.FuncFormatter(lambda x, p: format(int(x), ',')))\n",
    "plt.ylabel('Average monthly deaths')\n",
    "sns.despine()\n",
    "plt.tight_layout()\n",
    "\n",
    "plt.text(2009.5,172000,'2010\\nheat wave', fontsize=9)\n",
    "plt.text(2017,155000,'with\\nCrimea', fontsize=9)\n",
    "plt.text(2014,145000,'without\\nCrimea', fontsize=9)\n",
    "plt.text(2020.2,150000,'projection', fontsize=9, color='r', rotation=90)\n",
    "\n",
    "plt.savefig('img/box.png', dpi=200)\n",
    "plt.savefig('img/box.pdf')"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 22,
   "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 (mpl.ratio !== 1) {\n",
       "            fig.send_message('set_dpi_ratio', { dpi_ratio: mpl.ratio });\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",
       "    mpl.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",
       "    var resizeObserver = new 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 * mpl.ratio);\n",
       "                canvas.setAttribute('height', height * mpl.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 (width != 0 && height != 0) {\n",
       "                fig.request_resize(width, height);\n",
       "            }\n",
       "        }\n",
       "    });\n",
       "    resizeObserver.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",
       "    // 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'] / mpl.ratio;\n",
       "    var y0 = (fig.canvas.height - msg['y0']) / mpl.ratio;\n",
       "    var x1 = msg['x1'] / mpl.ratio;\n",
       "    var y1 = (fig.canvas.height - msg['y1']) / mpl.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 / mpl.ratio,\n",
       "        fig.canvas.height / mpl.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",
       "    var cursor = msg['cursor'];\n",
       "    switch (cursor) {\n",
       "        case 0:\n",
       "            cursor = 'pointer';\n",
       "            break;\n",
       "        case 1:\n",
       "            cursor = 'default';\n",
       "            break;\n",
       "        case 2:\n",
       "            cursor = 'crosshair';\n",
       "            break;\n",
       "        case 3:\n",
       "            cursor = 'move';\n",
       "            break;\n",
       "    }\n",
       "    fig.rubberband_canvas.style.cursor = 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",
       "            /* 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",
       "            evt.data.type = 'image/png';\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",
       "                evt.data\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 http://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",
       " * http://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 * mpl.ratio;\n",
       "    var y = canvas_pos.y * mpl.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.which === this._key) {\n",
       "            return;\n",
       "        } else {\n",
       "            this._key = event.which;\n",
       "        }\n",
       "    }\n",
       "    if (name === 'key_release') {\n",
       "        this._key = null;\n",
       "    }\n",
       "\n",
       "    var value = '';\n",
       "    if (event.ctrlKey && event.which !== 17) {\n",
       "        value += 'ctrl+';\n",
       "    }\n",
       "    if (event.altKey && event.which !== 18) {\n",
       "        value += 'alt+';\n",
       "    }\n",
       "    if (event.shiftKey && event.which !== 16) {\n",
       "        value += 'shift+';\n",
       "    }\n",
       "\n",
       "    value += 'k';\n",
       "    value += event.which.toString();\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",
       "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, CTRL fixes aspect\", \"fa fa-square-o icon-check-empty\", \"zoom\"], [\"\", \"\", \"\", \"\"], [\"Download\", \"Download plot\", \"fa fa-floppy-o icon-save\", \"download\"]];\n",
       "\n",
       "mpl.extensions = [\"eps\", \"jpeg\", \"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.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",
       "        // Pass the mpl event to the overridden (by mpl) onmessage function.\n",
       "        ws.onmessage(msg['content']['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(\"<div id='\" + id + \"'></div>\");\n",
       "    if (!fig.cell_info) {\n",
       "        console.error('Failed to find cell for figure', id, fig);\n",
       "        return;\n",
       "    }\n",
       "};\n",
       "\n",
       "mpl.figure.prototype.handle_close = function (fig, msg) {\n",
       "    var width = fig.canvas.width / mpl.ratio;\n",
       "    fig.root.removeEventListener('remove', this._remove_fig_handler);\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",
       "        '<img src=\"' + dataURL + '\" width=\"' + width + '\">';\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 / mpl.ratio;\n",
       "    var dataURL = this.canvas.toDataURL();\n",
       "    this.cell_info[1]['text/html'] =\n",
       "        '<img src=\"' + dataURL + '\" width=\"' + width + '\">';\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 = '<i class=\"fa ' + image + ' fa-lg\"></i>';\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 = '<i class=\"fa fa-power-off icon-remove icon-large\"></i>';\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 () {\n",
       "    this.close_ws(this, {});\n",
       "};\n",
       "\n",
       "mpl.figure.prototype._root_extra_style = function (el) {\n",
       "    el.style.boxSizing = 'content-box'; // override notebook setting of border-box.\n",
       "    el.addEventListener('remove', this._remove_fig_handler);\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",
       "    var manager = IPython.notebook.keyboard_manager;\n",
       "    if (!manager) {\n",
       "        manager = IPython.keyboard_manager;\n",
       "    }\n",
       "\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": [
       "<IPython.core.display.Javascript object>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/html": [
       "<img src=\"data:image/png;base64,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\" width=\"800\">"
      ],
      "text/plain": [
       "<IPython.core.display.HTML object>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "fig = plt.figure(figsize=(8,4.5))\n",
    "ax1 = plt.axes([.2,.085,.8,.39])\n",
    "ax2 = plt.axes([0,.5,.5,.5])"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 23,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Minimum max-ratio across all regions: 0.27\n"
     ]
    }
   ],
   "source": [
    "import matplotlib.image as mpimg\n",
    "rusmap = mpimg.imread('russian-data/map.png')\n",
    "\n",
    "plt.sca(ax2)\n",
    "plt.imshow(rusmap)\n",
    "\n",
    "peak = np.zeros(regions.size)\n",
    "for i in range(peak.size):\n",
    "    f = np.where(ratio[i]>0.25)[0]\n",
    "    if f.size>0:\n",
    "        peak[i] = f[0]\n",
    "        \n",
    "print(f'Minimum max-ratio across all regions: {np.min(np.nanmax(ratio,axis=1)):.2f}')\n",
    "        \n",
    "mycolors = matplotlib.colors.ListedColormap(np.array(plt.get_cmap('tab10').colors)[[0,1,2,4,5,6,3,7,8,9]])\n",
    "\n",
    "for r in range(1,regions.size):\n",
    "    area = total[r]/50\n",
    "    if peak[r]>0:\n",
    "        plt.scatter(coordinates[regions[r]][0],\n",
    "                coordinates[regions[r]][1],\n",
    "                s = area, c = peak[r]-4, edgecolor='none', \n",
    "                vmin=0, vmax=10, alpha=.8, cmap=mycolors)\n",
    "    else:\n",
    "        plt.scatter(coordinates[regions[r]][0],\n",
    "                coordinates[regions[r]][1],\n",
    "                s = area, c = '#aaaaaa', edgecolor='none', alpha=.8)\n",
    "        \n",
    "plt.plot([coordinates['Москва'][0],214],\n",
    "         [coordinates['Москва'][1],505], \n",
    "         linewidth=.75, color=plt.get_cmap('tab10')(0))\n",
    "\n",
    "plt.text(100, 50, 'First wave:', color='k', fontsize=8)\n",
    "plt.text(150,  120, 'May', color=mycolors(0), fontsize=8)\n",
    "plt.text(150,  180, 'Jun', color=mycolors(1), fontsize=8)\n",
    "plt.text(150,  240, 'Jul', color=mycolors(2), fontsize=8)\n",
    "plt.text(300, 120, 'Aug', color=mycolors(3), fontsize=8)\n",
    "plt.text(300, 180, 'Sep', color=mycolors(4), fontsize=8)\n",
    "plt.text(300, 240, 'Oct', color=mycolors(5), fontsize=8)\n",
    "plt.text(450, 120, 'Nov', color=mycolors(6), fontsize=8)\n",
    "# plt.text(450, 180, 'Dec', color=mycolors(7), fontsize=8)\n",
    "\n",
    "plt.scatter(.45, .95, transform=plt.gca().transAxes, s=10000/50,\n",
    "            c='#aaaaaa', edgecolor='none', alpha=.8)\n",
    "plt.scatter(.56, .95, transform=plt.gca().transAxes, s=5000/50,\n",
    "            c='#aaaaaa', edgecolor='none', alpha=.8)\n",
    "plt.scatter(.65, .95, transform=plt.gca().transAxes, s=1000/50,\n",
    "            c='#aaaaaa', edgecolor='none', alpha=.8)\n",
    "plt.text(.45, .85, '10,000', transform=plt.gca().transAxes, c='#aaaaaa', \n",
    "         fontsize=7, ha='center')\n",
    "plt.text(.56, .85, '5,000', transform=plt.gca().transAxes, c='#aaaaaa', \n",
    "         fontsize=7, ha='center')\n",
    "plt.text(.65, .85, '1,000', transform=plt.gca().transAxes, c='#aaaaaa', \n",
    "         fontsize=7, ha='center')\n",
    "    \n",
    "plt.xticks([])\n",
    "plt.yticks([])\n",
    "sns.despine(ax=ax2, left=True, bottom=True)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 24,
   "metadata": {},
   "outputs": [],
   "source": [
    "n=15\n",
    "ind = np.argsort(total[1:])[::-1][:n]\n",
    "y1=np.sum(covid_deaths[1:,:,0], axis=1)[ind]\n",
    "y2=np.sum(covid_deaths[1:,:,1], axis=1)[ind]\n",
    "y3=np.sum(covid_deaths[1:,:,2], axis=1)[ind]\n",
    "y4=np.sum(covid_deaths[1:,:,3], axis=1)[ind]\n",
    "y5=total[1:][ind]\n",
    "\n",
    "plt.sca(ax1)\n",
    "plt.barh(-np.arange(ind.size), y1, color='black', label='Сovid-19 confirmed')\n",
    "plt.barh(-np.arange(ind.size), y2, left=y1, color='#777777', label='Сovid-19 suspected')\n",
    "plt.barh(-np.arange(ind.size), y3, left=y1+y2, color='#999999', label='Сovid-19 contributed')\n",
    "plt.barh(-np.arange(ind.size), y4, left=y1+y2+y3, color='#bbbbbb', label='Сovid-19 not contributed')\n",
    "plt.scatter(y5, -np.arange(ind.size), s=8, color='red', label='Excess mortality',\n",
    "                clip_on=False, zorder=4)\n",
    "plt.scatter(official_deaths[1:][ind], -np.arange(ind.size), s=8, color='orange', \n",
    "                label='Daily reported\\nCovid-19 deaths', clip_on=False, zorder=3)\n",
    "\n",
    "for i,r in enumerate(ind):\n",
    "    plt.text(y5[i]+200, -i-.4, f'{np.round(y5[i]/100)*100:,.0f}', color='red', fontsize=8)\n",
    "    plt.text(np.max(y5)+4000, -i-.4, f'{y5[i]/official_deaths[1:][ind][i]:.1f}', \n",
    "             color='k', fontsize=8, ha='right').set_clip_on(True)\n",
    "    plt.text(np.max(y5)+6500, -i-.4, f'{np.round(total_permln[1:][ind][i]/10):.0f}', \n",
    "             color='k', fontsize=8, ha='right').set_clip_on(True)\n",
    "    plt.text(np.max(y5)+9500, -i-.4, f'{yearratio[1:][ind][i]*100:.0f}%', \n",
    "             color='k', fontsize=8, ha='right').set_clip_on(True)\n",
    "\n",
    "plt.text(np.max(y5)+3000, 1, 'Under-\\nreporting', fontsize=8, ha='center')\n",
    "plt.text(np.max(y5)+6000, 1, 'Deaths\\nper 100k', fontsize=8, ha='center')\n",
    "plt.text(np.max(y5)+9000, 1, 'Yearly\\nincrease', fontsize=8, ha='center')\n",
    "\n",
    "plt.xlim([0,np.max(y5)+11000])\n",
    "plt.xticks(np.arange(0,25001,2500), fontsize=8)\n",
    "plt.gca().get_xaxis().set_major_formatter(\n",
    "    matplotlib.ticker.FuncFormatter(lambda x, p: format(int(x), ',')))\n",
    "plt.ylim([-ind.size,1])\n",
    "plt.yticks(-np.arange(ind.size), [regionsToEnglish[r] for r in regions[1:][ind]], fontsize=8)\n",
    "plt.legend(loc=[.4,.1], fontsize=8)\n",
    "plt.xlabel('Number of deaths (April–November)', fontsize=8)\n",
    "\n",
    "sns.despine(ax=ax1)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 25,
   "metadata": {},
   "outputs": [],
   "source": [
    "for i,r in enumerate(ind+1):\n",
    "    ax = plt.axes([.52+(i%5)*.099, 1-(1+np.floor(i/5))*.15, .08, .1])\n",
    "                  \n",
    "    plt.plot(deaths[r, -6:-1, :].T, color='#aaaaaa', linewidth=.5, clip_on=False)\n",
    "    plt.plot(deaths_model[r,:], 'k', linewidth=1, clip_on=False)\n",
    "    plt.plot(deaths[r, -1, :], 'r.-', linewidth=1, markersize=3, clip_on=False)\n",
    "    \n",
    "    a = 3\n",
    "    b = np.where(np.isnan(deaths[r,-1,:]))[0][0]\n",
    "    poly = np.zeros(((b-a)*2, 2))\n",
    "    poly[:,0] = np.concatenate((np.arange(a,b), np.arange(b-1,a-1,-1)))\n",
    "    poly[:,1] = np.concatenate((deaths[r,-1,a:b], deaths_model[r,a:b][::-1]))\n",
    "    poly = Polygon(poly, facecolor='r', edgecolor='r', alpha=.4, zorder=5)\n",
    "    plt.gca().add_patch(poly)\n",
    "    \n",
    "    plt.xticks([])\n",
    "    ym = np.mean(deaths_model[r,])\n",
    "    plt.ylim([0, ym*1.75])\n",
    "    plt.xlim([-0.5,11.5])    \n",
    "    if i>0:\n",
    "        plt.yticks([])\n",
    "    else:\n",
    "        plt.yticks([0,ym/2,ym,ym*1.5],['0','50%','100%','150%'], fontsize=8)\n",
    "    \n",
    "    toll = np.round(total[r]/100)*100\n",
    "    plt.text(.05, .1, f'{toll:,.0f}', color='r', fontsize=8,\n",
    "                 transform=plt.gca().transAxes)\n",
    "    \n",
    "    plt.title(regionsToEnglishShort[regions[r]], fontsize=7)\n",
    "    sns.despine(ax=ax, left=i>0)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 26,
   "metadata": {},
   "outputs": [],
   "source": [
    "fig.text(0, 1,'(a)',fontsize=10,color='k',va='top')\n",
    "fig.text(.47,1,'(b)',fontsize=10,color='k',va='top')\n",
    "fig.text(0,.5,'(c)',fontsize=10,color='k',va='top')\n",
    "\n",
    "plt.savefig('img/regions.png', dpi=200)\n",
    "plt.savefig('img/regions.pdf', dpi=300)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 27,
   "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 (mpl.ratio !== 1) {\n",
       "            fig.send_message('set_dpi_ratio', { dpi_ratio: mpl.ratio });\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",
       "    mpl.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",
       "    var resizeObserver = new 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 * mpl.ratio);\n",
       "                canvas.setAttribute('height', height * mpl.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 (width != 0 && height != 0) {\n",
       "                fig.request_resize(width, height);\n",
       "            }\n",
       "        }\n",
       "    });\n",
       "    resizeObserver.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",
       "    // 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'] / mpl.ratio;\n",
       "    var y0 = (fig.canvas.height - msg['y0']) / mpl.ratio;\n",
       "    var x1 = msg['x1'] / mpl.ratio;\n",
       "    var y1 = (fig.canvas.height - msg['y1']) / mpl.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 / mpl.ratio,\n",
       "        fig.canvas.height / mpl.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",
       "    var cursor = msg['cursor'];\n",
       "    switch (cursor) {\n",
       "        case 0:\n",
       "            cursor = 'pointer';\n",
       "            break;\n",
       "        case 1:\n",
       "            cursor = 'default';\n",
       "            break;\n",
       "        case 2:\n",
       "            cursor = 'crosshair';\n",
       "            break;\n",
       "        case 3:\n",
       "            cursor = 'move';\n",
       "            break;\n",
       "    }\n",
       "    fig.rubberband_canvas.style.cursor = 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",
       "            /* 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",
       "            evt.data.type = 'image/png';\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",
       "                evt.data\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 http://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",
       " * http://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 * mpl.ratio;\n",
       "    var y = canvas_pos.y * mpl.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.which === this._key) {\n",
       "            return;\n",
       "        } else {\n",
       "            this._key = event.which;\n",
       "        }\n",
       "    }\n",
       "    if (name === 'key_release') {\n",
       "        this._key = null;\n",
       "    }\n",
       "\n",
       "    var value = '';\n",
       "    if (event.ctrlKey && event.which !== 17) {\n",
       "        value += 'ctrl+';\n",
       "    }\n",
       "    if (event.altKey && event.which !== 18) {\n",
       "        value += 'alt+';\n",
       "    }\n",
       "    if (event.shiftKey && event.which !== 16) {\n",
       "        value += 'shift+';\n",
       "    }\n",
       "\n",
       "    value += 'k';\n",
       "    value += event.which.toString();\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",
       "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, CTRL fixes aspect\", \"fa fa-square-o icon-check-empty\", \"zoom\"], [\"\", \"\", \"\", \"\"], [\"Download\", \"Download plot\", \"fa fa-floppy-o icon-save\", \"download\"]];\n",
       "\n",
       "mpl.extensions = [\"eps\", \"jpeg\", \"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.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",
       "        // Pass the mpl event to the overridden (by mpl) onmessage function.\n",
       "        ws.onmessage(msg['content']['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(\"<div id='\" + id + \"'></div>\");\n",
       "    if (!fig.cell_info) {\n",
       "        console.error('Failed to find cell for figure', id, fig);\n",
       "        return;\n",
       "    }\n",
       "};\n",
       "\n",
       "mpl.figure.prototype.handle_close = function (fig, msg) {\n",
       "    var width = fig.canvas.width / mpl.ratio;\n",
       "    fig.root.removeEventListener('remove', this._remove_fig_handler);\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",
       "        '<img src=\"' + dataURL + '\" width=\"' + width + '\">';\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 / mpl.ratio;\n",
       "    var dataURL = this.canvas.toDataURL();\n",
       "    this.cell_info[1]['text/html'] =\n",
       "        '<img src=\"' + dataURL + '\" width=\"' + width + '\">';\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 = '<i class=\"fa ' + image + ' fa-lg\"></i>';\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 = '<i class=\"fa fa-power-off icon-remove icon-large\"></i>';\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 () {\n",
       "    this.close_ws(this, {});\n",
       "};\n",
       "\n",
       "mpl.figure.prototype._root_extra_style = function (el) {\n",
       "    el.style.boxSizing = 'content-box'; // override notebook setting of border-box.\n",
       "    el.addEventListener('remove', this._remove_fig_handler);\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",
       "    var manager = IPython.notebook.keyboard_manager;\n",
       "    if (!manager) {\n",
       "        manager = IPython.keyboard_manager;\n",
       "    }\n",
       "\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": [
       "<IPython.core.display.Javascript object>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/html": [
       "<img src=\"data:image/png;base64,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o7lz547mOyQzMxM/Pz/mzJlDQkJCdifUmBh27NgBZHduj4yMJCsri/j4eFq1asXixYu5fv06X3/9tfqc1atX52vKlePs2bPY29vz3XffkZGRwYoVKzR9QK5evUq1atXYvHkz6enppKenExoaqvYpad++PdOnTycrK4vLly/TqVMnTQAZMWIEkydP1hyzoABS0P8bayIBRORlLjj8vnIlUT16kLBnDykREdxat46IFi1I/PlnABJ++IGo7t3JSkoqcD9FFRwczKeffgpkh49OnTphY2ODTqdTryHLggSQAgQFBdGjRw+ioqKIiori119/JSgoCA8PD3X0kUmTJmlCSk6xsbHh448/VveTc1F64sQJFEXh0qVLmmO1bt26VAJI7j+6q1evxsnJSXOcuXPn0rp160K9/r9qALHUzr2gXy+Le65CWFMAyds/SqfTER8fz549e2jZsiXOzs64urrSr18/9Tvu1q1bdO3aFRcXF/VitSQBJCsri3HjxmEwGKhWrRpTp06la9eumu3HjRuHu7s7RqORn376CYAff/yRTp064erqiru7O0888YT6nZqSksK4ceNwdXXF29u7UKNgLVu2jCZNmqDX66lZsybDhg0jISGBmTNn0qFDB7Xfx507d/D29lYn/IqNjWX48OF4eHioI2jlHgXr+eefx8vLC71eT9OmTfnXv/4FwKJFi6hXrx5OTk54eHgwceJE0tLSuHbtGgEBARiNRvR6PW3btrXYBAuym4HVr18fg8HAP/7xj3yjYB0/fpyePXvi7u6Oq6srnTp1Un/Y+umnn2jSpAk6nY7WrVvz0UcfaQLIkSNHaNSoEUajkf79+wMFB5CC/t9YEwkgIq+8wSErJYW+02hGAAAgAElEQVSwRo1IyPPZjJ05k5jnnwcgbt48who0IMzX98/i40PYY49x8Y8fMYqjZs2a/O+PZl5bt26lZs2aREZGMmfOHDp16lTs/ZaUBJACmOsDkpmZiU6nU3/dmjBhAn5+fmpIyV3u3r2bbz+hoaEoiqIOQ5ijVatWFgPIpUuXUBSF48ePq+tv3rxpNoDk/iNublZ2S7Oum/NXDSCWfuUtqP12cc9VCLl4EcK6yWdY5JU3gGQmJBDm40PC/v2a7WLnzCHmuecAyLh5k5TISE0J8/Ehfu1a0vJcMxaFg4MDV65cAbJ/nMm51oyOjkav1xd7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\" width=\"800\">"
      ],
      "text/plain": [
       "<IPython.core.display.HTML object>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "fig = plt.figure(figsize=(8, 3.5))\n",
    "\n",
    "n = 20\n",
    "\n",
    "plt.barh(-np.arange(n), df[:n]['Covid19 deaths, now'], label='Daily reported Сovid-19 deaths')\n",
    "delta = df[:n]['Estimated deaths'] - df[:n]['Covid19 deaths, now']\n",
    "delta[delta<0] = np.nan\n",
    "plt.barh(-np.arange(n), delta, left=df[:n]['Covid19 deaths, now']+2000, color='#d52323',\n",
    "         label='Estimated excess deaths')\n",
    "         \n",
    "plt.yticks(-np.arange(n), [a[:-2] for a in df[:n]['Country']])\n",
    "plt.xlabel('Number of deaths as of 1 January 2021')\n",
    "\n",
    "for i in np.where(delta==0)[0]:\n",
    "    plt.barh(-i, 2000, left=np.array(df[:n]['Covid19 deaths, now'])[i]-2000, color='k')\n",
    "for i in np.where(np.isnan(delta))[0]:\n",
    "    plt.text(np.array(df[:n]['Covid19 deaths, now'])[i] + 5000, -i-.3, 'n/a', color='r', fontsize=9)\n",
    "for i in range(n):\n",
    "    if np.isnan(df['Estimated deaths'].values[i]):\n",
    "        continue\n",
    "    plt.text(df['Estimated deaths'].values[i] + 5000, -i-.3, \n",
    "             f\"{df['Underreporting (excess deaths / covid19 deaths)'].values[i]:.1f} [{df['Source'].values[i]}]\",\n",
    "             color='k', fontsize=9)\n",
    "    plt.text(540000, -i-.3, \n",
    "             f\"{df['Estimated deaths per 100,000'].values[i]:.0f}\",\n",
    "             color='#d52323', ha='right')\n",
    "\n",
    "plt.gca().tick_params(axis='y', length=0)\n",
    "\n",
    "plt.gca().annotate('Undercount:\\nexcess deaths /\\ndaily reported\\nСovid-19 deaths\\n[Source]',\n",
    "                   xy=(400000, -7.5), xycoords='data',\n",
    "                   xytext=(410000, -14), textcoords='data',\n",
    "                   arrowprops=dict(arrowstyle=\"->\", connectionstyle=\"arc3\"),\n",
    "                   fontsize=9)\n",
    "\n",
    "plt.text(550000,-n/2+.7,'Estimated excess deaths per 100,000', rotation=90, va='center')\n",
    "\n",
    "plt.ylim([-n+.3,.7])\n",
    "plt.xlim([0,480000])\n",
    "plt.xticks(np.arange(0,400001,100000))\n",
    "plt.gca().get_xaxis().set_major_formatter(\n",
    "    matplotlib.ticker.FuncFormatter(lambda x, p: format(int(x), ',')))\n",
    "\n",
    "sns.despine()\n",
    "plt.tight_layout()\n",
    "\n",
    "plt.legend(loc=(.4,.05), fontsize=9)\n",
    "\n",
    "plt.savefig('img/countries.png', dpi=200)\n",
    "plt.savefig('img/countries.pdf')"
   ]
  }
 ],
 "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.7.9"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 4
}
back to top