{
"cells": [
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Bar chart"
]
},
{
"cell_type": "code",
"execution_count": 1,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"
\n",
"\n",
"
\n",
" \n",
" \n",
" | \n",
" language | \n",
" filename | \n",
" blank | \n",
" comment | \n",
" code | \n",
"
\n",
" \n",
" \n",
" \n",
" 0 | \n",
" PO File | \n",
" ./taiga/locale/es/LC_MESSAGES/django.po | \n",
" 793 | \n",
" 1114 | \n",
" 3506 | \n",
"
\n",
" \n",
" 1 | \n",
" PO File | \n",
" ./taiga/locale/it/LC_MESSAGES/django.po | \n",
" 793 | \n",
" 1108 | \n",
" 2891 | \n",
"
\n",
" \n",
" 2 | \n",
" PO File | \n",
" ./taiga/locale/eu/LC_MESSAGES/django.po | \n",
" 793 | \n",
" 1101 | \n",
" 2888 | \n",
"
\n",
" \n",
" 3 | \n",
" PO File | \n",
" ./taiga/locale/ru/LC_MESSAGES/django.po | \n",
" 793 | \n",
" 1117 | \n",
" 2878 | \n",
"
\n",
" \n",
" 4 | \n",
" PO File | \n",
" ./taiga/locale/lv/LC_MESSAGES/django.po | \n",
" 793 | \n",
" 1102 | \n",
" 2858 | \n",
"
\n",
" \n",
"
\n",
"
"
],
"text/plain": [
" language filename blank comment code\n",
"0 PO File ./taiga/locale/es/LC_MESSAGES/django.po 793 1114 3506\n",
"1 PO File ./taiga/locale/it/LC_MESSAGES/django.po 793 1108 2891\n",
"2 PO File ./taiga/locale/eu/LC_MESSAGES/django.po 793 1101 2888\n",
"3 PO File ./taiga/locale/ru/LC_MESSAGES/django.po 793 1117 2878\n",
"4 PO File ./taiga/locale/lv/LC_MESSAGES/django.po 793 1102 2858"
]
},
"execution_count": 1,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"import pandas as pd\n",
"\n",
"df = pd.read_csv('taiga_cloc_output.csv', usecols=range(0, 5))\n",
"df.head()"
]
},
{
"cell_type": "code",
"execution_count": 2,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"array(['PO File', 'Python', 'JSON', 'Markdown', 'YAML', 'CSS',\n",
" 'Bourne Shell', 'reStructuredText', 'INI', 'Bourne Again Shell',\n",
" 'SUM'], dtype=object)"
]
},
"execution_count": 2,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"df['language'].unique()"
]
},
{
"cell_type": "code",
"execution_count": 24,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"\n",
"\n",
"
\n",
" \n",
" \n",
" | \n",
" language | \n",
" count | \n",
"
\n",
" \n",
" \n",
" \n",
" 7 | \n",
" Python | \n",
" 791 | \n",
"
\n",
" \n",
" 6 | \n",
" PO File | \n",
" 23 | \n",
"
\n",
" \n",
" 5 | \n",
" Markdown | \n",
" 6 | \n",
"
\n",
" \n",
" 0 | \n",
" Bourne Again Shell | \n",
" 2 | \n",
"
\n",
" \n",
" 1 | \n",
" Bourne Shell | \n",
" 2 | \n",
"
\n",
" \n",
" 3 | \n",
" INI | \n",
" 2 | \n",
"
\n",
" \n",
" 4 | \n",
" JSON | \n",
" 2 | \n",
"
\n",
" \n",
" 9 | \n",
" YAML | \n",
" 2 | \n",
"
\n",
" \n",
" 2 | \n",
" CSS | \n",
" 1 | \n",
"
\n",
" \n",
" 8 | \n",
" SUM | \n",
" 1 | \n",
"
\n",
" \n",
" 10 | \n",
" reStructuredText | \n",
" 1 | \n",
"
\n",
" \n",
"
\n",
"
"
],
"text/plain": [
" language count\n",
"7 Python 791\n",
"6 PO File 23\n",
"5 Markdown 6\n",
"0 Bourne Again Shell 2\n",
"1 Bourne Shell 2\n",
"3 INI 2\n",
"4 JSON 2\n",
"9 YAML 2\n",
"2 CSS 1\n",
"8 SUM 1\n",
"10 reStructuredText 1"
]
},
"execution_count": 24,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"by_language = (df\n",
" .copy()\n",
" .loc[:, ['language', 'code']]\n",
" .groupby('language')\n",
" .count()\n",
" .reset_index()\n",
" .rename(columns={'code': 'count'})\n",
" .sort_values('count', ascending=False))\n",
"\n",
"by_language"
]
},
{
"cell_type": "code",
"execution_count": 25,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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\n",
"text/plain": [
""
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"import matplotlib.pyplot as plt\n",
"\n",
"xs = by_language['language']\n",
"ys = by_language['count']\n",
"\n",
"plt.figure(figsize=(15, 5))\n",
"plt.bar(xs, ys)\n",
"plt.show()"
]
},
{
"cell_type": "code",
"execution_count": 30,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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\n",
"text/plain": [
""
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"import matplotlib.pyplot as plt\n",
"import numpy as np\n",
"\n",
"bar_data = by_language.copy()\n",
"bar_data = bar_data.loc[bar_data['language'] != 'Python']\n",
"\n",
"xs = bar_data['language']\n",
"ys = bar_data['count']\n",
"\n",
"plt.figure(figsize=(15, 5))\n",
"\n",
"bar = plt.bar(xs, ys, color='gray')\n",
"\n",
"# ADD CHART TITLE\n",
"plt.title('NUMBER OF NON PYTHON FILES BY TYPE')\n",
"\n",
"# ADD NUMBER OF FILES ON TOP OF CHARTS\n",
"for rect in bar:\n",
" x = rect.get_x() + (rect.get_width() / 2)\n",
" y = rect.get_height()\n",
" \n",
" plt.text(x, y + 1, y, weight=\"bold\", ha='center', va='center')\n",
" \n",
"# HIGHLIGH MOST PROMINENT LANGUAGE\n",
"bar[0].set_color('orange')\n",
" \n",
"# ADD MORE Y TICKS TO GIVE ON TOP NUMBERS SOME ROOM\n",
"plt.yticks(np.arange(0, 35, step=5))\n",
"plt.show()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# Pie Chart"
]
},
{
"cell_type": "code",
"execution_count": 6,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"\n",
"\n",
"
\n",
" \n",
" \n",
" | \n",
" language | \n",
" filename | \n",
" blank | \n",
" comment | \n",
" code | \n",
"
\n",
" \n",
" \n",
" \n",
" 0 | \n",
" PO File | \n",
" ./taiga/locale/es/LC_MESSAGES/django.po | \n",
" 793 | \n",
" 1114 | \n",
" 3506 | \n",
"
\n",
" \n",
" 1 | \n",
" PO File | \n",
" ./taiga/locale/it/LC_MESSAGES/django.po | \n",
" 793 | \n",
" 1108 | \n",
" 2891 | \n",
"
\n",
" \n",
" 2 | \n",
" PO File | \n",
" ./taiga/locale/eu/LC_MESSAGES/django.po | \n",
" 793 | \n",
" 1101 | \n",
" 2888 | \n",
"
\n",
" \n",
" 3 | \n",
" PO File | \n",
" ./taiga/locale/ru/LC_MESSAGES/django.po | \n",
" 793 | \n",
" 1117 | \n",
" 2878 | \n",
"
\n",
" \n",
" 4 | \n",
" PO File | \n",
" ./taiga/locale/lv/LC_MESSAGES/django.po | \n",
" 793 | \n",
" 1102 | \n",
" 2858 | \n",
"
\n",
" \n",
"
\n",
"
"
],
"text/plain": [
" language filename blank comment code\n",
"0 PO File ./taiga/locale/es/LC_MESSAGES/django.po 793 1114 3506\n",
"1 PO File ./taiga/locale/it/LC_MESSAGES/django.po 793 1108 2891\n",
"2 PO File ./taiga/locale/eu/LC_MESSAGES/django.po 793 1101 2888\n",
"3 PO File ./taiga/locale/ru/LC_MESSAGES/django.po 793 1117 2878\n",
"4 PO File ./taiga/locale/lv/LC_MESSAGES/django.po 793 1102 2858"
]
},
"execution_count": 6,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"import pandas as pd\n",
"\n",
"df = pd.read_csv('taiga_cloc_output.csv', usecols=range(0, 5))\n",
"df.head()"
]
},
{
"cell_type": "code",
"execution_count": 7,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"\n",
"\n",
"
\n",
" \n",
" \n",
" | \n",
" is_python | \n",
" count | \n",
"
\n",
" \n",
" \n",
" \n",
" 1 | \n",
" Python | \n",
" 791 | \n",
"
\n",
" \n",
" 0 | \n",
" Non Python | \n",
" 42 | \n",
"
\n",
" \n",
"
\n",
"
"
],
"text/plain": [
" is_python count\n",
"1 Python 791\n",
"0 Non Python 42"
]
},
"execution_count": 7,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"df['is_python'] = df['language'].apply(lambda s: 'Python' if s == 'Python' else 'Non Python')\n",
"\n",
"by_language = (df\n",
" .loc[:, ['is_python', 'code']]\n",
" .groupby('is_python')\n",
" .count()\n",
" .reset_index()\n",
" .rename(columns={'code': 'count'})\n",
" .sort_values('count', ascending=False))\n",
"\n",
"by_language"
]
},
{
"cell_type": "code",
"execution_count": 8,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "iVBORw0KGgoAAAANSUhEUgAAAXMAAAEuCAYAAAB8qvK7AAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADh0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uMy4yLjIsIGh0dHA6Ly9tYXRwbG90bGliLm9yZy+WH4yJAAAgAElEQVR4nO3dd5wcdf3H8dcnvRISCDmSYAIJhAChShUEFKQEpIsCIrigDihEUcQVBQUH5Id6ILgITCCAQCBROoggvRh675DQciE9pLfv74/vHNkkd7nL3e59t7yfj8c9srczO/O+zd77Zr8zO2POOUREpLy1Cx1ARERaT2UuIlIBVOYiIhVAZS4iUgFU5iIiFUBlLiJSAVTmJc7MDjOzj8xsrpltV+R1OTMbWsx1CJjZtWZ2fhusZy8z+7jY65HS0CZlbmYTzWxBWkhTzOwaM+vRFutuDjM718xuCJ2jERcDP3bO9XDOvbDqxLSA56XP7Sdm9mcza9/UQs3sYTM7qSiJ20BaVM7MLl/l/sfN7IQirO9aM1ucPs8zzOw/ZrZ5Mx53gpk9Xug8Iqtqyy3zg51zPYDtgR2Bs9fmweZV4zuJQcBrTcyzTfrcfh04Bji56KlKwzzgeDMb3Ebruyh9ngcCnwHXttF6RZrU5uXonPsEuBfYCsDMdjGzJ81slpm9ZGZ71c+bbj3+wcyeAOYDm5jZlulW0Yx0Kz+bztvOzM4ys/fMbLqZ3WJmfdJpg9OtuO+Z2YdmNs3Mfp1O2x/IAkenW10vpfefaGZvmNnnZva+mf0w/+cwszPNbLKZfWpmJ+UPUZhZZzO7OF3XFDO7wsy6NvR8pLnPNrNJZvaZmV1nZr3SZcwF2gMvmdl7zXhu3wQeA7Yys1+Y2fhV1vVXM6s1sz8AewCXpT/zZXmz7WNm75jZTDO73MxsTTmben4b+Hl3MbO6/HcP5oeSXk5v72Rmz5rZnPS5+/MafuRZ+EI9p5F1FSTzqpxz84Eb8c9zjZnNN7P18ta7g5lNNbMRwBXArunzPCtvMb3N7O709fU/MxuS9/jdzOwZM5ud/rtb3rSHzew8M3sifez9ZrZ+c3Ln/X58bmavm9lhedNOMP+u5uL0//4DMzsgb/rGZvZo+tgH0tfGDem01YZzzL8b3ye9vZOZPWX+d3yymV1mZp3y5v2Gmb2V/rx/M7NHLO9do5l93/zv4kwz+7eZDUrvNzP7S/p/O9vMXjazrZrzXFQk51zRv4CJwD7p7Y3wW5rnAQOA6cCB+D8s+6bf903nfRj4ENgS6AD0BCYDZwBd0u93TucdBTyN32rqDPwduCmdNhhwwFVAV2AbYBEwPJ1+LnDDKplHAkMAA/bE/zHZPp22P1CX5uoGXJ8uf2g6vRa4A+iTZrwTuKCR5+b7wLvAJkAP4J/A9XnTv1huI4/PX+8Waa4MsCF+y3XddFoH/NbkDnnP7UkNLOsuYF3gS8BUYP+mcjb1/DaQ+T1g37zvbwXOSm8/BXw3vd0D2KWRZewFfAzUAHOAYen9jwMnFCHztcD5ebluBB5Lv78HiPLm/Qvw1/T2CcDjDSxrBrBT+v/yD+DmdFofYCbw3XTad9Lv18v7f3sP2CzN/TBw4Zqeo7zvjwL643/Xjk5fHxvm5VyCf1fXHoiATwHL+3+5GOgE7J4+5zc0tJ4Gfud3AHZJf57BwBvAqHTa+umyDk+nn57mOCmdfmj6fzg8nX428GQ6bT/gOfzr1dJ5NmyLTivFr7Ys87n4LalJwN/SF+IvySuudN5/A9/Le+H+Pm/ad4AXGlnHG8DX877fMH1R1L+AHDAwb/oE4Nvp7XNZpcwbWP5twOnp7dHklTMwNF3+0PRFNQ8Ykjd9V+CDRpb7IHBK3vfD6nOn3zenzOfgf+HfA84H2qXT7gVOTm8fBLye97iHabjMd8/7/hZWlGyjOZt6fhvIfD4wOr3dM32+BqXfPwr8Dli/if+PvUgLBLgIGJvezi/zQma+FliIfw3X4f9YD0mnHQ08kd5un07fKf3+BBou86vzvj8QeDO9/V1gwirzP5X3Mz0MnJ037RTgvqaeo0amvwgckpfz3bxp3dLnpwb/h30p0C1v+g00s8wbWO8o4F/p7eOBp/KmGfARK8r8XiCTN70dfsNqEPA14G38H4p2a3q9VMNXWw6zHOqcW9c5N8g5d4pzbkH6H3JU+vZrVvo2dHd8Edf7KO/2RvjCasgg4F95y3kDWAb0y5unLu/2fPwWVoPM7AAze9r8cM4s/C9c/dvZ/qvkyr/dF/+L8FxelvvS+xvSH/8Hrt4kfNn0a3j2Bm3vnOvtnBvinDvbObc8vX8McFx6+zj8O4imNPYcNSdnc5/fG4HDzawzfovseedc/bIz+K3ON9MhhoOakfmPwH5mts0q9xcyM8DF6Wu4xjn3Tedc/WvxdmALM9sE/+5ytnNuQhOZm/s81+ce0MLMXzCz483sxbzX5VaseE2vtFznh5JIl90fmJF3H6z8mm9qvZuZ2V3p8NocIKaR3yXnGzt/yGYQcEle5hn4wh/gnPsvcBlwOTDFzK40s3Wam6vShN6h+BF+y3zdvK/uzrkL8+Zxq8w/hIZ9BBywyrK6OD9G35SVTh2Zlsx4/NvKfs65dfFvpS2dZTJ+OKfeRnm3pwELgC3zcvRyfsdZQz7Fv2Dr1W8FTWlG7qbcBmydjiMehH87X29tT5dZsJzOudfxBXUAfoftjXnT3nHOfQfYAF/S48ysexPLm44f2jqvWJmbWP9C/LuYY/Fb1vl/NFv7PIPP3ZzXcaPSceargB/jh2zWBV5lxWt6TSYDfcysW959+a/5efgNmPp1tWfljZcc8CawqXNuHfw+qgZ/l8zMWPl36yPgh6v8Xnd1zj0J4Jy71Dm3A37IczPgF834eSpS6DK/ATjYzPYzs/Zm1iXdmTKwkfnvAmrMbJT5HYQ9zWzndNoVwB/ydo70NbNDmpljCjDYVhwt0wk/7j4VWJruCPpG3vy3ACea2fD0Bf7b+gnpVvFVwF/MbIM0ywAz26+Rdd8E/DTdwdQDv9Uy1jm3tJnZG5WWzDh8WU5wzn2YN3kKfiy5uQqd80bgNOCr+DFzAMzsODPrmz6P9TsMlzVjeX8GdsOPmxYr85pchx+q+Cb+dV1vCjAwf4dfE+4BNjOzY8ysg5kdjd8Xclcr83XH/2GZCn4HP+lBCE1J3zU9C5xrZp3MbFfg4LxZ3ga6mNlIM+uIH9funDe9J34ocK75wzmjvGl3AyPM7FAz6wCcih/aqXcF8Csz2zLN3cvMjkpv72hmO6frnIcfBmvOa6UiBS1z59xHwCH4v9RT8X+Ff9FYLufc5/i3sQfj3xK+A+ydTr4EP455v5l9jt8ZunNDy2lAfZlMN7Pn0/Wchi/tmfitxzvyctwLXAo8hN8581Q6aVH67y/T+59O31Y+gB+vbcho/Jbco8AH+BfkT5qZuznGACNYfYjlEuDI9AiBS5uxnELnvAk/1vpf59y0vPv3B14zfyTPJfgx7IVNLcw5Nwc/dt6niJnXtP4ngOX4IaOJeZP+i9/hX2dm0xp67CrLmY5/F3UG/mCAM4GDVnmOWpLvdeBP+NfqFPxr4om1WMSx+H0/0/H7PMaSvt6dc7PxY/dX499BzGPloZKf43+HPsdv6IzNyzUNv2P2onTZW+D/cNQv+1/4d2g3p79Lr+Lf0QGsky5vJv6d3nT8u+mqVL+nWlrBzIbjX2Sdi7TV12Jm9iX8W9yatPCkSMzsv8CNzrmrQ2cpNjMbi99pe06Bl9sO/4fgWOfcQ4VcdqULPcxStswfG93JzHrjtxzuLMEibwf8DH/Ym4q8iMxsR/wH4sY2NW85Soc0hpg/dn9//Dvq2wq07P3MbN10X1X9ePrThVh2NekQOkAZ+yH+ELNlwCP4t5klI91pOAX/9nP/wHEqmpmNwR8PfXo6RFeJavDH6a+H33KOXAOnl2ihXfH7UDoBr+OPfFtQoGVXDQ2ziIhUAA2ziIhUAJW5iEgFUJmLiFQAlbmISAVQmYuIVACVuYhIBVCZi4hUAJW5iEgFUJmLiFQAlbmISAVQmYuIVACVuYhIBVCZi4hUAJW5iEgFUJmLiFQAlbmISAVQmYuIVACVuYhIBVCZi4hUAJW5iEgFUJmLiFQAlbmISAVQmYuIVACVuYhIBVCZi4hUAJW5iEgFUJmLiFQAlbmISAVQmYuIVIAOoQNIdYjipDuwETAAGJj373pAR6A9/vXYIe92/r8OmA3MyvuaAdSt8vVZLptZ3lY/l0ipMOdc6AxSIaI46QHsAHwZ2AJf1vXF3auNYiwG3gReBV5Jv17NZTOT2mj9IkGozKVFojjpBmyHL+76r80o3aG7OfiCry/5F4AJuWxmSdBUIgWiMpdmieKkL7Af8DVgR2A4fvijnH0OPAz8B7g/l828FTaOSMupzKVBUZwYvrQPBA7Ab3mX6lZ3oXxIWuzAg7lsZnrgPCLNpjKXL0Rx0gHYCzgcOAToHzRQWMuB54Hbgety2cyHgfOIrJHKXIjiZBfgJOAwoE/gOKXIAQ8B1wLjc9nM/LBxRFanMq9S6ZEnxwI/ArYNHKecfA7cClyby2YeCx1GpJ7KvMpEcTICiIDjgJ6B45S794AxwBgNw0hoKvMqEMVJF+AofInvGjhOJVoOjAf+mMtmngsdRqqTyryCpUMppwM/xX/SUorvAXypPxA6iFQXlXkFiuKkM3AK8Cugb+A41WoCcG4um7k3dBCpDirzCpIeWvh94Df4j9FLeE8D5+SymftDB5HKpjKvAFGctAOOAc4FhoRNI414AhiVy2aeDR1EKpPKvMxFcXIocD6wZegs0qTlwJVANpfNzAwdRiqLyrxMRXEyCPg7/nwpUl6mAmfiD2nUL6AUhMq8zKRDKqcCMdAjcBxpnceBU3LZzCuhg0j5U5mXkShOhgMJOla8kiwF/orfSfp56DBSvlTmZSCKk474wwx/DXQKHEeK41PgtFw2Mz50EClPKvMSF8XJTsDVwIjQWaRNXAmcnstmFoYOIuVFZV6i0mPGzwd+QeWfR1xW9grwrVw282boIFI+VOYlKIqT/sBYYPfQWSSYecCpuWxmTOggUh5U5iUmipN9gBvRx/DFuw5/xMu80EGktKnMS0R6mbZfA79DwyqysjeBo3PZzMuhg0jpUpmXgChOuuPPi31E6CxSshYCP8llM1eHDiKlSWUeWBQnG+OvM6mjVaQ5LshlM9nQIaT0qMwDiuJkT/xFDXSucVkb1wIn57KZpaGDSOlQmQcSxclIYBzQJXQWKUv3AEfp4tJST2UeQBQnRwH/ADqGziJlbQIwMpfNTAsdRMLTURNtLIqTE4CbUJFL6+0EPJHud5EqpzJvQ1Gc/BgYDbQPnUUqxmbAk1GcbBs6iISlMm8jUZychT87noXOIhWnBngkipM9QgeRcDRm3gaiOInxZz0UKaY5wD65bOaZ0EGk7anMiyyKk78Ao0LnkKoxA9hLF7yoPhpmKaJ0aEVFLm2pD/CfKE42DR1E2pa2zIskipPv4A8/1Bi5hPAhsFsum/kkdBBpGyrzIoji5KvAf9BVgSSsV4A9ctnM7NBBpPg0zFJgUZxsDtyGilzCGwHcHsVJ59BBpPhU5gUUxUk/4F6gd+gsIqk9geujONHveoXTf3CBpKexvQsYHDiKyKqOAs4OHUKKS2PmBRDFSXvgX8DBobOINGI5sF8um3kgdBApDm2ZF8YFqMiltLUDboziZEDoIFIc2jJvpShOvgHchw5BlPLwBP5DRToXeoXRlnkrRHHSF3+5NxW5lIuvABeGDiGFpzJvnWvxJzkSKSdnRHFyWOgQUlgq8xaK4uQ04MDQOURa6JooToaEDiGFozHzFojiZGv8VV70YQwpZy8Cu+aymYWhg0jract8LUVx0hW4GRW5lL9tgXNDh5DCUJmvvb8Aw0OHECmQM6I4GRE6hLSehlnWQhQnBwN3hM4hUmBPAV/JZTMqgzKmLfNmiuKkG3BZ6BwiRbAr8KPQIaR1VObN91vgS6FDiBTJBVGc6DDbMqYyb4YoToYDPwudQ6SIegGXhA4hLacyb57LgY6hQ4gU2beiONFnJ8qUdoA2IYqTI4BxoXOItJGJwJa5bGZ+6CCydrRlvgbpFVouCp1DpA0NBn4TOoSsPZX5mp0GbBI6hEgbOy29apaUEZV5I9IzIurqLFKNugFnhg4ha0dl3rhfA+uEDiESyI+0dV5eVOYNiOJkPeDk0DlEAuoG/DJ0CGk+lXnDTsO/mEWq2Y/0QaLyoTJfRRQn3YEfh84hUgK6oq3zsqEyX90PgD6hQ4iUiB9FcbJh6BDSNJV5nihOOqKP7Yvk6wKcFTqENE1lvrLjgIGhQ4iUmB9o7Lz0qcxTUZwYOrZWpCFdgJNCh5A1U5mvcAiweegQIiXqB1GctA8dQhqnMl/hjNABRErYRsDI0CGkcSpzIIqTTYDdQ+cQKXFR6ADSOJW5d1zoACJlYL8oTgaHDiENU5l7x4YOIFIGDDg+dAhpWNWXeRQnOwGbhc4hUiZU5iWq6sscbZWLrI0hUZzsETqErK6qyzyKkw7At0PnECkzJ4QOIKur6jIH9gU2CB1CpMwcpmPOS0+1l7mOYhFZe72BXUOHkJVVbZmnp7o9NHQOkTJ1QOgAsrKqLXPg6+gCFCItdWDoALKyai7zr4UOIFLGttV5zkuLylxEWkpDLSWkKss8ipO+wFahc4iUOZV5CanKMgf2xn80WURabt/0sxpSAqq1zDXEItJ6vYDdQocQr1rLfO/QAUQqhIZaSkSblbmZTTSzfdpqfY2J4mQAOrGWSKHow0MloskyT0t4gZnNNbMpZnaNmfVo4jHXmtn5hYtZUBpiESmcbUIHEK+5W+YHO+d6ANsDOwJnFy9S0WmIRaRw1tUFK0rDWg2zOOc+Ae4FfmJmz+VPM7MzzOw2M/sB/rSyZ6Zb83fmzbatmb1sZrPNbKyZdcl7/Mlm9q6ZzTCzO8ysf940Z2Y/MrN3zGymmV1uZi09GmWHFj5ORBq2begAspZlbmYb4T/GeymwsZkNz5t8HHC9c+5K4B/ARc65Hs65g/Pm+RawP7AxsDXpqTTN7GvABen0DYFJwM2rrP4g/LuCbdL59lub7PDFKW83X9vHicgabRc6gDS/zG8zs1nA48AjwO+BsaRnHTSzLYHBwF1NLOdS59ynzrkZwJ2s+It+LDDaOfe8c24R8CtgVzMbnPfYC51zs5xzHwIP0bKtgWFApxY8TkQapy3zEtDcMj/UObeuc26Qc+4U59wCYAxwTDrc8V3glrSI16Qu7/Z8oH5Han/81jgAzrm5wHRgQDMeuzZGtOAxIrJmKvMS0OJDE51zTwOLgT2AY4Dr8yev5eI+BQbVf2Nm3YH1gE9amq8R+gi/SOF9KYqTPqFDVLvWHmd+HXAZsNQ593je/VOATdZiOTcCJ5rZtmbWGYiB/znnJrYy36o0Xi5SHNo6D6y151W4Hjgv/cqXALem4+wPO+fWeBEI59yDZvYbYDz+KiZPUpxrcw4twjJXM/OzT3nszhuZ9skkunTvwa77H8XGW27PnJnTuPHis+jQqfMX8263x/7s8LWDG1zOwvlzefifY/j43dfo0r0HO3/jCDbdZmcA5s6awf03X8HsaXUM2/4r7Hbg0V887u5r/8KO+xzGBgMHF/XnFMmzDfDf0CGqWZNl7pwbvIbJU4F5wA2rPOYdVvlLvepynHPnrvL9FcAVjWSwVb4/YY2hG1f0Ml++bBn33XA5W+y0Jwed+DMmf/AW917/V47s91vatfdP9/fPvpR27Zu+hOLjd95I+w7t+d6v/sy0yR9x73WXsl7NQPr0G8Dzj9zDsO12Zeg2OzP+8vMYuvXObDBwMO++PIGevfuqyKWtDWp6Fimm1g6zRMAzaXmXtChO+gPdi72eWdPqmPf5LLb+yr60a9eOAUOGUzNoKG+/8PRaLWfJ4kW8/9pz7LjPoXTs3IUNB2/KoOHb8PaLTwHw+cxpDNhkOJ27dKPvgMHMmTmVxQsX8MKj97LzNw4vxo8msiY1oQNUuxYPs5jZRPxpZMvlOpptMsTi3Or7fp1zzJiyYl/uDf/3S8yMgUOHs8v+R9G1e8/VHjN72hTM2rHu+it+R9ar2YjJH7wFQJ9+A/j43dfp2mMdpn4ykR32PogJD9zG1rvtQ+euuhqetDmVeWCtOZplcHqo4guFDFRE/dpiJev2raFr9568+Nh9LFu2lI/eeY3JE99m6ZLFdO3Wg8OjsznuF3/kiFPPZsmiRTx4y9UNLmfJ4oV06tJ1pfs6denK4sULAdhuzwOYPOlt7rj6IrbcZW+WL1vGjLqPGbT5Njww9kpuv+qPvPqUhjClzajMA6umE8v3bouVtG/fgf2PO5XH77yJFx+9j74DBjNkqy/TvkNHOnbu8sVYdrcevdj94GO47sIzWLxwwWrF3bFTF5YsWrjSfUsWLaBTJ38GhC7derDvt38EgFu+nNuvvoivHvJdXnj0Xvr0G8DeR3yfcZf/nv5DNqfPBv0RKTKVeWDVdD7zNilz8MMhh5x8JieefQkHnfhT5sycxgYDN159xnS3rmvgsPxe6/dj+fJlzJo25Yv7pk/+mN79Vi/m1595lH4bbUKffgOYUfcJfQcMpn2HDqxXM3Cl4R2RIuoVxUmXpmeTYqmmMl+3rVY0ve4jli5ZwpLFi3jxsX8z//PZDNt+N6Z89D6zptbhli9n4fy5PHHXTfTfeBidu6w+xt2xU2c23mJ7nn3wdpYsXsTkSe8w8Y0X2WzblU8fvWDuHF7730N8+WvfBKBn7/X59P03WbJoIZ99MpF1evdtk59ZBG2dB6VhliJ4+4WneePZx1i+fBkbDtqUg078Ke07dGTOjKlM+M+/WDB3Dp06d2Xg0C3Y5+gffPG45x++m8kT32HkCaMA2OObx/LwP69lTPxTunTrwR6HHEeffgNWWtdT997KDnsfTMfOfqNo+z0P5P6bcrw24RE23+ErOkRR2lINMDF0iGplDR19UYmiOBmLP9uiiBTHYbls5rbQIapVNQ2ztNmWuUiVapMjxqRh1VTmbTZmLlKliv6hPGlcNZW5tsxFiqua9sGVnGoqc22ZixSXyjygairzps9sJSKtoTIPqJqe/IVNzyIlxLHy1aWk9M0PHaCaVVOZN3VJOykthv8DPB4Yl8tm/hc4j0hJq6bjzN/EX9BZytOHwD+BccCTuWxmxQu3blRXYB9ggzDRpAXupqZW77wKqJrK/CVg69A5pCA+ZUWxP5bLZpZTN6o9sCdwJHAY+mh5qduDmtrHm55NmquaynwCsGPoHFJwU4Db8MX+UC6bWUbdqHbA7vhiPxwYsIbHSxi7UVP7VOgQlaSayvxRYI/QOaSopgG344v9wVw2s4S6UQbsgi/2I9DlzUrFztTUTggdopJUU5n/Bz+uKtVhJnAHvtjvz2UziwGoG7UjK4p9SLB0sgM1tc+HDlFJqqnM7wJGhs4hQcwB7sQX+325bMYfplo3ajt8sR8JbBYsXXUaRk3t26FDVJJqKvPx+PFTqW5zgXvwxX53Lpvxx0bXjRrBimLfIlg6YK/Dx/H083V0aO8/0zdgw+689fj3Gpz3L39/nj9e/hwLFi7liJFDyV24N507+yOOR/3mEcbc+gabD+3NuKtGMmDDHgD8Y/ybTHhhCpecv2fb/EAN60NN7cyQASpNNX0CdHroAFISeuBPhXwLMDWKk/FRnHwnGj3iA2pqz6Gmdkt8mf8WeDlUyMv+sBdz3zuFue+d0miR//uhSVx42bM8eOvhTJxwIu9Pms05Fz8NwIQX6nju5c+oe+kkdt+pPxf89RkAZs9ZxMVXPM/vz9ylzX6WBiwFZoUMUImqqcwnhQ4gJacb/t3ajfhivz2Kk+9Go0d8Sk3tedTUbgNsCvwKeC5k0IaMufV1Mt/Zki2HrUfvdbvwm5/uxLVj3wDggw/nsPtO/encuQNf330j3p80G4BfX/gkv4i2p9c6nUNGn05NbXUMCbShairziaEDSEnrAnwTuA74LIqTu6M4OTEaPWI6NbUXUlP7ZWBj4BfA/6CBC7cW0K/iJ1l/i7/zlW/ewsNPftzgPK+9NYNttlxxWcBttujLlKnzmT5jAVsO68Nj//uEBQuW8uDjH7HlsPV49sUpvPXeTI45fPNiRm+OaaEDVKJq+ji/tsyluToBB6Zff4/i5CFgHIy4LZfNXAxcTN2ojfBHxBwJ7MYXl+duvT+evTtbbNaHTh3bcfPtb3Pw8Xfw4gPHMGTwyif+nDtvCb16dvri+17r+Nufz1vCVpuvzxEjh7LLQWPZfGhvLo/35pAT7+Tqi/fh0qtfZNxd77BR/55cfsHerNurzbfSVeZFUE1b5ipzaYmOwDeAK4HJUZz8N4qTU6LRI5ZQU1tLTe3uwEDgJ8AjwPLWrnDn7Wvo2aMTnTt34Hvf2oKv7Nifex6cuNp8Pbp3ZM7cxV98P+dzf7tn944A/PSH2/PSg8cy9u8HMvaOt9lj5/4sd44rb3iVB289nOGb9uHCy55pbdyWmBpipZWumsr8U/yOF5GWag/sDVwOfBLFyaNRnJwWjR5h1NReRk3tXkB/IAIepECvNzNo6KCzLYf14aXXVmzkvvT6NPr17cZ6fbquNN+UqfP4+/Wv8Nuf7syrb05n6y3Wo2PH9uy4bT9efj3IRrK2zIugaso8l80sAxoefBRZe+3wnyi+BPgoipMnozj5WTR6RGdqaq+gpnYfYEPgJOA+YElzFjpr9iL+/dAkFi5cytKly/nH+Dd59OlP2G+v1T+4evyRw0lueo3X35rOzFkLOb92AiccPXy1+X52zmP87ue70K1bRzb+0jo88+IU5s5bzMNPfswmg3q14ilosSkhVtrWzGwvM2uzzqmmMXPwQy2DQ4eQimPArunXn6I4eQY/xj4ul80kQELdqHWBQ/Bj7PsCDQ5UL1myjLP/+CRvvjuT9u2NzYf24bZrDmLY0N58+PEcttjzBl5/5Di+NHAd9v/aYM48ZQf2PnI8CxYu44iRQ/jdz1c+5PChJz5i1pxFHHbgUAB22q6GkV/fmI12GM2wIb0Zd9WBRXtS1uC9tZnZzDcUNiAAAA2bSURBVCYCXYFNnHPz0vtOAo5zzu1VyGBmthfwX/y52R3+Hf2FzrlrmvFYB2zqnHu3kJmaq2o+NAQQxckY4PjQOaSqvID/gNK4XDbjP/FYN2od4GB8se+PP5KmmuxKTe3TzZ05LfOewJ+cc3F6XzHL/Abn3EAzM/wf4HHA1s6515t47Eplnr+sQmZsTNUMs6S0E1Ta2nbAH4C3ojh5JYqTc6LRIzaipvYf1NQeBvQFvo0vjGq5Uk9LPsb/f8DPzazBa/ma2W5m9oyZzU7/3S1v2sNmdp6ZPWFmn5vZ/Wa2flMrdN5t+PP8bGFmd5vZT1ZZ78tmdqiZPZre9ZKZzTWzo/PmOcPMPjOzyWZ2Yt79vczsOjObamaTzOxsM2uXTjvBzB43s4vNbKaZfWBmB6wpb7WV+RuhA0hV2wo4F3g1ipPXozg5Lxo9Ygg1tWOpqT0KX+xHAjcDnwfMWUwzqKmd0YLHPQs8DPx81Qlm1ge4G7gUWA/4M3C3ma2XN9sxwIn4C5h0amg5DSy3nZkdhr8Y/CvAGOC4vOnb4E+vfI9z7qvp3ds453o458am39cAvdL5MsDlZtY7nfbXdNom+HPxH59mrLcz8BawPnARkKTvFhpUbWVecp/ik6o1HDgbeDGKk7ejOLkgGj1iODW146mp/Q6+dA4BrgdmhwxaYGscqmjCb4GfmFnfVe4fCbzjnLveObfUOXcT8CZ+KKveNc65t51zC/Cncth2Devpb2az8EfdnAN81zn3Fv70ypua2abpfN8FxjrnFjeyHPA7vn/vnFvinLsHf26gYWbWHjga+JVz7nPn3ETgT+ky601yzl3lnFuG/0OyIdCvsRVV2w7Qd/Bn0FsndBCRPJsCZwFnRXHyATAeRowH7sxlM3dQN6oT/vTNR+ILvk+4qK32Sksf6Jx71czuwj9X+e+y+7P6EOokVr4oSf4l6ubjz9HTmE8bGud2zi0ys1uA48zsd8B38P8nazLdOZd/iGr9utfHv0PIz91oZufc/HSjvNHcVbVlnl43UudQllK2MX4I4ClgUhQntdHoETtFo0fcS03t9/FbZvsBV1GeH75pcZmnzgFOZuXS+5TVLzryJeCTVq6rIWOAY4GvA/Odcy29WtI0/FZ7fu5WZa6qMk89GzqASDNtBJwOPAZ8HMXJZdHoEbtHo0c8QE3tD/Bvu78O5Fh5y7OUvdqaB6dHiowFTsu7+x5gMzM7xsw6pDsftwDuas26Gln/U/hP+f4JPwSWbwp+/Ls5y1mGH+75g5n1NLNBwM+AG1qarRrLvNmHRImUkP7AqcBDwKdRnFwRjR6xdzR6xCPU1J6C31LdE79TrRhbpIWwFH+oZmv9Huhe/41zbjpwEHAG/lTXZwIHOeeK9UnT64ARrF685wJjzGyWmX2rGcv5CTAPeB94HH/2ztEtDVVVx5kDRHFSA0wOnUOkQMrpuqfPUFO7U+gQrWVmxwM/cM7tHjpLvqorc4AoTt5F13+UylN/3dPx+OueLgJK6bqnf6KmtslDAkuZmXXDf0L0b86560LnyVetZX4t0PDlW0Qqwxz8mPE44N4Sue7pIdTU3tHG6ywYM9sP+CfwAHDEKkepBFetZZ4Brg6dQ6SNlMJ1Tx2wnq77WTzVWuYbAR+GziESwHz8WRzHAXflshn/SdO6UcNZUexbF2G9r1BTW4zlSqoqyxwgPbPdl0PnEAloIXA/vtjvyGUz/pOmdaOGsqLYdyjQuv5GTe2pBVqWNKCayzyLPwGSiMBi/FjwOOD2XDbjz59SN2owK4p9J1p+ebxvU1M7tunZpKWqucyH07rzRIhUqqX449nHAf/KZTP+k6Ytv+7pcqA/NbVVcVGKUKq2zAGiOHkDCH6pcpEStgx4FF/s/8xlM/6TpnWj+gOH44t9D9b8AcSnqKndbQ3TpQCqvcxj4Fehc4iUieXAE/hi/1sum/GH5tWN2oAVxb4nq5/A75fU1F7UhjmrUrWX+Y7AhNA5RMrM27lsZliDU+pGrc+Ky+N9HegIbEZN7TttF686VeO5Wb6Qy2aeAT4KnUOkzNzc6JSa2mnU1CbU1B6APyf7kSrytlFt5zNvyG34E96ISPM0Xub5ampn4U8tIG2gqrfMU3qxiTTfS7lsRpdfLEEqc7+n/s3QIUTKxD9CB5CGVX2Zp1cfujx0DpEysIBWnG9biqvqyzw1hsq9GrpIodyQy2amhw4hDVOZA+nJhq4NnUOkxF0aOoA0TmW+wuX403SKyOoezGUzrbp+pxSXyjyVy2beAv4TOodIibokdABZM5X5yi4LHUCkBL1LEa50L4WlMl/Z3cAHoUOIlJi/pkd9SQlTmefJZTPL0WGKIvnmANeEDiFNU5mv7krgs9AhRErENV9cWk5Kmsp8FekL9/zQOURKwDzgwtAhpHlU5g27Ang/dAiRwC7+4mIUUvJU5g3IZTNLgN+EziESUB3wf6FDSPOpzBt3E/BC6BAigZyby2bmhQ4hzacyb0R6KNZZoXOIBPAGcHXoELJ2VOZrkMtm7gceCJ1DpI39MpfNLAsdQtaOyrxpZ6Fztkj1eCSXzdwZOoSsPZV5E3LZzHPA2NA5RNqAA34eOoS0jMq8eX6O/yScSCW7KZfNPBs6hLSMyrwZctnMJ2hnqFS2qcCo0CGk5VTmzXcF8FjoECJF8sNcNjM1dAhpOXNO+/aaK4qTYcBLQOfQWUQK6B+5bOa40CGkdbRlvhbSC1j8NnQOkQL6FPhJ6BDSeirztXcx8EToECIFclIum5kZOoS0nsp8LaXnPD8emBs6i0grXZ3LZu4NHUIKQ2XeArls5n3gjNA5RFphIvCz0CGkcFTmLZTLZq4E/hU6h0gLOOBEXXSisqjMW+d44LXQIUTW0gW5bObh0CGksFTmrZDLZuYChwDagSTl4l50rv6KpOPMCyCKk33xvyTtQ2cRWYN3gR1z2cys0EGk8LRlXgC5bOY/wC9D5xBZg7nAoSryyqUyL5BcNvMn4IbQOUQasBw4LpfNaP9OBVOZF9bJwHOhQ4is4pe5bOb20CGkuDRmXmBRnAwEngX6hc4iAlyZy2Z+GDqEFJ+2zAssl818DHwT0DG8EtoDwKmhQ0jbUJkXQS6bmQAcAOjq5hLKE8BhuWxmaegg0jZU5kWSy2aeAEYC80NnkarzJHBA+jkIqRIq8yLKZTOP4IdcFobOIlXjKWB/fVS/+qjMiyyXzTwIHAosCp1FKt7TqMirlsq8DeSymX8DRwJLQmeRivU/YL9cNqMLj1cplXkbyWUzdwFHA9ohJYU2ARV51VOZt6FcNvMvfKFrDF0KZQLwjVw2Mzt0EAlLZd7GctnMP4G9gc9CZ5Gy929gXxW5gMo8iFw28zSwMzoXurTcJcBIDa1IPX2cP6AoTtYBbgH2C51FysYS4NRcNnNV6CBSWrRlHlC6VTUS+FvoLFIWpuPHx1XkshptmZeIKE5OA/6MLnAhDXsDODiXzbwXOoiUJpV5CYniZCRwM9AjdBYpKfcB39aOTlkTDbOUkFw2czfwZeCF0FmkJDjgT8BBKnJpirbMS1AUJ52AC4FRgAWOI2F8BJyQy2b+GzqIlAeVeQmL4uQA4Fpgg8BRpG1dB5ymrXFZGyrzEhfFSV/gCuDw0Fmk6KYCP8hlM7eFDiLlR2VeJqI4ORb4K9A7dBYpituAH+ayGX0yWFpEZV5GojjpD1yJPzZdKsMc/JDKmNBBpLypzMtQFCcHARcDw0JnkVa5DTg9l818GDqIlD+VeZmK4qQjcApwDhp6KTevAKN0pIoUksq8zEVx0gc4F4iADmHTSBOmA78F/p7LZpaFDiOVRWVeIaI42Rz/AZMDQ2eR1cwHaoGLdLihFIvKvMJEcbIffjx9q9BZhKVAAvwul81MDh1GKpvKvAJFcWL4LfSfA3uFTVOVFgDXAxfnspl3QoeR6qAyr3BRnGyPL/Wj0Jh6sX0KXI4fE58eOoxUF5V5lYji5EvA6cDJQM/AcSrNc/gx8bG5bGZJ6DBSnVTmVSaKk174Qj8dGBg4TjlbDtwO/CWXzTwWOoyIyrxKRXHSHvga8G38eV/WDZuobLwF3Apck8tm3g8dRqSeylzqT7m7H77Yv4kujrGq+gK/NZfNvBw6jEhDVOaykihOugIH4Yv9QKBL2ETBqMClrKjMpVFRnPTEF/o++CGZTcImKqpFwDPAQ8A4FbiUG5W5NFsUJ4Pwpb4XsBswNGig1pkOPJF+PQ48m8tmFoeNJNJyKnNpsfTCGbsBuwI7AJsCG1F615ZdBrwHPIUv7seBt3LZjF78UjFU5lJQUZx0BoYAm+HLPf9rQBFXvRh/3cxJwETgbfy491vAe9rqlkqnMpc2E8VJd/yx7T0b+Von73Zn/Amq5gPz0q+Gbs/Bl/hkbWlLNVOZi4hUgFIb2xQRkRZQmYuIVACVuYhIBVCZi4hUAJW5iEgFUJmLiFQAlbmISAVQmYuIVACVuYhIBVCZi4hUAJW5iEgFUJmLiFQAlbmISAVQmYuIVACVuYhIBVCZi4hUAJW5iEgFUJmLiFQAlbmISAVQmYuIVACVuYhIBVCZi4hUAJW5iEgFUJmLiFQAlbmISAVQmYuIVACVuYhIBVCZi4hUAJW5iEgFUJmLiFQAlbmISAVQmYuIVACVuYhIBfh/ZmsVG4GTxLAAAAAASUVORK5CYII=\n",
"text/plain": [
""
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"plt.figure(figsize=(5, 5))\n",
"\n",
"sizes = by_language['count']\n",
"labels = by_language['is_python']\n",
"\n",
"plt.title('Percentage of Python vs Non Python languages')\n",
"plt.pie(\n",
" sizes, \n",
" explode=(0, 0.1),\n",
" labels=labels, \n",
" textprops={'size': 12},\n",
" autopct='%1.1f%%', \n",
" colors=['#68859c', '#ffe76f'])\n",
"\n",
"plt.show()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# Scatter"
]
},
{
"cell_type": "code",
"execution_count": 9,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"\n",
"\n",
"
\n",
" \n",
" \n",
" | \n",
" hash | \n",
" email | \n",
" datetime | \n",
"
\n",
" \n",
" \n",
" \n",
" 0 | \n",
" 3ff3ab79 | \n",
" migonzalvar@gmail.com | \n",
" 2020-10-01T08:47:37+02:00 | \n",
"
\n",
" \n",
" 1 | \n",
" b9cbb359 | \n",
" david.barragan@kaleidos.net | \n",
" 2020-08-20T16:53:14+02:00 | \n",
"
\n",
" \n",
" 2 | \n",
" 328f2a62 | \n",
" migonzalvar@gmail.com | \n",
" 2020-09-16T14:01:29+02:00 | \n",
"
\n",
" \n",
" 3 | \n",
" 6c8fb467 | \n",
" migonzalvar@gmail.com | \n",
" 2020-09-16T09:10:01+02:00 | \n",
"
\n",
" \n",
" 4 | \n",
" 905a3d84 | \n",
" migonzalvar@gmail.com | \n",
" 2020-09-15T10:44:48+02:00 | \n",
"
\n",
" \n",
"
\n",
"
"
],
"text/plain": [
" hash email datetime\n",
"0 3ff3ab79 migonzalvar@gmail.com 2020-10-01T08:47:37+02:00\n",
"1 b9cbb359 david.barragan@kaleidos.net 2020-08-20T16:53:14+02:00\n",
"2 328f2a62 migonzalvar@gmail.com 2020-09-16T14:01:29+02:00\n",
"3 6c8fb467 migonzalvar@gmail.com 2020-09-16T09:10:01+02:00\n",
"4 905a3d84 migonzalvar@gmail.com 2020-09-15T10:44:48+02:00"
]
},
"execution_count": 9,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"import pandas as pd\n",
"\n",
"by_datetime = pd.read_csv('commits_with_datetime.csv', sep=';', names=['hash', 'email', 'datetime'])\n",
"by_datetime.head()"
]
},
{
"cell_type": "code",
"execution_count": 10,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"\n",
"\n",
"
\n",
" \n",
" \n",
" | \n",
" datetime | \n",
" hour | \n",
"
\n",
" \n",
" \n",
" \n",
" 32 | \n",
" 2020-08-19 08:05:16+00:00 | \n",
" 8 | \n",
"
\n",
" \n",
" 31 | \n",
" 2020-08-19 08:09:42+00:00 | \n",
" 8 | \n",
"
\n",
" \n",
" 30 | \n",
" 2020-08-19 08:22:30+00:00 | \n",
" 8 | \n",
"
\n",
" \n",
" 29 | \n",
" 2020-08-19 09:41:23+00:00 | \n",
" 9 | \n",
"
\n",
" \n",
" 28 | \n",
" 2020-08-19 11:01:53+00:00 | \n",
" 11 | \n",
"
\n",
" \n",
"
\n",
"
"
],
"text/plain": [
" datetime hour\n",
"32 2020-08-19 08:05:16+00:00 8\n",
"31 2020-08-19 08:09:42+00:00 8\n",
"30 2020-08-19 08:22:30+00:00 8\n",
"29 2020-08-19 09:41:23+00:00 9\n",
"28 2020-08-19 11:01:53+00:00 11"
]
},
"execution_count": 10,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"from datetime import datetime as dt\n",
"\n",
"by_datetime['datetime'] = pd.to_datetime(by_datetime['datetime'], utc=True)\n",
"by_datetime['weekday'] = by_datetime['datetime'].dt.weekday\n",
"by_datetime['hour'] = by_datetime['datetime'].dt.hour\n",
"\n",
"august_to_september = (\n",
" (by_datetime['datetime'] > dt.fromisoformat('2020-08-12T00:00:00+02:00')) & \n",
" (by_datetime['datetime'] < dt.fromisoformat('2020-09-01T00:00:00+02:00')))\n",
"\n",
"last_month = (by_datetime\n",
" .copy()\n",
" .loc[august_to_september]\n",
" .loc[:, ['datetime', 'hour']]\n",
" .sort_values('datetime'))\n",
"\n",
"last_month.head()"
]
},
{
"cell_type": "code",
"execution_count": 11,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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138Dec9M6iRJkiRpED300ENcddVVQDY33qpVq4b0ePapkyRJkqRBtGLFClasyOYJv+eeexg7diwrV64csuPZUidJkiRp2N24egvnfv4uFn70Z5z7+bu4cfWWQdnvt7/9bU499VROO+003v/+97Nx40YuvPBCTj31VC688EI2bdoEwJVXXsmf/umf8prXvIZFixbxq1/9ive9732ceOKJXHnllYf3N3bsWD7ykY9wxhln8LrXvY4HH3yQCy64gEWLFnHzzTcDWSJ3ySWXsGHDBr7yla/wxS9+kdNPP51f//rX/PCHP+SUU07htNNO49WvfvWgnKMtdZIkSZKG1Y2rt/CxG56gsaUNgC11jXzshicAuHz57AHv96mnnuJzn/sc9957L1OmTGHjxo186EMf4r3vfS9XXHEF1157LVdddRU33ngjAHv37uWuu+7i5ptv5tJLL+Xee+/l61//OmeeeSaPPvoop59+OgcOHOCCCy7gH//xH3nLW97CJz7xCX7xi1/w9NNPc8UVV3DZZZcdPv6CBQv44Ac/yNixY/mbv/kbAJYtW8btt9/O7NmzqaurG/C55bOlTpIkSdKwuub2Zw4ndB0aW9q45vZnXtJ+77rrLt7+9rczZcoUACZNmsR9993Hu971LgDe85738Jvf/Obw+pdeeikRwbJly5g+fTrLli2jrKyMk08+mQ0bNgAwYsQI3vCGNwBZgnb++edTWVnJsmXLDq/Tm3PPPZcrr7ySr33ta7S1tRVdvy9M6iRJkiQNq611jf1a3lcppaKjSeaXjxw5EoCysrLDv3e8bm1tBaCysvLwNvnr5a/Tm6985St89rOfZfPmzZx++unU1tb276QKMKmTJEmSNKxmTRjVr+V9deGFF3L99dcfTpz27NnDypUr+cEPfgDAd7/7Xc4777yXdIxiqquraWhoOPx63bp1nHXWWXzmM59hypQpbN68+SUfwz51kiRJkobV1Rct6dSnDmBUZTlXX7TkJe335JNP5uMf/zjnn38+5eXlnHLKKXzpS1/ife97H9dccw1Tp07lm9/85ksNv1eXXnopb3/727npppv48pe/zBe/+EWee+45UkpceOGFnHbaaS/5GJFSGoRQh9aKFSvSQw89NNxh6CW45557uOCCC4Y7DB2FrBvqjfVDPbFuqDfWj6PDmjVrOPHEE/u8/o2rt3DN7c+w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x43jUFMT27fWdC+fOo2x1eNoajzIjm3dc9Kp02cwesxYDh7Yz64d27uVT585i6pRo9nfUE/tru5Pss6YNYeRVVXsr6+ndnf38llz5lE5YgT1dXXs3bO7W/nseQuoqKigbu8e9u3d06187oJFlJWVsbd2N/X76rqVz190HAC1u3ayv6G+U1lEMG/hYgB279jOgQP7O5WXl5UzZ0HWHXPntq00Nh6ktqaGppFZlamoqGT2vPkAbN+6hUNNjZ22HzFiJDPnzAVgW81mmpsPdSofWTWKGbNmA7Bl00ZaW1s6lY8aNZppM2cBULNhPW3tbZ3Kx4wZy5TpMwDYtH4dKaVO5WOrxzF5aja8+8YXnu/23owbP+Goqns/f7iG/c0vnuOoCVOgajS/emozow6O7Lb90Vb38usGDH7dy2fdK73rXn79KLXrXj7r3uDXvfy64f+51r2uda+jfpTidS+fdW/w615H3SjF615viiV1ERETU0p7uyycRJGJy3vZ4UTgzcBCoA74YUT8QUrpO13W+wDwAchuUqurOoe6/1ALFYdaaG9v50Bza7fjlB9qofxQC22trQXLK5tbiEMttDS3FCwf0dxCOtRCcw/lIw+1kka00HSocPmoQ620VbTQeKjw8RsOtdBS1sKBHsr3N7fQHOXs7+H4DYdaqEzRY/n+Qy2UtyX29xBfw6EWysrKei3P4ugeX0R0Kj/YpbysLHUqb2pupb09Hd5PRfuL+z9wqIVDXbZvpixv+xZaupS3RsuL2ze30NraubytvJVRecdv7/IlT5WtjDy8fWu3/2BobmVEXnlXZUdZ3Yuy6PT9GD26khFVlbQ09fzZHk11L79udJRncQxO3ctn3Su9615+/Si1614+697g1738uuH/uda9rnWvo36U4nWv6/bWvcGte4evHSV43WvrmtnmiW5frvzCLLF6P/A3wCO5xWcA/whcm1L6zx437nmf7wDekFL6o9zr9wJnp5T+rKdtRs48Ps284l8Ov549YRT3fvS1/T20htE999zDBRdcMNxhHJPO/fxdbKlr7La8VL4n1g31xvqhnlg31Bvrh3pSynUjIh5OKa0oVNZra1tK6avAp4H/DWzI/XwG+OxAErqcTcDZETE6IgK4EFjT143Ly4KrL1oywENLx56rL1rCqMryTstGVZb7PZEkSXqZKDqlQUrpFuCWwTpgSumB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\n",
"text/plain": [
""
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"import matplotlib.pyplot as plt\n",
"import numpy as np\n",
"from datetime import timedelta, datetime as dt\n",
"\n",
"# SCATTER DATA\n",
"xs = last_month['datetime']\n",
"ys = last_month['hour']\n",
"\n",
"plt.figure(figsize=(15, 5))\n",
"\n",
"# SCATTER PLOT\n",
"plt.scatter(xs, ys)\n",
"\n",
"# TITLE AND LEGEND\n",
"plt.title('COMMITS DISTRIBUTED BY HOURS OF THE DAY (AUGUST 2020)')\n",
"plt.legend(['commits'])\n",
"plt.ylabel('HOURS (GMT +02:00)')\n",
"plt.grid(axis='x')\n",
"\n",
"# DASHED LINES SHOWING WHERE THE WORKING HOURS START AND END\n",
"since = xs.min()\n",
"until = xs.max()\n",
"\n",
"plt.hlines(y=8, xmin=since, xmax=until, linestyle='--', alpha=0.2, color='black')\n",
"plt.hlines(y=15, xmin=since, xmax=until, linestyle='--', alpha=0.2, color='black')\n",
"\n",
"# WORKING OURS RANGE\n",
"plt.gca().fill_between(\n",
" xs, \n",
" 15, \n",
" 8, \n",
" alpha=0.5,\n",
" color='#9ac9dc')\n",
"\n",
"# WORKING HOURS CAPTION\n",
"plt.text(until - timedelta(days=0.5), 11, s='WORKING HOURS', size=18, ha=\"right\", c='gray')\n",
"\n",
"# MAKE THE BLUE AREA TO COVER THE WHOLE X AXIS\n",
"plt.margins(x=0)\n",
"\n",
"# MAKE Y AXIS TO START IN 0\n",
"plt.yticks(np.arange(0, 28, step=4))\n",
"\n",
"plt.show()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Line"
]
},
{
"cell_type": "code",
"execution_count": 12,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"\n",
"\n",
"
\n",
" \n",
" \n",
" | \n",
" month | \n",
" count | \n",
"
\n",
" \n",
" \n",
" \n",
" 0 | \n",
" 1 | \n",
" 10 | \n",
"
\n",
" \n",
" 1 | \n",
" 2 | \n",
" 28 | \n",
"
\n",
" \n",
" 2 | \n",
" 3 | \n",
" 7 | \n",
"
\n",
" \n",
" 3 | \n",
" 4 | \n",
" 9 | \n",
"
\n",
" \n",
" 4 | \n",
" 5 | \n",
" 43 | \n",
"
\n",
" \n",
" 5 | \n",
" 6 | \n",
" 22 | \n",
"
\n",
" \n",
" 6 | \n",
" 7 | \n",
" 6 | \n",
"
\n",
" \n",
" 7 | \n",
" 8 | \n",
" 24 | \n",
"
\n",
" \n",
" 8 | \n",
" 9 | \n",
" 12 | \n",
"
\n",
" \n",
" 9 | \n",
" 10 | \n",
" 1 | \n",
"
\n",
" \n",
"
\n",
"
"
],
"text/plain": [
" month count\n",
"0 1 10\n",
"1 2 28\n",
"2 3 7\n",
"3 4 9\n",
"4 5 43\n",
"5 6 22\n",
"6 7 6\n",
"7 8 24\n",
"8 9 12\n",
"9 10 1"
]
},
"execution_count": 12,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"from datetime import datetime as dt\n",
"\n",
"year_2020 = by_datetime.copy()\n",
"\n",
"year_2020['datetime'] = pd.to_datetime(year_2020['datetime'], utc=True)\n",
"year_2020['month'] = year_2020['datetime'].dt.month\n",
"\n",
"within_2020 = (\n",
" (year_2020['datetime'] > dt.fromisoformat('2020-01-01T00:00:00+02:00')) & \n",
" (year_2020['datetime'] < dt.fromisoformat('2020-12-01T00:00:00+02:00')))\n",
"\n",
"year_2020_by_month = (year_2020\n",
" .loc[within_2020, ['month', 'weekday']]\n",
" .groupby('month')\n",
" .count()\n",
" .reset_index()\n",
" .rename(columns={'weekday': 'count'}))\n",
"\n",
"year_2020_by_month"
]
},
{
"cell_type": "code",
"execution_count": 13,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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aioRERF5kpFx48YRFxdHkyZNaN++PXFxcYf23XHHHYeGLA4ZMiRP2WvWrGHfvn1069Ytz77FixfTq1evw7bFx8ezePHifMtfuHDhYceuXLmSFi1aEBMTk6fsJUuWEBcXR0RExKFtERERxMXFHVZ+Qe89JiaG5s2bs2jRIt58800GDRqUp65QzjrrLNauXUv79u25/vrrD+sVDQctvSB5ZGZm+h2CiFRAaltEJBzKctvywMeLWbIuvUTL7NQ0hvsu6FzgcTExMQwfPpxnnnmG6tWrH9qe3+Qfubedc8453HPPPTRu3DjfZOaWW27h9ttvJyMjg8suu4ypU6cyePBgIDDM8rLLLstzzltvvcXXX3/N8uXLmTRpEtHR0XmOcc7liSX3tmDlFyS/svPbXtB7h/8lhF988QUzZ87klVdeKXQctWrVIjExke+//56vv/6aQYMG8cgjjzBy5Mgiv6fCUM+eiIiIiEgFdPPNN/Pyyy+ze/fuQ9saNGjAtm3bDr3eunVrngluoqKi6NWrF08++SSXXnpp0PIjIyM555xz+O677wqMZdCgQSxevJjvv/+e2267jfXr1+c5pnPnzoeGUGabM2dOnnvigmnbti1r1qw5dI9e7rLnzp17aDIZgKysLObPn0/Hjh0PbSvMe7/ggguYMmVK0F7EgkRERHDqqafywAMPMGHCBN57770il1FY6tkTEREREQmDwvTAhVP9+vUZOHAgL7/8MldddRUAp556KuPHj2fEiBFERUXx6quvctppp+U597bbbuOUU06hQYMGQct3zvHTTz8dNoyzIH369GHYsGE8/fTT/Otf/zps3+23387ll19O//79iY2NJSUlhX/+8595Zg8NpkaNGlx99dWMHTuWF198kaioKNLS0pg5cyZDhw6lR48ePPTQQ9x7770APPTQQ/Ts2ZO2bduSkpJS6PdevXp1Hn300WJNDLR8+XKqVKlCu3btAJg3bx4tW7YscjmFpWRPRERERKSCuu2225gwYcKh1wMGDCAxMZFevXoRERFBmzZteOGFF/Kc17lz5zwzUWYbN24cr7/+OhkZGXTr1o3rr7/+0L477riDhx566NDrX3/9Nc/5f/3rX+nZsyd33XUXtWvXPrQ9Li6ORx99lAsuuICMjAwiIyN57LHHipRMPvTQQ9x999106tSJ6OhoatasyYMPPgjAyy+/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\n",
"text/plain": [
""
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"import matplotlib.pyplot as plt\n",
"import numpy as np\n",
"\n",
"# PLOT DATA\n",
"xs = year_2020_by_month['month']\n",
"ys = year_2020_by_month['count']\n",
"\n",
"# PLOT\n",
"plt.figure(figsize=(15, 5))\n",
"\n",
"plt.plot(xs, ys)\n",
"plt.legend(['NUMBER OF COMMITS'])\n",
"plt.ylabel('NUMBER OF COMMITS')\n",
"plt.xlabel('MONTHS')\n",
"plt.title('NUMBER OF COMMITS BY MONTH (JAN-OCT 2020)')\n",
"plt.margins(x=0, y=0)\n",
"\n",
"# SOME LINES HIGHLIGHTING MONTHS WITH HIGHER NUMBER OF COMMITS\n",
"for possible_release in [2, 5, 8]:\n",
" plt.vlines(x=possible_release, ymin=0, ymax=50, linestyle='--', alpha=0.3)\n",
" \n",
"plt.yticks(np.arange(0, 55, step=5))\n",
"\n",
"plt.show()"
]
},
{
"cell_type": "code",
"execution_count": 14,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"\n",
"\n",
"
\n",
" \n",
" \n",
" | \n",
" email | \n",
" count | \n",
"
\n",
" \n",
" \n",
" \n",
" 0 | \n",
" niwi@niwi.be | \n",
" 199 | \n",
"
\n",
" \n",
" 1 | \n",
" david.barragan@kaleidos.net | \n",
" 185 | \n",
"
\n",
" \n",
" 2 | \n",
" jesus.espino@kaleidos.net | \n",
" 123 | \n",
"
\n",
" \n",
" 3 | \n",
" alejandro.alonso@kaleidos.net | \n",
" 18 | \n",
"
\n",
" \n",
" 4 | \n",
" andres.moya@kaleidos.net | \n",
" 10 | \n",
"
\n",
" \n",
"
\n",
"
"
],
"text/plain": [
" email count\n",
"0 niwi@niwi.be 199\n",
"1 david.barragan@kaleidos.net 185\n",
"2 jesus.espino@kaleidos.net 123\n",
"3 alejandro.alonso@kaleidos.net 18\n",
"4 andres.moya@kaleidos.net 10"
]
},
"execution_count": 14,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"from datetime import datetime as dt\n",
"\n",
"def get_top_commiters_by_year(year):\n",
" top_commiters_source = by_datetime.copy()\n",
" by_year = top_commiters_source['datetime'].dt.year == year\n",
" \n",
" return (top_commiters_source\n",
" .loc[by_year, ['email', 'hash']]\n",
" .groupby('email')\n",
" .count() \n",
" .rename(columns={'hash': 'count'})\n",
" .sort_values('count', ascending=False)\n",
" .reset_index() \n",
" .iloc[:5, [0, 1]])\n",
"\n",
"get_top_commiters_by_year(2013)"
]
},
{
"cell_type": "code",
"execution_count": 15,
"metadata": {
"scrolled": true
},
"outputs": [
{
"data": {
"image/png": "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K1ey7777ApQfCzB8+HBOOukkfvKTn9CkSRMA2rVrx0MPPcTNN9/MihUrAGjTpg1XX3013bt3p0uXLrz22mtA2ajchRdeyJo1a9h3331JKbFkyRLq1avHU089BcAhhxzCvHnzyo+tzIIFCzjmmGNo37491157bXn7mDFj6NmzJwUFBXzve99jzZo1tfCtSpIkSdocFnu1ZN3I2+zZs2natCn3339/+b7u3bszY8YMAJ5++mk6d+7Miy++yL///W969eq1UV8TJ07ke9/7HvPmzeOQQw7h0EMP5fvf/z4zZszgpJNO4h//+Ef5sXvssQcvvfQS559/Pr/85S/X66d+/frst99+vPrqqzzzzDP06NGDp59+ms8++4zS0lK+9rWvZf1M06ZN4+6776akpIT77ruP4uJi5syZwz333MOzzz5LSUkJ9evX5+67796Sr06SJElSDfA2zlrStm1bCgoKAOjRowfz588v39egQQO+9rWvMWfOHKZNm8bFF1/MU089xZo1azjkkEPW62fx4sXsvffeRATDhg3j1ltvpWPHjvTr148BAwbQvn17Zs2aVX78uhHDHj168MADD2yU65BDDuGpp57irbfe4oorruCOO+7g0EMP5cADD/zCz1RUVMSXv/zl8us888wzNGjQgOnTp5efv2LFCpo3b755X5YkSZKkGufIXi1p1KhR+fv69euzevXq9fYfcsgh/OMf/6Bhw4YceeSRPPPMMzzzzDP07dt3veNSStSvXx+ADz/8kO7du7PjjjvSr18/ABYtWrRecbXuupVdc911n376aaZNm8Zxxx3HkiVLmDp16kbXrcyGU/9HBCklBg8eTElJCSUlJcydO5drrrnmC/uSJEmSVLss9nKkb9++3HLLLRx00EE0a9aMDz/8kNdee41OnTqtd1zz5s155513WLNmDbvvvjslJSWsXLmSJ598kiVLljB69GiOP/74Tb5ur169eO6556hXrx6NGzemoKCAP/7xjxuNKFbm8ccf56OPPmLFihX8/e9/5+CDD+aII45g/PjxLFq0CICPPvqIt99+e/O+DEmSJEk1Lu9v49ySpRJqU69evXj//ffLR9S6du1K8+bNK104+/DDD+e3v/0tw4cPZ8iQITRo0ICDDjqIP/zhD9x4443lt1ZuikaNGrH33nvTu3dvoGykb+zYsXTp0mWjYydMmEBxcXH5zKB9+vThO9/5DvPmzeP//u//KCwsBOC6667jqKOOYu3atTRs2JDbb7+dffbZZ7O/E0mSJEk1J1JKuc5QbYWFham4uHi9tjlz5tCxY8ccJaodn376KccccwynnnoqZ599No0bN+add97h8ccfZ8iQIbmOpzqUj3+/JUmSVH0RMT2lVFjZPm/j3AbstNNO/POf/+Sjjz6ib9++9OjRg4svvpju3bvnOpokSZKkrVTe38aZL3bccUeuvPJKrrzyylxHkSRJkrQNcGRPkiRJkvKQxZ4kSZIk5SGLPUmSJEnKQxZ7deCaa67hl7/85Wafd9VVVzF58uSN2qdOnVrp2npVtW8L1q5dy5/+9Cf69OlDt27dKCoq4pFHHlnvmH79+rHh7KvZtGnThg8++CDrMesWlt9QdX+zLXXnnXfy3nvv1fl1JUmSlH/yf4KWa5rUcH9La7a/LNatb1dX1qxZQ/369avcri0pJQYNGsSee+7J/fffz5577sm7777LJZdcwptvvsnQoUNr7doTJ06stb6r484776Rz5860bNky11EkSZK0jXNkr5Zcf/31tG/fniOPPJK5c+cCcMcdd3DggQfSrVs3Bg4cyKeffsrSpUtp06YNa9euBcrW1Nt7771ZtWoVZ555JuPHjwdg0qRJdOjQgT59+vDAAw9Ued1ly5bRv39/9t9/f84777zyfs8//3wKCwvp1KkTV199dfnxbdq04Wc/+xl9+vThvvvu22i7sswAb775Jr179+bAAw/kqquuYpdddgHgk08+4YgjjqB79+506dKFhx56CID58+fTsWNHvvvd79KpUyeOOuooVqxYAcDo0aPZZ599uOWWW9hzzz0B2Guvvfjb3/7GI488wrvvvrveZ1y7di2DBw8un5n0W9/6Fj169KBTp06MHDmy0u9lzJgx9OzZk4KCAr73ve+xZs2a8s+/bvSvst8MoKSkhN69e9O1a1f69+/Pxx9/DMBtt93G/vvvT9euXTn11FM3uubUqVPp168f3/72t+nQoQODBg1i3bqW06dP59BDD6VHjx4cffTRLFy4kPHjx1NcXMygQYMoKCgo/34kSZKk6rDYqwXTp09n3LhxzJgxgwceeIAXX3wRgAEDBvDiiy8yc+ZMOnbsyJ///GeaNGlCt27dePLJJwF4+OGHOfroo2nYsGF5fytXruS73/0uDz/8ME8//TT//e9/q7z2tGnTuPnmm3nllVd48803ywvD66+/nuLiYl5++WWefPJJXn755fJzGjduzDPPPFNesFTcriwzwNChQxk6dCgvvvjieqNQjRs35sEHH+Sll17iX//6F5dcckl5gfPGG29wwQUXMHv2bJo2bcr9998PwF//+ld+/OMfs3jxYo477ji+/vWvc+mll3LfffdxwQUXcM8995T3v3r1agYNGsR+++3HddddB8CoUaOYPn06xcXF3HbbbXz44YfrfSdz5szhnnvu4dlnn6WkpIT69etz9913b9JvBnDGGWdwww038PLLL9OlSxeuvfZaAEaMGMGMGTN4+eWX+cMf/lDp7zFjxgxuueUWXn31Vf7zn//w7LPPsmrVKi666CLGjx/P9OnTOfvss/nJT37Ct7/9bQoLC7n77rspKSlhxx13rPJ3liRJkr6IxV4tePrpp+nfvz877bQTu+22GyeccAIAs2bN4pBDDqFLly7cfffdzJ49G4BTTjmlvKAZN24cp5xyynr9vfbaa7Rt25Z27doREZx++ulVXrtnz57su+++1K9fn9NOO41nnnkGgHvvvZfu3btzwAEHMHv2bF599dXycza8XsXtqjI///zznHTSSQD83//9X/nxKSV+/OMf07VrV4488kjeffdd3n//fQDatm1LQUEBAD169GD+/PlAWQG322678Ytf/IJzzz2Xp59+mnnz5rFixQrat2/Pm2++Wd7/9773PTp37sxPfvKT8rbbbruNbt260bt3bxYsWMAbb7yx3ueZMmUK06dP58ADD6SgoIApU6bwn//8Z71jqvrNli5dypIlSzj00EMBGDx4ME899RQAXbt2ZdCgQYwZM4YGDSq/I7pnz560atWKevXqUVBQwPz585k7dy6zZs2iqKiIgoICrrvuOkpLSys9X5IkSaqu/H9mL0ciYqO2M888k7///e9069aNO++8k6lTpwJwwgkncMUVV/DRRx8xffp0Dj/88E3qb1OuGxG89dZb/PKXv+TFF19k991358wzz2TlypXlx+y8887rnVNxu6rMVbn77rtZvHgx06dPp2HDhrRp06b8Wo0aNSo/rn79+uW3Ka57LvC1115j+PDh1K9fn6OOOgqARYsW0bx58/Lzvv71r5ePGDZu3JipU6cyefJknn/+eXbaaSf69eu33meDsgJ08ODBDB8+fLO+uy/y6KOP8tRTTzFhwgR+/vOfM3v27I2Kvg0/8+rVq0kp0alTJ55//vnNup4kSZK0OWptZC8iRkXEooiYVcm+H0VEiog9KrRdERHzImJuRBxdW7nqQt++fXnwwQdZsWIFy5cv5+GHHwZg+fLltGjRglWrVq13G+Euu+xCz549GTp0KMcff/xGk6J06NCBt956q3yEa+zYsVVee9q0abz11lusXbuWe+65hz59+rBs2TJ23nlnmjRpwvvvv88//vGPTf4sVWXu3bt3+W2Y48aNK29funQpzZs3p2HDhvzrX//i7bff3uTrtG/fnscee4y1a9fy+OOPs3LlSm6++eb1RhqHDBnCcccdx0knncTq1atZunQpu+++OzvttBOvvfYaL7zwwkZ9H3HEEYwfP55FixYB8NFHH22Uq6rfrEmTJuy+++48/fTTANx1110ceuihrF27lgULFnDYYYdx4403smTJEj755JNN+qzt27dn8eLF5cXeqlWrykdMd911V5YvX75J/UiSJEnZ1OZtnHcCx2zYGBF7A0XAOxXa9gdOBTplzvldRNT+NJC1pHv37pxyyikUFBQwcOBADjnkEAB+/vOf06tXL4qKiujQocN655xyyimMGTNmo1sqoew5uJEjR/KNb3yDPn36sM8++5TvKy4u5pxzzinfPuiggxg2bBidO3embdu29O/fn27dunHAAQfQqVMnzj77bA4++OBN/ixVZb7lllv41a9+Rc+ePVm4cCFNmpTNejpo0CCKi4vLnz3b8HNW5rTTTuOqq67iiiuu4He/+x19+vShXbt2jBs3jgsuuGCjPi6++GK6d+/Od77zHY455hhWr15N165d+elPf0rv3r036n///ffnuuuu46ijjqJr164UFRWxcOHC9Y6p6jeDsglkLr30Urp27UpJSQlXXXUVa9as4fTTT6dLly4ccMAB/PCHP6Rp06Yb/R6V2WGHHRg/fjyXX3453bp1o6CggOeeew4oG0k977zznKBFkiRJWyzWTZ5RK51HtAEeSSl1rtA2Hvg58BBQmFL6ICKuAEgpDc8c80/gmpRS1vvcCgsL04brrs2ZM4eOHTvW5MdQJT799FN23HFHIoJx48YxduzY8pk3N9fatWsZOHAgBQUFXHzxxey6664sXryYBx54gCFDhlT5PNz2yL/fkiRJqigipqeUCivbV6f/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XWeTJKkurFy5kp49e9KtWzc6derE1VdfDcCll15Khw4d6Nq1K/3792fJkiU5TipJ2pZtTevsjQCKIuINoCizLUlS3mnUqBFPPPEEM2fOpKSkhEmTJvHCCy9QVFTErFmzePnll9lvv/0YPnx4rqNKkrZhOS32UkpTU0rHZ95/mFI6IqXULvPnR7nMJklSbYkIdtllFwBWrVrFqlWriAiOOuooGjRoAEDv3r0pLS3NZUxJ0jZuaxrZkyRpu7FmzRoKCgpo3rw5RUVF9OrVa739o0aN4thjj81ROklSPrDYkyQpB+rXr09JSQmlpaVMmzaNWbNmle+7/vrradCgAYMGDcphQknSts5iTwIWLFjAYYcdRseOHenUqRO33norADNnzuSggw6iS5cufPOb32TZsmU5Tiop3zRt2pR+/foxadIkAEaPHs0jjzzC3XffTUTkOJ0kaVtmsScBDRo04Oabb2bOnDm88MIL3H777bz66qucc845jBgxgldeeYX+/ftz00035TqqpDywePHi8pk2V6xYweTJk+nQoQOTJk3ihhtuYMKECey00045TilJ2tZZ7ElAixYt6N69OwC77rorHTt25N1332Xu3Ln07dsXgKKiIu6///5cxsyJqkY9S0pK6N27NwUFBRQWFjJt2rQcJ5W2HQsXLuSwww6ja9euHHjggRQVFXH88cdz4YUXsnz5coqKiigoKOC8887LdVRJ0jasQa4DSFub+fPnM2PGDHr16kXnzp2ZMGECJ554Ivfddx8LFizIdbw6t27Us3v37ixfvpwePXpQVFTEZZddxtVXX82xxx7LxIkTueyyy5g6dWqu40rbhK5duzJjxoyN2ufNm5eDNJKkfOXInlTBJ598wsCBA7nlllvYbbfdGDVqFLfffjs9evRg+fLl7LDDDrmOWOeqGvWMiPJnGJcuXUrLli1zGVOSJEkbcGRPyli1ahUDBw5k0KBBDBgwAIAOHTrw2GOPAfD666/z6KOP5jJizlUc9bzllls4+uij+dGPfsTatWt57rnnch1PkiRJFVjsSUBKiSFDhtCxY0cuvvji8vZFixbRvHlz1q5dy3XXXbddPz+z4ajnlVdeya9//WsGDhzIvffey5AhQ5g8eXKuY0pbrTbDauY/Fs0f8Y0a6UeSlP+8jVMCnn32We666y6eeOIJCgoKKCgoYOLEiYwdO5b9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\n",
"text/plain": [
""
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"def paint_bar(pdf, pcommitter, pyear, pright, pax): \n",
" idf = pdf.copy()\n",
" width = 0.25\n",
" commits = get_commits_by_email_and_year(df=idf, umail=pcommitter, year=pyear) \n",
" \n",
" xs = (commits['month'].values - (width / 2)) if pright else (commits['month'].values + (width / 2))\n",
" ys = commits['count'].values\n",
" \n",
" bar = pax.bar(xs, ys, width=width, label=pcommitter)\n",
" add_bar_numbers(bar)\n",
" \n",
"def add_bar_numbers(bar):\n",
" for rect in bar:\n",
" x = rect.get_x() + (rect.get_width() / 2)\n",
" y = rect.get_height()\n",
" \n",
" plt.text(x, y + 4, y, ha='center', va='center')\n",
" \n",
"def get_commits_by_email_and_year(df, umail, year):\n",
" idf = df.copy()\n",
" \n",
" idf['month'] = idf['datetime'].dt.month\n",
" by_year = idf['datetime'].dt.year == year\n",
" by_email = idf['email'].apply(lambda s: umail in s)\n",
" \n",
" return (idf\n",
" .loc[by_year & by_email, ['email', 'month', 'hash']]\n",
" .groupby(['email', 'month'])\n",
" .count()\n",
" .reset_index()\n",
" .rename(columns={'hash': 'count'}))\n",
"\n",
"\n",
"def show_top2_committers_by_year(year):\n",
" _, ax = plt.subplots(figsize=(15, 5))\n",
" \n",
" top_2_commiters_2014 = get_top_commiters_by_year(year).iloc[:2]\n",
" top_commiters_emails = top_2_commiters_2014['email'].values\n",
" \n",
" right = False\n",
"\n",
" for committer in top_commiters_emails:\n",
" paint_bar(pdf=by_datetime, pcommitter=committer, pyear=year, pright=right, pax=ax)\n",
" right = not right\n",
"\n",
"\n",
" plt.title('TOP 2 COMMITERS IN {}'.format(year))\n",
" plt.ylabel('NUMBER OF COMMITS')\n",
" plt.xlabel('MONTHS')\n",
" plt.yticks(np.arange(0, 180, step=20))\n",
" plt.xticks(np.arange(1, 13, step=1), labels=['JAN', 'FEB', 'MAR', 'APR', 'MAY', 'JUN', 'JUL', 'AUG', 'SEP', 'OCT', 'NOV', 'DEC'])\n",
"\n",
" ax.legend(loc='upper left')\n",
" plt.show()\n",
" \n",
"show_top2_committers_by_year(2013)"
]
},
{
"cell_type": "code",
"execution_count": 16,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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p+jcuTOdO3dm33335eOPP17nfpMmTaJ79+506dKFE044gU8++QSAYcOGsffee9OxY0fOP/98AAYPHsyZZ55Jjx492HPPPXnooYeANXvlRowYwZAhQ+jVqxdt2rThd7/7XcW9rr32WkpLSyktLeX666+vOH7WWWcxZswYBg4cSKNGjQDo3bs3d955J+edd946md966y323Xdf/vnPfzJ16lQOPPBA9t13Xw488EBmzpy5zvWffvopQ4YMYb/99mPfffdl/Pjx6+ResmQJhx9+OPvuuy9nnHEGlbdcqSp3dd9FZYMHD+bss8/mwAMPpE2bNtx///0V56r6focNG8acOXPo3LkzF1xwwTrtSZIkSbXJVt9TWEyTJk1i1qxZTJ06lZQS/fv3Z8qUKbz//vvsuuuuPPxwphfzww8/zNnONddcw0033cRBBx3EJ598QpMmTdY4v3jxYq644goee+wxtt12W37zm99w7bXX8pOf/IRx48bxxhtvEBEsW7as4jVz587lqaeeYs6cORx66KHMnj17nfu+8cYbPPHEE3z88cfstddenHXWWbz88sv8+c9/5h//+AcpJbp168YhhxzCtttuS7NmzejYsSMPPfQQl156KW3atCGlxNixY6lXr94awzhnzpzJiSeeyJ///Gc6d+7MRx99xJQpU2jQoAGPPfYY//M//8PYsWPXyHPllVdy2GGHMXr0aJYtW8b+++/Pt7/97TWuueyyyzj44IO59NJLefjhh7nlllsAmD59epW533rrrQ36LhYsWMAzzzzDG2+8Qf/+/Tn++OOr/X5HjhzJq6++Snl5ec7vVZIkSaoNLArzaNKkSUyaNIl9990XgE8++YRZs2bRo0cPzj//fC688EL69etHjx49crZz0EEHce6553LyySczYMAAWrZsucb5559/ntdff52DDjoIgBUrVtC9e3d22GEHmjRpwqmnnkrfvn3XmJs3cOBA6tWrR9u2bWnTpg1vvPHGOvft27cvjRs3pnHjxpSUlLBw4UKeeeYZjjvuOLbddlsABgwYwNNPP03z5s054IADWLVqFZdddhmPP/44H374YcX8wbZt2/L222/TrFkz3n//fY455hjGjh1Lhw4dgEwxNmjQIGbNmkVEsHLlyio/zwkTJnDNNdcAmZVm33nnnTWumTJlCg888EBF/p122gmg2txHHnnkBn0Xxx57LPXq1WPvvfdm4cKFFXmq+n5btWpV9RcpSZIk1UIWhXmUUuKiiy7ijDPOWOfc9OnTmThxIhdddBGHH344l156KQ0aNOCrr74CWGPbgmHDhtG3b18mTpzIAQccwGOPPUa7du3WuE+fPn2466671rnP1KlTmTx5MnfffTejRo3i8ccfB9ZdBbOqVTEbN25c8bh+/fp8+eWXawzHXPu91q9fn8WLF7PHHnvQtGlTmjZtyt577w3AokWLKCkpIaXEjjvuyG677cazzz5bURRecsklHHrooYwbN465c+dWDJ1d+x5jx45lr732WuP46iIt13upLveee+5Z5XeR67NY3VZ13+/cuXOrvJckSZJUGzmnMI+OOOIIRo8eXTG/79///jeLFi3i3XffZZtttuEHP/gB559/Pi+88AKQmVM4ffp0gDWGTs6ZM4d99tmHCy+8kLKysnV69Q444ACeffbZiiGgn332GW+++SaffPIJH374IUcffTTXX3/9GsMZ77vvPr766ivmzJnDW2+9tU6hVZ2ePXvy4IMP8tlnn/Hpp58ybtw4evTowT777MNzzz3HzjvvzJw5c/jwww955513mDFjBq+88gqLFi3im9/8JgCNGjXiwQcf5Pbbb+f//b//B2R6Clu0aAHAbbfdVu3neeONN1YUZS+++GKV+f7yl78A8Mgjj7B06dKcuav7LjZEdd/v9ttvX+W8T0mSJKk2sqcwTyKCww8/nBkzZtC9e3cgs/jMnXfeyezZs7nggguoV68eDRs25A9/+AMAw4cPZ+jQofzqV7+iW7duFW1df/31PPHEE9SvX5+9996bo446CoDOnTtTXl5Os2bNuO222zjppJP44osvALjiiivYfvvtOeaYY1i+fDkpJa677rqKNvfaay8OOeQQFi5cyM0337zOPMXqdOnShcGDB7P//vsDcOqpp1YMn5w7dy4vvfQSv/zlLzn00ENp06YN/fv355prrmH06NFrtLPtttvy0EMP0adPH7bddlt+8YtfMGjQIK699loOO+ywKu99ySWX8LOf/YyOHTuSUqJ169YVi+SsNnz4cE466SS6dOnCIYccUjGUs7rcf/vb36r8Li699FLKysro379/tZ9Fdd/vHnvswUEHHURpaSlHHXUUV1999QZ9tpIkSVIxRHXD6rYEZWVladq0aWscmzFjBu3bty9SoowlS5bQpUsX/vWvfxU1R3UGDx5Mv379OP7442u03RkzZnDyySfzm9/8pmIBmBdeeIEFCxasd6/BuqQ2/I5KkiRp6xAR01NKm7U/m8NHa9i7775L9+7dK7Z/qEvat2/PhAkTGDt2LF26dOGAAw5g9OjR7LfffsWOJkmSJKkaDh+tYbvuuitvvvlmsWPkVN2cvZrQsmVLbr755ry1L0mSJKlm2VMoSZIkSXWYRaEkSZIk1WEWhZIkSZJUh1kUSpIkSVIdZlEoSZIkSXXY1r/66Igda7i9Dzf5pZdeeik9e/as2MNvY6794osvuPHGG7n33ntZsWIFrVq14sILL+Sggw5ab1sTJkzg9ddfZ9iwYZt87W233ca0adMYNWrUetuQJEmStOXY+ovCWuTyyy/fpGu/+OILjj76aA477DAeffRRdtxxR2bNmsWPf/xjzjzzTAYMGJCzrf79+9O/f/8Nuu/GXCtJkiRpy+fw0TyYO3cu7du357TTTqNDhw4cfvjhfP755wwePJj777+fqVOnVhRy48eP52tf+xorVqxg+fLltGnTBqDiWoBf//rXnHDCCVx88cXsuGOm57Nt27aMHz+e3/72t3z++ecAtG7dmuHDh9OlSxf22Wcf3njjDSDTy/eTn/yEVatW0aZNG1JKLFu2jHr16jFlyhQAevTowezZsyuurcq8efM48sgj2Wuvvbjssssqjt95553sv//+dO7cmTPOOINVq1bl4VOVJEmSlA8WhXmyuifvtddeo2nTpowdO7biXJcuXXjxxRcBePrppyktLeWf//wn//jHP+jWrds6bU2cOJEzzjiD2bNn06NHDw455BDOPvtsXnzxRU444QQeeeSRimt33nlnXnjhBc466yyuueaaNdqpX78+e+65J6+//jrPPPMMXbt25emnn+aLL75g/vz5fOtb38r5nqZOncpf/vIXysvLue+++5g2bRozZszgnnvu4dlnn6W8vJz69evzl7/8ZXM+OkmSJEkF5PDRPNl9993p3LkzAF27dmXu3LkV5xo0aMC3vvUtZsyYwdSpUzn33HOZMmUKq1atokePHmu08/7777PbbrsREQwbNowbbriB9u3b06tXLwYMGMBee+3Fq6++WnH96h7Irl278sADD6yTq0ePHkyZMoW3336biy66iD/96U8ccsgh7Lfffut9T3369OEb3/hGxX2e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lJSU0LVr1zWOf/nllyxdupTnn3+eq6++moEDB5JSqqYVqbByDR/97erHEbE9cA5wCnA38NvqXidJkiTVVc8++ywTJkxg4sSJLF++nI8++ogf/OAHtGzZkgEDBhAR7L///tSrV4/FixfTrFmzYkeWcm9JERFfj4grgJfJFJBdUkoXppScGStJkiSt5de//jXz589n7ty53H333Rx22GHceeedHHvssTz++ONAZijpihUr2HnnnYucVsrINafwamAAcAuwT0rpk4KlkiRJkrYiQ4YMYciQIZSWltKoUSPGjBlDRBQ7lgTk3pLiPOAL4JfAxZV+aYPMQjM75DmbJEmStMXq1asXvXr1AqBRo0bceeedxQ0kVSPXnMKcQ0slSZIkSVs+Cz9JkiRJqsMsCiVJkiSpDss1p1CSJEnS+ozYsYba+bBm2pE2kj2FkiRJklSHWRRKkqTNtnz5cvbff386depEhw4dGD58OADl5eUccMABdO7cmbKyMqZOnVrkpJKktTl8VJIkbbbGjRvz+OOPs91227Fy5UoOPvhgjjrqKC699FKGDx/OUUcdxcSJE/nFL37Bk08+Wey4kqRK7CmUJEmbLSLYbrvtAFi5ciUrV64kIogIPvroIwA+/PBDdt1112LGlCRVwZ5CSZJUI1atWkXXrl2ZPXs2P/7xj+nWrRvXX389RxxxBOeffz5fffUVf//734sdU5K0lqL1FEZE/Yh4MSIeyj7/ekQ8GhGzsn/uVKxskiRp49WvX5/y8nLmz5/P1KlTefXVV/nDH/7Addddx7x587juuusYOnRosWNKktZSzOGj5wAzKj0fBkxOKbUFJmefS5KkLUzTpk3p1asXf/3rXxkzZgwDBgwA4IQTTnChGUmqhYpSFEZES6Av8H+VDh8DjMk+HgMcW+hckiRp07z//vssW7YMgM8//5zHHnuMdu3aseuuu/LUU08B8Pjjj9O2bdtixpQkVaFYcwqvB34BbF/p2C4ppQUAKaUFEVFSlGSSJGmjLViwgEGDBrFq1Sq++uorBg4cSL9+/WjatCnnnHMOX375JU2aNOGWW24pdlRJ0loKXhRGRD9gUUppekT02oTXnw6cDtCqVasaTidJkjZFx44defHFF9c5fvDBBzN9+vQiJJIkbahiDB89COgfEXOBu4HDIuJOYGFENAfI/rmoqhenlG5JKZWllMqaNWtWqMySJEmStFUqeFGYUroopdQypdQaOBF4PKX0A2ACMCh72SBgfKGzSZIkSVJdU5v2KRwJ3BsRQ4F3gBOKnEeSJOXQetjDNdLO3JF9a6QdSdKmKeaWFKSUnkwp9cs+XpJS6p1Sapv984NiZpOkLc3y5cvZf//96dSpEx06dGD48OEA3HfffXTo0IF69eoxbdq0IqeUJEm1TW3qKZQkbYbGjRvz+OOPs91227Fy5UoOPvhgjjrqKEpLS3nggQc444wzih1RkiTVQhaFkrSViAi22247AFauXMnKlSuJCNq3b1/kZJIkqTYr6vBRSdpY8+bN49BDD6V9+/Z06NCBG264AYCXXnqJ7t27s88++/Cd73yHjz76qMhJi2PVqlV07tyZkpIS+vTpQ7du3YodSZIk1XIWhZK2KA0aNOC3v/0tM2bM4Pnnn+emm27i9ddf59RTT2XkyJG88sorHHfccVx99dXFjloU9evXp7y8nPnz5zN16lReffXVYkeSJEm1nEWhpC1K8+bN6dKlCwDbb7897du359///jczZ86kZ8+eAPTp04exY8cWM2bRNW3alF69evHXv/612FEkSVItZ1EoaYs1d+5cXnzxRbp160ZpaSkTJkwAMqttzps3r8jpCu/9999n2bJlAHz++ec89thjtGvXrsipJElSbWdRKGmL9Mknn/Dd736X66+/nh122IHRo0dz00030bVrVz7++GMaNWpU7IgFt2DBAg499FA6duzIfvvtR58+fejXrx/jxo2jZcuWPPfcc/Tt25cjjjii2FElSVIt4uqjkrY4K1eu5Lvf/S4nn3wyAwYMAKBdu3ZMmjQJgDfffJOHH66ZTbW3JB07duTFF19c5/hxxx3HcccdV4REkiRpS2BPoaQtSkqJoUOH0r59e84999yK44sWLQLgq6++4oorruDMM88sVkRJkqQtikWhVAtVt+3CiBEjaNGiBZ07d6Zz585MnDixyEkL79lnn+WOO+7g8ccfX+NzuOuuu9hzzz1p164du+66K6ecckqxo26x/P2TJKlucfioVAut3nahS5cufPzxx3Tt2pU+ffoA8POf/5zzzz+/yAmL5+CDDyalVOW5c845p8BpaoERO9ZQOx9WPPT3T5KkusWiUKqFmjdvTvPmzYE1t12QCsHfP0mS6haHj0q1XOVtFwBGjRpFx44dGTJkCEuXLi1yOm3t/P2TlE/VDVe/5JJL6NixI507d+bwww/n3XffLXJSaetmUSjVYmtvu3DWWWcxZ84cysvLad68Oeedd16xI2or5u+fpHxbPVx9xowZPP/889x00028/vrrXHDBBbz88suUl5fTr18/Lr/88mJHlbZqDh+Vaqmqtl3YZZddKs6fdtpp9OvXr1jxCisP8+aUm79/kgqhuuHqe++9d8U1n376KRFRrIhSnWBRKNVC1W27sGDBgoq/PMeNG0dpaWmxImor5u+fpGJYe7j6xRdfzO23386OO+7IE088UeR00tbN4aNSLVTdtgu/+MUv2GeffejYsSNPPPEE1113XbGjaivk75+kQlt7uDrAlVdeybx58zj55JMZNWpUkROqtqluPup9991Hhw4dqFevHtOmTStyyi2HPYVSLVTdtgtHH310EdKorvH3T1IhVTVcvbLvf//79O3bl8suu6wI6Ypn3rx5/OhHP+K9996jXr16nH766Zxzzjl88MEHfO9732Pu3Lm0bt2ae++9l5122qnYcQuuuu2TSktLeeCBBzjjjDOKHXGLYk+hJEmSiqK64eqzZs2qeDxhwgTatWtXjHhFVd0iPCNHjqR3797MmjWL3r17M3LkyGJHLYrmzZvTpUsXYM35qO3bt2evvfYqcrotj0WhtBUbMmQIJSUla8z9eumll+jevTv77LMP3/nOd/joo4+KmFCSVJdVN1x92LBhlJaW0rFjRyZNmlQxNLAuqa7oGT9+PIMGDQJg0KBBPPjgg8WMWSusPR9VG8/ho1JtkYcVNgcPHsxPfvITfvSjH1UcO/XUU7nmmms45JBDGD16NFdffTX/+7//WzP31har9bCHa6SduSP71kg7kuoGh6tvmMpFz8KFCysW/WrevDmLFi0qcrriqmo+qjaePYXSVqxnz558/etfX+PYzJkz6dmzJwB9+vRh7NixxYgmSZI2gEVP9dY3H1UbzqJQqmNKS0uZMGECkFmha968eUVOJEmSqlLdnrELFiwAMlsFlZSUFDNi0VQ3H1WbxqJQqmNGjx7NTTfdRNeuXfn4449p1KhRsSNJkqS1VFf09O/fnzFjxgAwZswYjjnmmGJFLKrq5qOOGzeOli1b8txzz9G3b1+OOOKIYkfdIjinUKpj2rVrx6RJkwB48803efjhmplLJtV2Q4YM4aGHHqKkpIRXX3214viNN97IqFGjaNCgAX379uWqq64qYkpp6+cc5g2zuujZZ5996Ny5MwC/+tWvGDZsGAMHDuTWW2+lVatW3HfffUVOWhzVzUcFOO644wqcZstX8KIwInYDbgf+C/gKuCWldENEfB24B2gNzAUGppSWFjqftLVbtGgRJSUlfPXVV1xxxRWceeaZxY4kFURVCy898cQTjB8/npdffpnGjRvX+QUbJNUeuYqeyZMnFziNtnbFGD76JXBeSqk9cADw44jYGxgGTE4ptQUmZ59L61XVtgsjRoygRYsWawwnqItOOukkunfvzsyZM2nZsiW33nord911F3vuuSft2rVj11135ZRTTil2TKkgqlp46Q9/+APDhg2jcePGAHV2bo4kqW4reE9hSmkBsCD7+OOImAG0AI4BemUvGwM8CVxY6Hza8lT1v/8AP//5zzn//POLlKp2uOuuu6o8fs455xQ4iVQ7vfnmmzz99NNcfPHFNGnShGuuuYb99tuv2LEkSWtx2HF+FXVOYUS0BvYF/gHski0YSSktiAj/u1YbpGfPnsydO7fYMSRtgb788kuWLl3K888/zz//+U8GDhzIW2+9RUQUO5okSQVTtKIwIrYDxgI/Syl9tKF/AUfE6cDpAK1atcpfQG3xRo0axe23305ZWRm//e1v2WmnnYodSbVIVYuOXHLJJYwfP5569epRUlLCbbfdxq677lrkpMqnli1bMmDAACKC/fffn3r16rF48WKaNWtW7GiS6iB7w1QsRdmSIiIakikI/5JSeiB7eGFENM+ebw5UOds/pXRLSqkspVTmX9qqzllnncWcOXMoLy+nefPmnHfeecWOpFpm8ODB/PWvf13j2AUXXMDLL79MeXk5/fr14/LLLy9SOhXKsccey+OPPw5khpKuWLGCnXfeucipJEkqrGKsPhrArcCMlNK1lU5NAAYBI7N/ji90Nm09dtlll4rHp512Gv369StimsKqif9lrAv/w1jVsOMddtih4vGnn37qEMKtzEknncSTTz7J4sWLadmyJZdddhlDhgxhyJAhlJaW0qhRI8aMGeP3Lkmqc4oxfPQg4IfAKxFRnj32P2SKwXsjYijwDnBCEbJpK7FgwQKaN28OwLhx49ZYmVTK5eKLL+b2229nxx135Iknnih2HNWg6hZeuvPOOwucRJKk2qUYq48+A1T337C9C5lFW4eq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\n",
"text/plain": [
""
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"show_top2_committers_by_year(2014)"
]
},
{
"cell_type": "code",
"execution_count": 17,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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e+jbty+TJk0C4P333yc+Pp5WrVoxefLksO3+8MMPZGZmcv7553PrrbeG6r3ttttIT08nISGBoUOHhq5v0KABDz/8MK1ateKNN9446LiomAFWr15Ny5Ytad68OUOGDKFatWoA/Pjjj7Rr1460tDSSkpKYOnUqALm5uTRp0oSbb76ZhIQE2rdvz86dOwEYM2YMZ599Ns899xx16tQB4Mwzz+Rf//oX77zzDt99990BnzE/P58+ffrwpz/9CYCrrrqKZs2akZCQwKhRo4p8LmPHjqVFixakpqZyyy23sG/fvtDn39/7V9R3BpCTk0PLli1JTk4mMzOTrVu3AjBy5EjOP/98kpOTufbaaw9qc86cObRp04arr76a+Ph4evfuzf6tTrKzs7n00ktp1qwZHTp0YN26dUyaNImsrCx69+5Nampq6PmIiIiIiBSHkr0oyM7OZvz48Xz++edMnjyZTz/9FIBu3brx6aefsmjRIpo0acI//vEPatSoQUpKCh999BEAb7/9Nh06dDhgufpdu3Zx88038/bbbzN37ly+//77sG0vXLiQZ555hi+++ILVq1eHEsPHHnuMrKwsFi9ezEcffcTixYtD91SuXJlPPvkklLAUPC4qZoC7776bu+++m08//fSAXqjKlSszZcoUPvvsMz788EPuueeeUIKzatUqbr/9dpYuXUrNmjV58803AfjnP//J/fffz8aNG+nUqRMXXXQRAwcO5I033uD2229nwoQJofr37t1L7969Oe+883j00UcBeOWVV8jOziYrK4uRI0eyefPmA57JsmXLmDBhAvPmzSMnJ4e4uDhef/31w/rOAH7729/y5JNPsnjxYpKSknjooYcAGD58OJ9//jmLFy/mpZdeKvL7+Pzzz3nuuef48ssv+frrr5k3bx579uzhzjvvZNKkSWRnZ9OvXz8eeOABrr76atLT03n99dfJycnhpJNOCvs9i4iIiIgcipK9KJg7dy6ZmZlUqVKFk08+ma5duwKwZMkSLrnkEpKSknj99ddZunQpAD179gwlNOPHj6dnz54H1Ld8+XIaNmxIo0aNMDOuu+66sG23aNGCc845h7i4OHr16sUnn3wCwMSJE0lLS6Np06YsXbqUL7/8MnRP4fYKHoeLef78+VxzzTUA/OY3vwld7+7cf//9JCcnc/nll/Pdd9+xfv16ABo2bEhqaioAzZo1Izc3FwgkcCeffDKPP/44/fv3Z+7cuXz11Vfs3LmTxo0bs3r16lD9t9xyC4mJiTzwwAOhcyNHjiQlJYWWLVuydu1aVq1adcDnmTVrFtnZ2TRv3pzU1FRmzZrF119/fcA14b6z7du3s23bNi699FIA+vTpw8cffwxAcnIyvXv3ZuzYsZQvX/SI6BYtWlCvXj3KlStHamoqubm5rFixgiVLlpCRkUFqaiqPPvooeXl5Rd4vIiIiIlJcZX7OXqwUtRJh3759eeutt0hJSWH06NHMmTMHgK5duzJ48GC2bNlCdnY2l1122WHVdzjtmhlr1qxhxIgRfPrpp9SqVYu+ffsesCR+1apVD7in4HG4mMN5/fXX2bhxI9nZ2VSoUIEGDRqE2qpUqVLouri4uNAwxf3zApcvX84TTzxBXFwc7du3B2DDhg3Url07dN9FF10U6jGsXLkyc+bMYebMmcyfP58qVarQpk2bg5b7d3f69OnDE088cUTP7lD+/e9/8/HHHzNt2jQeeeQRli5delDSV/gz7927F3cnISGB+fPnH1F7IiIiIiJHQj17UdC6dWumTJnCzp072bFjB2+//TYAO3bsoG7duuzZs+eAYYTVqlWjRYsW3H333XTp0uWgRVHi4+NZs2ZNqIdr3LhxYdteuHAha9asIT8/nwkTJtCqVSt++OEHqlatSo0aNVi/fj3vvffeYX+WcDG3bNkyNAxz/PjxofPbt2+ndu3aVKhQgQ8//JBvvvnmsNtp3Lgx06dPJz8/nxkzZrBr1y6eeeaZA3oab7zxRjp16sQ111zD3r172b59O7Vq1aJKlSosX76cBQsWHFR3u3btmDRpEhs2bABgy5YtB8UV7jurUaMGtWrVYu7cuQC89tprXHrppeTn57N27Vratm3LU089xbZt2/jxxx8P67M2btyYjRs3hpK9PXv2hHpMq1evzo4dOw6rHhERERGRSJTsRUFaWho9e/YkNTWV7t27c8kllwDwyCOPcMEFF5CRkUF8fPwB9/Ts2ZOxY8ceNKQSAvPgRo0aRefOnWnVqhVnn312qCwrK4ubbropdHzhhRcyaNAgEhMTadiwIZmZmaSkpNC0aVMSEhLo168fF1988WF/lnAxP/fcc/z5z3+mRYsWrFu3jho1agDQu3dvsrKyQnPPCn/OovTq1YshQ4YwePBgXnzxRVq1akWjRo0YP348t99++0F1DBgwgLS0NK6//no6duzI3r17SU5O5sEHH6Rly5YH1X/++efz6KOP0r59e5KTk8nIyGDdunUHXBPuO4PAAjIDBw4kOTmZnJwchgwZwr59+7juuutISkqiadOm/OEPf6BmzZoHfR9FqVixIpMmTeK+++4jJSWF1NRU/vOf/wCBntRbb71VC7SIiIiIyFGz/YtnHI/S09O98L5ry5Yto0mTJjGK6MTx888/c9JJJ2FmjB8/nnHjxoVW3jxS+fn5dO/endTUVAYMGED16tXZuHEjkydP5sYbbww7H06Offr7KCIiIhJdZpbt7ulFlen/oqVYsrOzueOOO3B3atasySuvvFLsusqVK8ekSZN48cUX6dChA7t27eKMM85gwIABSvRERERERIpJPXsiEjX6+ygiIiISXZF69jRnT0REREREpAxSsiciIiIiIlIGKdkTEREREREpg5TsiYiIiIiIlEFK9kpRgwYN2LRpU8RrOnXqxLZt20qkvWrVqpVIPbm5uSQmJpZIXYeyfPlyUlNTadq0aWgT+VgaNmwYI0aMKPb9s2fP5oorriApKYkLL7yQ5557jn379pVghEXLysrirrvuAmD06NHccccdUW9TRERERI4tZX9d+2E1Sri+7SVbXyHvvvtuVOvft28fcXFxUW3jaLz11ltceeWVPPTQQ4d9z7H6mf72t78xdepURowYQWJiIj/99BPPP/881157LRMnTsTMotZ2eno66elFLsokIiIiIicI9exFyVVXXUWzZs1ISEhg1KhRB5WPHTuWFi1akJqayi233BLq7SnY+xeujmrVqvHAAw+QkpJCy5YtWb9+PQBr1qzhwgsvpHnz5jz44IOh6+fMmUPbtm35zW9+Q1JSErt27eKGG24gKSmJpk2b8uGHHwKBHrxLLrmEtLQ00tLS+M9//nNQ3OHuHT16NN26daNjx440atSIP/7xj0AgEevbty+JiYkkJSXx7LPPApCTk0PLli1JTk4mMzOTrVu38u677/Lcc8/x97//nbZt20Z8TtWqVWPIkCFccMEFzJ8/P+wzefvtt7ngggto2rQpl19+eej8sGHD6NevH23atOGcc85h5MiRoc/42GOP0bhxYy6//HJWrFgROr969Wo6duxIs2bNuOSSS1i+fDkAqampoddJJ53ERx99xKpVq5g4cSLvvPNOqFe0atWq3H///cTHxzNp0iQANm7cSEZGBmlpadxyyy2cffbZbNq0idzcXOLj47nppptITEykd+/ezJw5k4svvphGjRqxcOFCABYuXMhFF11E06ZNueiii0Lxzpkzhy5duoT74xn6bu69916SkpJITk7mL3/5CwCzZs2iadOmJCUl0a9fP3755ZfQn83777+fCy+8kPT0dD777DM6dOjAueeey0svvRSxLRERERGJAXc/bl/NmjXzwr788ssDTww9uWRfh2nz5s3u7v7zzz97QkKCb9q0yc8++2zfuHGjf/nll96lSxffvXu3u7vfdtttPmbMGHf30DXh6nB3B3zatGnu7j5w4EB/5JFH3N39iiuuCNXz17/+1atWreru7h9++KFXqVLFv/76a3d3HzFihPft29fd3ZctW+ZnnXWW79y503/66SffuXOnu7uvXLnS9z/fNWvWeEJCQsR7X331VW/YsKFv27bNd+7c6fXr1/dvv/3Ws7Ky/PLLLw89l61bt7q7e1JSks+ZM8fd3R988EG/++67A1/X0KH+9NNPh77LcM8J8AkTJoTqDfdMtmzZ4vn5+e7u/vLLL/uAAQNC7Vx44YW+a9cu37hxo59yyim+e/duz8rK8sTERP/pp598+/btfu6554biueyyy3zlypXu7r5gwQJv27btAd/5tGnTvFWrVr57924fPHiwT58+3fft2+e/+93vPC0tzYcOHep33XWXb9myxbt27eru7rfffrs//vjj7u7+3nvvOeAbN270NWvWeFxcnC9evNj37dvnaWlpfsMNN3h+fr6/9dZbfuWVV7q7+/bt233Pnj3u7j5jxgzv1q1b6Dvv3Lmzu7u/+uqrfvvtt3thL774onfr1i10/+bNm33nzp1er149X7Fihbu7X3/99f7ss8+6e+DP5osvvuju7r///e89KSnJf/jhB9+wYYOffvrpB9W//zsUERERkegBsjxMvlT2h3HGyMiRI5kyZQoAa9euZdWqVaGyWbNmkZ2dTfPmzQHYuXMntWvXPqw6Tj31VCpWrBjqtWnWrBkzZswAYN68ebz55psAXH/99dx3332hulq0aEHDhg0B+OSTT7jzzjsBiI+P5+yzz2blypWcffbZ3HHHHeTk5BAXF8fKlSsPiincvQDt2rWjRo3AsNnzzz+fb775hoSEBL7++mvuvPNOOnfuTPv2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iIhIKVGyJyIiIiIiUgYp2RMRERERESmDlOyJiIiIiIiUQUr2REREREREyiAleyIiIiIiImWQkj0REREREZEySMmeiIiIiIhIGaRkT0REREREpAxSsiciIiIiIlIGKdkTEREREREpg5TsiYiIiIiIlEFK9kRERERERMogJXsiIiIiIiJlkJI9ERERERGRMkjJnoiIiIiISBmkZE9ERERERKQMUrInIiIiIiJSBinZExERERERKYOU7ImIiIiIiJRBSvZERERERETKICV7IiIiIiIiZZCSPRERERERkTJIyZ6IiIiIiEgZFLVkz8xeMcIUKroAACAASURBVLMNZrakwLmnzWy5mS02sylmVrNA2WAz+8rMVphZh2jFJSIiIiIiciKIZs/eaKBjoXMzgER3TwZWAoMBzOx84FogIXjPi2YWF8XYREREREREyrSoJXvu/jGwpdC56e6+N3i4AKgXfH8lMN7df3H3NcBXQItoxSYiIiIiIlLWxXLOXj/gveD7M4G1BcrygudERERERESkGGKS7JnZA8Be4PX9p4q4zMPc29/Msswsa+PGjdEKUURERERE5LhW6smemfUBugC93X1/QpcHnFXgsnrAf4u6391HuXu6u6effvrp0Q1WRERERETkOFWqyZ6ZdQTuA7q6+88FiqYB15pZJTNrCDQCFpZmbCIiIiIiImVJ+WhVbGbjgDbAaWaWBwwlsPpmJWCGmQEscPdb3X2pmU0EviQwvPN2d98XrdhERERERETKOvv/IymPP+np6Z6VlRXrMERERERERGLCzLLdPb2osliuxikiIiIiIiJRomRPRERERESkDFKyJyIiIiIiUgYp2RMRERERESmDlOyJiIiIiIiUQUr2REREREREyiAleyIiIiIiImWQkj0REREREZEySMmeiIiIiIhIGRQ22TOz5mb2qwLHvzWzqWY20sxOKZ3wREREREREpDgi9ez9L7AbwMxaA8OBfwLbgVHRD01ERERERESKq3yEsjh33xJ83xMY5e5vAm+aWU70QxMREREREZHiitSzF2dm+5PBdsDsAmWRkkQRERERERGJsUhJ2zjgIzPbBOwE5gKY2f8QGMopIiIiIiIix6hIyd6TwCygLjDd3T14vhxwZ7QDExERERERkeKLlOwtdPe0wifdfWUU4xEREREREZESEGnOnpVaFCIiIiIiIlKiIvXsnW5mA8IVuvufoxCPiIiIiIiIlICIWy8A1VAPn4iIiIiIyHEnUrK3zt0fLrVIREREREREpMRozp6IiIiIiEgZFKlnr72ZnRKu0N23RCEeERERERERKQERt14AnKJ7+Bw4JyoRiYiIiIiIyFELm+y5e8PSDERERERERERKTthkz8wO2lC9IHf/rOTDERERERERkZIQaRhnFrAU2Bg8Ljic04HLIlVsZq8AXYAN7p4YPHcKMAFoAOQCPdx9a7BsMHAjsA+4y90/OMLPIiIiIiIiIkGRVuO8B9gO7AReBa5w97bBV8REL2g00LHQuUHALHdvBMwKHmNm5wPXAgnBe140s7gj+SAiIiIiIiLy/4VN9tz9WXdvBdwBnAXMMrOJZpZ6OBW7+8dA4RU7rwTGBN+PAa4qcH68u//i7muAr4AWh/8xREREREREpKBIPXsABJOvqcB0AgnYeUfRXh13Xxesdx1QO3j+TGBtgevygudERERERESkGCIt0HIOgaGVVxJIxMYDj7n7rijEEW57h6Li6g/0B6hfv34UQhERERERETn+RVqg5StgMYFevR+A+sDvzAJ5mbv/uRjtrTezuu6+zszqAhuC5/MIDBXdrx7w36IqcPdRwCiA9PT0IhNCERERERGRE12kYZwPA1OAfKAaUL3QqzimAX2C7/sQSCT3n7/WzCqZWUOgEYFN3UVERERERKQYIm2qPuxoKjazcUAb4DQzywOGAsOBiWZ2I/AtcE2wraVmNhH4EtgL3O7u+46mfRERERERkRNZpDl7IyPd6O53HaK8V5iidmGufwx4LFKdIiIiIiIicngizdm7FVgCTCQwf66oRVRERERERETkGBQp2atLYJhlTwJDKycAb7r71tIITERERERERIov0qbqm939JXdvC/QFagJLzez60gpOREREREREiidSzx4AZpYG9AIygPeA7GgHJSIiIiIiIkcn0gItDwFdgGUENlQf7O57SyswERERERERKb5IPXsPAl8DKcHX48EN1Q1wd0+OfngiIiIiIiJSHJGSvYalFoWIiIiIiIiUqEibqn8DYGYNgQTAgWXu/nUpxSYiIiIiIiLFFGnO3snA34F0IIfA8M0UM8sGbnT3H0onRBERERERETlSYbdeAEYCXwL/4+7d3D0TOBf4AvhraQQnIiIiIiIixRNpzt7F7t634Al3d+Bh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8pvf/IaOHTsCMH78eA3hFBERKQZz96ILzE4FrgF6AnsJLJ7y5tEummJmvwIWuHuD4PElBJK9/wHaBHv16gJz3L1xpLrS09M9KyvraMIRERERERE5bplZtrunF1VWLtxN7r7Z3V9y97YE5tfVBJaa2fVHE4y7fw+sNbP9iVw74EtgGtAneK4PMPVo2hERERERETmRRRrGCYCZpQG9gAzgPQJz7I7WncDrwZU4vwZuIJB4TjSzG4FvCfQqioiIiIiISDFEWqDlIaALsAwYDwx2970l0ai75wBFdTW2K4n6RURERERETnSRevYeJNDrlhJ8PW5mEFioxd09OfrhiYhImTWsRgnUsf3o6xARESmjIiV7DUstChERERERESlRkTZV/6Y0AxEREREREZGSE2nO3g6g4L4MDmwCPgTuc/fNUY5NREREREREiinS1gvV3f3kAq8aBBZVWQq8VGoRioiIiIiIyBELm+wVxd23uvuzwLlRikdERERERERKwBElewBmVoHD2J9PREREREREYifSnL1uRZyuBfQEJkUtIhERERERETlqkXrorih07MBm4Hl3/3f0QhIREREREZGjFWnrhRtKMxAREREREREpOZGGcQ6JcJ+7+yNRiEdERERERERKQKRhnD8Vca4qcCNwKqBkT0RERERE5BgVaRjnM/vfm1l14G7gBmA88Ey4+0RERERERCT2Im6hYGanAAOA3sAYIM3dt5ZGYCIiIiIiIlJ8kebsPQ10A0YBSe7+Y6lFJSIiIiIiIkcl0qbq9wBnAH8C/mtmPwRfO8zsh9IJT0RERERERIojbLLn7uXc/SR3r+7uJxd4VXf3k0szSBERkcOxb98+mjZtSpcuXQB44403SEhIoFy5cmRlZcU4OhERkdIVqWdPRETkuPL888/TpEmT0HFiYiKTJ0+mdevWMYxKRKTkFP5Ra8uWLWRkZNCoUSMyMjLYulXLa8j/p2RPRETKhLy8PP79739z0003hc41adKExo0bxzAqEZGSVfhHreHDh9OuXTtWrVpFu3btGD58eAyjk2ONkj0RkePYrl27aNGiBSkpKSQkJDB06FAAFi1axIUXXkhSUhJXXHEFP/xQ9qda//73v+epp56iXDn9p01EyqaiftSaOnUqffr0AaBPnz689dZbsQpPjkH6L6KIyHGsUqVKzJ49m0WLFpGTk8P777/P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\n",
"text/plain": [
""
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"show_top2_committers_by_year(2015)"
]
},
{
"cell_type": "code",
"execution_count": 18,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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NGrUiPj4eMaMGXPS+QkTJtCkSRNSUlK45557fL09+Xv//NVRvnx5nnjiCZKTk2natCk7duwAYMuWLVxzzTU0btyYJ5980nf9/PnzadWqFb///e9JTEzk8OHD9O7dm8TERBo0aMCnn34KeHrwmjdvTsOGDWnYsCFffPHFSXH7u3fcuHHceuuttGvXjtq1azNw4EDAk4j16tWLhIQEEhMTeemllwDIysqiadOmJCUl0blzZ/bt28fs2bN5+eWXefPNN2nVqlXA51S+fHkGDx7M1VdfzeLFi/0+k/fff5+rr76aBg0acOONN/rKhwwZQp8+fWjZsiVXXnklo0aN8r3H4cOHU6dOHW688Ua++uorX/nmzZtp164djRo1onnz5qxfvx6AlJQU38/555/PggUL2LhxI5MnT2bWrFm+XtELLriAxx9/nLp16zJ16lQAdu3aRVpaGg0bNuSee+7hiiuuYPfu3WRnZ1O3bl3uuusuEhIS6NmzJ3PnzuW6666jdu3aLF26FIClS5dy7bXX0qBBA6699lpfvPPnz6djx47+fj19n80jjzxCYmIiSUlJ/P3vfwdg3rx5NGjQgMTERPr06cPPP//s+918/PHHueaaa0hNTWX58uW0bduWX//617z++usB2xIRERGR8FOyFyJjx44lMzOTjIwMRo0axZ49e3zn1q1bx6RJk1i0aBFZWVnExMTw9ttvF7mOH3/8kaZNm7Jy5UpatGjBG2+8AUD//v257777WLZsGb/61a9OqGvp0qUMHz6cL7/8ktGjRwOwevVq3nnnHdLT0zl8+DBxcXF8/PHHLF++nEmTJvmGAebn717wJHCTJk1i9erVTJo0ia1bt5KVlcW2bdtYs2YNq1evpnfv3gDccccdPP/886xatYrExESGDh1K+/btuffee3nwwQf59NNPAz6nH3/8kYSEBP73v//RrFkzv8+kWbNmLFmyhBUrVtCjRw9eeOEF33tZv349H330EUuXLmXo0KEcOXKEzMxMJk6cyIoVK5g2bRrLli3zXd+3b1/+/ve/k5mZyciRI/njH//oe99ZWVk8/fTTpKamcu211/Kvf/2Lxx9/nFKlSnH//ffTqFEjhgwZQv/+/XnooYeYMGECAEOHDuWGG25g+fLldO7cmW+//dbX3qZNm+jfvz+rVq1i/fr1/Oc//+Hzzz9n5MiRPPvsswDUrVuXzz77jBUrVjBs2DAef/zxQL+WJxgzZgxbtmxhxYoVrFq1ip49e3L48GF69erl+xyPHj3KP/7xD989l19+OYsXL6Z58+b06tWLqVOnsmTJEgYPHlzkdkVEREQkPKJ+GGekjBo1iunTpwOwdetWNm7c6Ds3b948MjMzady4MQCHDh0iLi6uSHVcfPHFnHfeeb5em0aNGvHxxx8DsGjRIt59910A/vCHP/Doo4/66mrSpIlvCfzPP/+cfv36AZ5k4YorrmDDhg1cccUVPPDAA77EasOGDSfF5O9egNatW1OxYkUA6tevzzfffEN8fDxff/01/fr1o0OHDrRp04bc3Fz279/P9ddfD0B6ejpdu3Y9qa1AzykmJoYuXbr4rvX3THJycujevTvbt2/nl19+OWEbgA4dOlC2bFnKli1LXFwcO3bsYOHChXTu3Jly5coB0KlTJwB++OEHvvjiixPiPN7jBbBx40YGDBjAJ598QpkyZVi5ciWPPfYY77//PmXKlCEzM5O//e1vZGdnU7lyZQ4ePOh7nsc/43bt2lG5cmVfnbVq1SIxMRGA+Ph4WrdujZmRmJhIdnY2ALm5uaSnp7Nx40bMjCNHjpz0HP2ZO3cu9957L6VLe74GLrroIlauXEmtWrW46qqrfJ/N6NGj+fOf/3zC80hMTOSHH36gQoUKVKhQgdjYWPbv30+lSpWK3L6IiIiIhJaSvRCYP38+c+fOZfHixZQrV46WLVuesAS9c4709HSee+65YtVRpkwZ33yvmJgYjh496rvP3zywCy644IT2C/PSSy9RpUoVVq5cSV5eHrGxsSdd4+9egLJly/peH4+rcuXKrFy5ko8++ojRo0czefJk31DOUwn0nGJjY0+Yp+fvmfTr14+HHnqITp06MX/+fIYMGRIwXij8Gebl5VGpUiWysrJOOvfjjz/SrVs33njjDapVq+aLPSYmhvXr19OuXTsAbrrpJlatWsXPP//sa7uoz7NUqVK+41KlSvliffLJJ2nVqhXTp08nOzubli1b+q2vIOfcSe81UDz5Y8ofT8GYREREROTMoGGcIZCbm0vlypUpV64c69evZ8mSJSecb926NVOnTmXnzp0A7N27l2+++ea06ijMddddx8SJEwEKHRZ6XIsWLXznN2zYwLfffkudOnXIzc2latWqlCpVirfeeqvQVSP93evP7t27ycvLo0uXLjz99NMsX76cihUrUrlyZRYuXAjAW2+95evly68oz+lUcnNzueyyywAYP378Ka9v0aIF06dP59ChQxw8eJD3338fgAsvvJBatWoxZcoUwJMUrVy5EoDevXvTu3dvmjdv7qsnMTGRxYsXU6dOHebMmQPARx99hHOO559/nt/97neAZ5jp5MmTAZgzZw779u0r9vsbN27cad3bpk0bXn/9dV+StnfvXurWrUt2djabNm0C/H82IiIiInLmU7IXAu3atePo0aMkJSXx5JNP0rRp0xPO169fn2eeeYY2bdqQlJREWloa27dv9503s1PWUZhXXnmF0aNH07hxY3Jzc/1e98c//pFjx46RmJhI9+7dGTduHGXLluWPf/wj48ePp2nTpmzYsOGE3sBT3evPtm3baNmyJSkpKfTq1cvXSzd+/HgGDBhAUlISWVlZhc75OtVzKoohQ4bQtWtXmjdvziWXXHLK6xs2bEj37t1JSUmhS5cuJyRwb7/9Nv/85z9JTk4mPj6eGTNm8M033zB16lTGjh3rW6QlIyOD9PR0Hn/8cTp06MChQ4do1KgR+/fvZ+3atZQvX54+ffoA8NRTTzFnzhwaNmzIf//7X6pWrUqFChWK/P4GDhzIY489xnXXXVekLR1mzpzpe9Z33XUXNWrUICkpieTkZP7zn/8QGxvLv/71L7p27UpiYiKlSpXi3nvvLXI8IiIiInLmsFMN2zqTpaamuoyMjBPK1q1bR7169SIUUckcO3aMuLg4vv/+e8qUKRPpcKSERo4cyeLFi3nppZeoUaMGhw4dYtq0abRo0YLLL78c8Mz7i4mJoXTp0ixevJj77ruv0KGiZ6uz+b9HERERkbOBmWU65wrdc0tz9s4g8fHx3HXXXUr0osQjjzzC7Nmzufvuu9m5cycVK1bktttu8w27BPj222/p1q0beXl5nHfeeb5VREVERERESkrJ3hnk+L5tEj3at29P+/bt/Z6vXbs2K1asCGNEIiIiInKu0Jw9ERERERGRKKRkT0REREREJAop2RMREREREYlCSvZERERERESikJK9MBgyZAgjR4487fsGDx7M3LlzTyqfP38+HTt2LHL52SAvL48333yTZs2akZycTFpaGrNmzTrhmpYtW1Jwq41Aatasye7duwNe0759e/bv339SeXE/s5IaN24c3333XdjbFREREZHoE/2rcQ6pGOT6/G9WHmzDhg0LW1vg2ecvJibG73GoOOfo2bMnVapU4d1336VKlSps27aNhx9+mM2bN9O/f/+QtT179uyQ1V0c48aNIyEhgWrVqkU6FBERERE5y6lnL0SGDx9OnTp1uPHGG/nqq68AeOONN2jcuDHJycl06dKFn376idzcXGrWrEleXh4AP/30E5dffjlHjhyhV69eTJ06FYAPP/yQunXr0qxZM6ZNm+a33QMHDtC5c2fq16/Pvffe66v3vvvuIzU1lfj4eJ566inf9TVr1mTYsGE0a9aMKVOmnHRcWMwAmzdvpmnTpjRu3JjBgwdTvnx5AH744Qdat25Nw4YNSUxMZMaMGQBkZ2dTr1497r77buLj42nTpg2HDh0CYPz48VxxxRW8/PLLVKlSBYDLLruM//znP8yaNYtt27ad8B7z8vJIT0/nL3/5CwC33HILjRo1Ij4+njFjxhT6XCZMmECTJk1ISUnhnnvu4dixY773f7z3r7DPDCArK4umTZuSlJRE586d2bdvHwCjRo2ifv36JCUl0aNHj5PanD9/Pi1btuR3v/sddevWpWfPnjjnAMjMzOT666+nUaNGtG3blu3btzN16lQyMjLo2bMnKSkpvucjIiIiIlIcSvZCIDMzk4kTJ7JixQqmTZvGsmXLALj11ltZtmwZK1eupF69evzzn/+kYsWKJCcns2DBAgDef/992rZte8LG6ocPH+buu+/m/fffZ+HChXz//fd+2166dCkvvvgiq1evZvPmzb7EcPjw4WRkZLBq1SoWLFjAqlWrfPfExsby+eef+xKW/MeFxQzQv39/+vfvz7Jly07ohYqNjWX69OksX76cTz/9lIcfftiX4GzcuJH777+ftWvXUqlSJd59910A/v3vf/P444+za9cu2rdvz7XXXsuAAQOYMmUK999/P5MmTfLVf/ToUXr27MlVV13FM888A8DYsWPJzMwkIyODUaNGsWfPnhOeybp165g0aRKLFi0iKyuLmJgY3n777SJ9ZgB33HEHzz//PKtWrSIxMZGhQ4cCMGLECFasWMGqVat4/fXXC/08VqxYwcsvv8yXX37J119/zaJFizhy5Aj9+vVj6tSpZGZm0qdPH5544gl+97vfkZqayttvv01WVhbnn3++389ZRERERORUlOyFwMKFC+ncuTPlypXjwgsvpFOnTgCsWbOG5s2bk5iYyNtvv83atWsB6N69uy+hmThxIt27dz+hvvXr11OrVi1q166NmXH77bf7bbtJkyZceeWVxMTEcNttt/H5558DMHnyZBo2bEiDBg1Yu3YtX375pe+egu3lP/YX8+LFi+natSsAv//9733XO+d4/PHHSUpK4sYbb2Tbtm3s2LEDgFq1apGSkgJAo0aNyM7OBjwJ3IUXXsizzz5L3759WbhwIZs2beLQoUPUqVOHzZs3++q/5557SEhI4IknnvCVjRo1iuTkZJo2bcrWrVvZuHHjCe9n3rx5ZGZm0rhxY1JSUpg3bx5ff/31Cdf4+8xyc3PZv38/119/PQDp6el89tlnACQlJdGzZ08mTJhA6dKFj4hu0qQJ1atXp1SpUqSkpJCdnc1XX33FmjVrSEtLIyUlhWeeeYacnJxC7xcRERERKa7on7MXIWZ2UlmvXr147733SE5OZty4ccyfPx+ATp068dhjj7F3714yMzO54YYbilRfUdo1M7Zs2cLIkSNZtmwZlStXplevXhw+fNh3zQUXXHDCPfmP/cXsz9tvv82uXbvIzMykTJky1KxZ09dW2bJlfdfFxMT4hikenxe4fv16nnvuOWJiYmjTpg0AO3fuJC4uznfftdde6+sxjI2NZf78+cydO5fFixdTrlw5WrZsecJ7A08Cmp6eznPPPXdaz+5UPvjgAz777DNmzpzJ008/zdq1a09K+gq+56NHj+KcIz4+nsWLF59WeyIiIiIipyNkPXtmNtbMdprZmkLOPWJmzswuyVf2mJltMrOvzKxtqOIKhxYtWjB9+nQOHTrEwYMHef/99wE4ePAgVatW5ciRIycMIyxfvjxNmjShf//+dOzY8aRFUerWrcuWLVt8PVzvvPOO37aXLl3Kli1byMvLY9KkSTRr1owDBw5wwQUXULFiRXbs2MF///vfIr8XfzE3bdrUNwxz4sSJvvLc3Fzi4uIoU6YMn376Kd98802R26lTpw5z5swhLy+Pjz/+mMOHD/Piiy+e0NN455130r59e7p27crRo0fJzc2lcuXKlCtXjvXr17NkyZKT6m7dujVTp05l586dAOzdu/ekuPx9ZhUrVqRy5cosXLgQgLfeeovrr7+evLw8tm7dSqtWrXjhhRfYv38/P/zwQ5Hea506ddi1a5cv2Tty5Iivx7RChQocPHiwSPWIiIiIiAQSymGc44B2BQvN7HIgDfg2X1l9oAcQ773nNTML/TKQIdKwYUO6d+9OSkoKXbp0oXnz5gA8/fTTXH311aSlpVG3bt0T7unevTsTJkw4aUgleObBjRkzhg4dOtCsWTOuuOIK37mMjAzuuusu3/E111zDoEGDSEhIoFatWnTu3Jnk5GQaNGhAfHw8ffr04brrrivye/EX88svv8zf/vY3mjRpwvbt26lY0bPqac+ePcnIyPDNPSv4Pgtz2223MXjwYB577DFee+01mjVrRu3atZk4cSL333//SXU89NBDNGzYkD/84Q+0a9eOo0ePkpSUxJNPPknTpk1Pqr9+/fo888wztGnThqSkJNLS0ti+ffsJ1/j7zMCzgMyAAQNISkoiKyuLwYMHc+zYMW6//XYSExNp0KABDz74IJUqVTrp8yjMeeedx9SpU3n00UdJTk4mJSWFL774AvD0pN57771aoEVERERESsyOL54RksrNagKznHMJ+cqmAk8DM4BU59xuM3sMwDn3nPeaj4AhzrmA49xSU1NdwX3X1q1bR7169YL5NqQQP/30E+effz5mxsSJE3nnnXd8K2+erry8PLp06UJKSgoPPfQQFSpUYNeuXUybNo0777zT73w4OfPpv0cRERGR0DKzTOdcamHnwvpXtJl1ArY551YWmB91GZB//F2Ot0zOUJmZmTzwwAM456hUqRJjx44tdl2lSpVi6tSpvPbaa7Rt25bDhw9TrVo1HnroISV6IiIiIiLFFLa/pM2sHPAE0Kaw04WUFdrlaGZ9gb4ANWrUCFp8cnqaN2/OypUrg1ZfTEwM/fr1o1+/fkGrU0RERETkXBbOrRd+DdQCVppZNlAdWG5mv8LTk3d5vmurA98VVolzboxzLtU5l3rppZeGOGQREREREZGzU9iSPefcaudcnHOupnOuJp4Er6Fz7ntgJtDDzMqaWS2gNrC0BG0FJWYRKT79dygiIiISWaHceuEdYDFQx8xyzOxOf9c659YCk4EvgQ+B+51zx4rTbmxsLHv27NEfmiIR5Jxjz549xMbGRjoUERERkXNWSFfjDLXCVuM8cuQIOTk5J22sLSLhFRsbS/Xq1SlTpkykQxERERGJWmfMapzhUKZMGWrVqhXpMERERERERCIqnAu0iIiIiIiISJgo2RMREREREYlCSvZERERERESikJI9ERERERGRKKRkT0REREREJAop2RMREREREYlCSvZERERERESikJI9ERERERGRKKRkT0REREREJAop2RMREREREYlCSvZERERERESikJI9ERERERGRKKRkT0REREREJAop2RMREREREYlCSvZERERERESikJI9ERERERGRKKRkT0REREREJAop2RMREREREYlCSvZERERERESikJI9ERERERGRKKRkT0REREREJAop2RMREREREYlCSvZERERERESikJI9ERERERGRKBSyZM/MxprZTjNbk6/sr2a23sxWmdl0M6uU79xjZrbJzL4ys7ahiihXjRoAACAASURBVEtERERERORcEMqevXFAuwJlHwMJzrkkYAPwGICZ1Qd6APHee14zs5gQxiYiIiIiIhLVQpbsOec+A/YWKJvjnDvqPVwCVPe+vhmY6Jz72Tm3BdgENAlVbCIiIiIiItEuknP2+gD/9b6+DNia71yOt0xERERERESKISLJnpk9ARwF3j5eVMhlzs+9fc0sw8wydu3aFaoQRUREREREzmphT/bMLB3oCPR0zh1P6HKAy/NdVh34rrD7nXNjnHOpzrnUSy+9NLTBioiIiIiInKXCmuyZWTvgUaCTc+6nfKdmAj3MrKyZ1QJqA0vDGZuIiIiIiEg0KR2qis3sHaAlcImZ5QBP4Vl9syzwsZkBLHHO3eucW2tmk4Ev8QzvvN85dyxUsYmIiIiIiEQ7+/8jKc8+qampLiMjI9JhiIiIiIiIRISZZTrnUgs7F8nVOEVERERERCRElOyJiIiIiIhEISV7IiIiIiIiUUjJnoiIiIiISBRSsiciIiIiIhKFlOyJiIiIiIhEISV7IiIiIiIiUUjJnoiIiIiISBRSsiciIiIiIhKF/CZ7ZtbYzH6V7/gOM5thZqPM7KLwhCciIiIiIiLFEahn7/+AXwDMrAUwAvg3kAuMCX1oIiIiIiIiUlylA5yLcc7t9b7uDoxxzr0LvGtmWaEPTURERERERIorUM9ejJkdTwZbA5/kOxcoSRQREREREZEIC5S0vQMsMLPdwCFgIYCZ/QbPUE4RERERERE5QwVK9p4H5gFVgTnOOectLwX0C3VgIiIiIiIiUnyBkr2lzrmGBQudcxtCGI+IiIiIiIgEQaA5exa2KERERERERCSoAvXsXWpmD/k76Zz7WwjiERERERERkSAIuPUCUB718ImIiIiIiJx1AiV7251zw8IWiYiIiIiIiASN5uyJiIiIiIhEoUA9e23M7CJ/J51ze0MQj4iIiIiIiARBwK0XAEfhPXwOuDIkEYmIiIiIiEiJ+U32nHO1whmIiIiIiIiIBI/fZM/MTtpQPT/n3PLghyMiIiIiIiLBEGgYZwawFtjlPc4/nNMBNwSq2MzGAh2Bnc65BG/ZRcAkoCaQDXRzzu3znnsMuBM4BvzJOffRab4XERERERER8Qq0GufDQC5wCPgX8FvnXCvvT8BEz2sc0K5A2SBgnnOuNjDPe4yZ1Qd6APHee14zs5jTeSMiIiIiIiLy//lN9pxzLznnmgEPAJcD88xsspmlFKVi59xnQMEVO28GxntfjwduyVc+0Tn3s3NuC7AJaFL0tyEiIiIiIiL5BerZA8CbfM0A5uBJwK4qQXtVnHPbvfVuB+K85ZcBW/Ndl+MtExERERERkWIItEDLlXiGVt6MJxGbCAx3zh0OQRz+tncoLK6+QF+AGjVqhCAUERERERGRs1+gBVo2Aavw9OodAGoAfzTz5GXOub8Vo70dZlbVObfdzKoCO73lOXiGih5XHfiusAqcc2OAMQCpqamFJoQiIiIiIiLnukDDOIcB04E8oDxQocBPccwE0r2v0/EkksfLe5hZWTOrBdTGs6m7iIiIiIiIFEOgTdWHlKRiM3sHaAlcYmY5wFPACGCymd0JfAt09ba11swmA18CR4H7nXPHStK+iIiIiIjIuSzQnL1RgW50zv3pFOdv83OqtZ/rhwPDA9UpIiIiIiIiRRNozt69wBpgMp75c4UtoiIiIiIiIiJnoEDJXlU8wyy74xlaOQl41zm3LxyBiYiIiIiISPEF2lR9j3PudedcK6AXUAlYa2Z/CFdwIiIiIiIiUjyBevYAMLOGwG1AGvBfIDPUQYmIiIiIiEjJBFqgZSjQEViHZ0P1x5xzR8MVmIiIiIiIiBRfoJ69J4GvgWTvz7PeDdUNcM65pNCHJyIiIiIiIsURKNmrFbYoREREREREJKgCbar+DYCZ1QLiAQesc859HabYREREREREpJgCzdm7EHgTSAWy8AzfTDazTOBO59yB8IQoIiIiIiIip8vv1gvAKOBL4DfOuVudc52BXwOrgVfDEZyIiIiIiIgUT6A5e9c553rlL3DOOWCYmW0MaVQiIiIiIiJSIoF69ixsUYiIiIiIiEhQBUr2FpnZYPPut3CcmT0JLAltWCIiIiIiIlISgYZx9gP+CWwysyw8q3E2AFYAd4UhNhERERERESmmQFsvHAC6mtmvgfp4hnU+6pzbHK7gREREREREpHgCbb3QFqjgnJsKbM5X3hPY6Zz7OAzxiYiIiIiISDEEmrM3FFhQSPk8YFhowhEREREREZFgCJTslXPO7SpY6Jz7HrggdCGJiIiIiIhISQVK9mLN7KRhnmZWBjg/dCGJiIiIiIhISQVK9qYBb5iZrxfP+/p17zkRERERERE5QwVK9v4C7AC+MbNMM8sEsoFd3nMiIiIiIiJyhgq09cJRYJCZDQV+4y3e5Jw7FJbIREREREREpNgCbaoOgDe5Wx2GWERERERERCRIAg3jFBERERERkbOUkj0REREREZEo5DfZM7MH8r2OD2ajZvagma01szVm9o6ZxZrZRWb2sZlt9P5bOZhtioiIiIiInEsC9ez1yff6rWA1aGaXAX8CUp1zCUAM0AMYBMxzztUG5nmPRUREREREpBiKOozTgtxuaeB876bt5YDvgJuB8d7z44FbgtymiIiIiIjIOSPQapyVzKwznoTwQjO7Nf9J51yxNlZ3zm0zs5HAt8AhYI5zbo6ZVXHObfdes93M4opTv4iIiIiIiARO9hYAnbyvPwN+m++cA4qV7Hnn4t0M1AL2A1PM7PbTuL8v0BegRo0axQlBREREREQk6gXaVL13iNq8EdjinNsFYGbTgGuBHWZW1durVxXY6SeuMcAYgNTUVBeiGEVERERERM5qAefsmVmCmY03swwzW+Z9nVjCNr8FmppZOTMzoDWwDpgJpHuvSQdmlLAdERERERGRc1agrRduBqbjGc7ZB7jL+3qa91yxOOf+B0wFlgOrvTGMAUYAaWa2EUjzHouIiIiIiEgxmHOFj4Q0s5XAzc657ALlNYEZzrnkUAd3KqmpqS4jIyPSYYiIiIiIiESEmWU651ILOxdoGGeZgokegLesTHBCExERERERkVAIlOwdMbOTlrs0syuAo6ELSUREREREREoq0NYLTwFzzexZIBPPdguNgUHAo2GITURERERERIop0NYL75nZFuBhoB9gwBqgm3NuZZjiExERERERkWII1LOHN6m7I0yxiIiIiIiISJAE3GdPREREREREzk5K9kRERERERKJQsZI9M7sg2IGI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\n",
"text/plain": [
""
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"show_top2_committers_by_year(2016)"
]
},
{
"cell_type": "code",
"execution_count": 19,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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UsKQIUPYe++9WbdcxTnnnMOYMWM49dRTad68OQC9e/dm0qRJ/OhHP6q4l5tuuok99tiD/v37c8opp3DGGWcAMGLECE477TQOPPBAdtttNx599FFGjhxJly5dGDFiRMX5p512GuXl5XTr1q2iDdbdyxctnfHss8+y7777UlpaSp8+fVixYkWN93rLLbdwzDHHcOSRR9KpUyd+97vf8Zvf/IaePXvSt29f3n333Y19GyVJkqQGq+h79gpp8uTJvPLKK0ybNo2UEkcddRSPPfYYy5YtY6edduKvf830On7wwQcV52y33XZMmzaN2267jR/84Afcf//9n6t39erVTJs2jQceeIAxY8YwZcoUfv/73wPwwgsv8OKLLzJw4EBefvllrr/+etq0acPs2bOZM2cOZWVlAHz00Ue89tprfPOb3+Sf//wnZ5xxBjvssAPt27dnzJgx9OrVi+eee44vf/nL/OIXv+C5556jZcuWHHTQQZSWllbE8t577/Hwww8zadIkjjzySJ588kluvPFG9tprL2bNmkVZWRmXXnop22+/PWvWrOHggw9m9uzZlJSUfGH7/ec//2HIkCFMmDCBvfbaiw8//JDmzZtz7bXXVnuvAHPmzGHmzJmsXLmSr33ta1x55ZXMnDmTH/7whxVtKkmSJG0J7NmrR5MnT2by5Mn07NmTXr168eKLL/LKK6/Qo0cPpkyZwvnnn8/jjz9Oq1atKs4ZOnRoxe+nn3662nqPPfZYINMLt3DhQgCeeOIJvvOd7wDQuXNndt11V15++WWeeOIJTjjhBAC6d+9ekWTNnz+f3r17A/CjH/2Iu+++m3HjxvHwww+zZs0a9txzTxYsWMC0adM44IAD2H777WnatCnHHXfcerEceeSRRAQ9evRgxx13pEePHjRq1Ihu3bpVxHbXXXfRq1cvevbsydy5cyue0/siL730Eu3bt2evvfYCMolwkyZNarxXgAMPPJCWLVvStm1bWrVqxZFHHglAjx49KuKRJEmStgT27NWjlBIXXngh3/ve9z63b8aMGTzwwANceOGFDBw4kIsvvhhYf8bFmmZf3HrrrQFo3Lgxq1evrrhWTTHUVN64cWMAGjVqxC677ALA3nvvDcDSpUvp2rXrFw59XBdLo0aNKl6v2169ejWvvfYaV111Fc8++yxt2rRhxIgRG7x8QEqp2jao6Z4qx1M1pnXxSJIkSVsKe/bq0SGHHMLNN9/MRx99BMDixYtZunQpb731Fttssw0nnngi5557Ls8991zFOeue35swYQL77LPPBl9r//33Z9y4cQC8/PLLvPHGG+y5557069ePu+66C4B58+bxwgsvAJkesWeffRaANWvWsGjRIt5//33++c9/smjRIh555BH22Wcf+vTpw6OPPsp7773H6tWrufvuuzeqDT788EO23XZbWrVqxdtvv83f/va3DT63c+fOvPXWWxVxrlixgtWrV9d4r5IkSZL+y569ehIRDBw4kPnz51ckbS1atOCOO+7g1Vdf5bzzzqNRo0Y0bdqUP/zhDxXnffbZZ+y9996sXbuWO++8c4Ov9/3vf59TTz2VHj160KRJE2655Ra23nprvv/97zN8+HBKSkro2bMnJSUltGrViu2224727dtz3333ceWVVzJo0CB22GEHvvnNb/Lb3/6WG2+8ka222oqdd96ZH//4x+y9997stNNOdO3adb1hp1+ktLSUnj170q1bN3bbbTe+/vWvf+E5hx12GDfeeCM77bQTEyZM4Mwzz+TTTz+lefPmTJkypcZ7lSRJkvRfkWtI3OauvLw8VZ3Ncf78+XTp0qVAEWUsX76cXr168frrr2/UeR07dmT69OnssMMOdRbLmjVrWLVqFc2aNWPBggUcfPDBvPzyy2y11Va8/fbbHH744fzoRz/i2GOPpUmTJrz44ovMmjWr4jk/yEzm0qJFC1avXs2gQYMYOXIkgwYNqrMYteE2h8+3JEmSNh8RMSOlVF7dPnv26thbb71F//79OffccwsdCpBZeuHAAw9k1apVpJT4wx/+wFZbbQXAjjvuyOTJk7n88su58soradSoEV26dFlveQTILP0wZcoUVq5cycCBAznmmGMKcSuSJEmSNoI9e1ID4udbkiRJleXq2XOCFkmSJEkqQiZ7kiRJklSETPYkSZIkqQiZ7EmSJElSETLZy4NLLrmEq666aqPPu/jii5kyZcrnyqdOncoRRxyxweUNwdq1a7nxxhvp168fpaWlDBgwgPvvv3+9Y/r370/VCXly6dixI++8807OYw477DDef//9z5XX9j3bVLfccgtvvfVW3q8rSZKk4lP8Sy9csuELgG9YfR/UbX05/PznP8/btSCzJl/jxo1r3K4vKSWGDRvGjjvuyN13382OO+7I4sWLOeecc1iwYAFnnXVWvV37gQceqLe6a+OWW26he/fu7LTTToUORZIkSQ2cPXv15NJLL2XPPffkG9/4Bi+99BIAf/zjH9lrr70oLS1l8ODBfPLJJ3zwwQd07NiRtWvXApl18b7yla+watUqRowYwcSJEwF48MEH6dy5M/369eOee+6p8boffvghgwYNomvXrpx66qkV9Z522mmUl5fTrVu39dbR69ixIz//+c/p168ff/rTnz63XV3MAAsWLKBv377stddeXHzxxbRo0QLILMB+8MEH06tXL3r06MF9990HwMKFC+nSpQunnHIK3bp1Y+DAgXz66acA3Hrrrey6665cc8017LjjjgDsvPPO/N///R/3338/ixcvXu8e165dy/Dhw/nJT34CwDHHHEPv3r3p1q0bY8eOrbZd7rjjDvr06UNZWRnf+973WLNmTcX9r+v9q+49A5g1axZ9+/alpKSEQYMG8d577wFw3XXX0bVrV0pKStZbhH6dqVOn0r9/f771rW/RuXNnhg0bxrqlTmbMmMEBBxxA7969OeSQQ1iyZAkTJ05k+vTpDBs2jLKysor2kSRJkmrDZK8ezJgxg/HjxzNz5kzuuecenn32WQCOPfZYnn32WZ5//nm6dOnCTTfdRKtWrSgtLeXRRx8F4C9/+QuHHHIITZs2rahv5cqVnHLKKfzlL3/h8ccf59///neN1542bRpXX301L7zwAgsWLKhIDC+99FKmT5/O7NmzefTRR5k9e3bFOc2aNeOJJ56oSFgqb1cXM8BZZ53FWWedxbPPPrteL1SzZs249957ee6553jkkUc455xzKhKcV155hdNPP525c+fSunVr7r77bgBuu+02fvzjH7Ns2TIOO+ww9t13X8477zz+9Kc/cfrppzNhwoSK+levXs2wYcPYY489+OUvfwnAzTffzIwZM5g+fTrXXXcdy5cvX69N5s+fz4QJE3jyySeZNWsWjRs3Zty4cRv0ngGcdNJJXHnllcyePZsePXowZswYAK644gpmzpzJ7NmzueGGG6p9P2bOnMk111zDvHnz+Ne//sWTTz7JqlWrOPPMM5k4cSIzZsxg5MiRXHTRRXzrW9+ivLyccePGMWvWLJo3b17j+yxJkiR9EZO9evD4448zaNAgttlmG7bbbjuOOuooAObMmcN+++1Hjx49GDduHHPnzgVgyJAhFQnN+PHjGTJkyHr1vfjii3Tq1Indd9+diODEE0+s8dp9+vRht912o3HjxgwdOpQnnngCgLvuuotevXrRs2dP5s6dy7x58yrOqXq9yts1xfz0009z3HHHAfDtb3+74viUEj/+8Y8pKSnhG9/4BosXL+btt98GoFOnTpSVlQHQu3dvFi5cCGQSuO22247LLruM0aNH8/jjj/Pqq6/y6aefsueee7JgwYKK+r/3ve/RvXt3Lrroooqy6667jtLSUvr27cubb77JK6+8st79PPTQQ8yYMYO99tqLsrIyHnroIf71r3+td0xN79kHH3zA+++/zwEHHADA8OHDeeyxxwAoKSlh2LBh3HHHHTRpUv2I6D59+tChQwcaNWpEWVkZCxcu5KWXXmLOnDkMGDCAsrIyfvnLX7Jo0aJqz5ckSZJqq/if2SuQiPhc2YgRI/jzn/9MaWkpt9xyC1OnTgXgqKOO4sILL+Tdd99lxowZHHTQQRtU34ZcNyJ47bXXuOqqq3j22Wdp06YNI0aMYOXKlRXHbLvttuudU3m7pphrMm7cOJYtW8aMGTNo2rQpHTt2rLjW1ltvXXFc48aNK4Yprnsu8MUXX+Tyyy+ncePGDBw4EIClS5fSrl27ivP23Xffih7DZs2aMXXqVKZMmcLTTz/NNttsQ//+/de7N8gkoMOHD+fyyy/fqLb7In/961957LHHmDRpEr/4xS+YO3fu55K+qve8evVqUkp069aNp59+eqOuJ0mSJG2MeuvZi4ibI2JpRMypZt+5EZEiYodKZRdGxKsR8VJEHFJfceXD/vvvz7333sunn37KihUr+Mtf/gLAihUraN++PatWrVpvGGGLFi3o06cPZ511FkccccTnJkXp3Lkzr732WkUP15133lnjtadNm8Zrr73G2rVrmTBhAv369ePDDz9k2223pVWrVrz99tv87W9/2+B7qSnmvn37VgzDHD9+fEX5Bx98QLt27WjatCmPPPIIr7/++gZfZ88992Ty5MmsXbuWf/zjH6xcuZKrr756vZ7GUaNGcdhhh3HcccexevVqPvjgA9q0acM222zDiy++yDPPPPO5ug8++GAmTpzI0qVLAXj33Xc/F1dN71mrVq1o06YNjz/+OAC33347BxxwAGvXruXNN9/kwAMP5Fe/+hXvv/8+H3300Qbd65577smyZcsqkr1Vq1ZV9Ji2bNmSFStWbFA9kiRJUi71OYzzFuDQqoUR8RVgAPBGpbKuwAlAt+w510dE/U8DWU969erFkCFDKCsrY/Dgwey3334A/OIXv2DvvfdmwIABdO7ceb1zhgwZwh133PG5IZWQeQ5u7NixHH744fTr149dd921Yt/06dM5+eSTK7b32WcfLrjgArp3706nTp0YNGgQpaWl9OzZk27dujFy5Ei+/vWvb/C91BTzNddcw29+8xv69OnDkiVLaNUqM+vpsGHDmD59esWzZ1XvszpDhw7l4osv5sILL+T666+nX79+7L777owfP57TTz/9c3WcffbZ9OrVi+985zsceuihrF69mpKSEn7605/St2/fz9XftWtXfvnLXzJw4EBKSkoYMGAAS5YsWe+Ymt4zyEwgc95551FSUsKsWbO4+OKLWbNmDSeeeCI9evSgZ8+e/PCHP6R169afez+qs9VWWzFx4kTOP/98SktLKSsr46mnngIyPamnnnqqE7RIkiRpk8W6yTPqpfKIjsD9KaXulcomAr8A7gPKU0rvRMSFACmly7PH/B24JKWUc5xbeXl5qrru2vz58+nSpUtd3oaq8cknn9C8eXMigvHjx3PnnXdWzLy5sdauXcvgwYMpKyvj7LPPpmXLlixbtox77rmHUaNG1fg83JbIz7ckSZIqi4gZKaXy6vbl9V/REXEUsDil9HyV56N2BiqPv1uULdNmasaMGZxxxhmklGjdujU333xzretq1KgREydO5Prrr+eQQw5h5cqV7LTTTpx99tkmepIkSVIt5e1f0hGxDXARMLC63dWUVdvlGBGjgdEAu+yyS53Fp42z33778fzzz9dZfY0bN+bMM8/kzDPPrLM6JUmSpC1ZPpde+CrQCXg+IhYCHYDnIuLLZHryvlLp2A7AW9VVklIam1IqTymVt23btp5DliRJkqSGKW/JXkrphZRSu5RSx5RSRzIJXq+U0r+BScAJEbF1RHQCdgembcK16iRmaXPi51qSJEkboz6XXrgTeBrYMyIWRcSomo5NKc0F7gLmAQ8Cp6eU1tTmus2aNWP58uX+w1hFJaXE8uXLadasWaFDkSRJUgNRr7Nx1rfqZuNctWoVixYt+tzC2lJD16xZMzp06EDTpk0LHYokSZI2E5vNbJz50LRpUzp16lToMCRJkiSpoPI5QYskSZIkKU9M9iRJkiSpCJnsSZIk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EyfmOar8Gzp0KFOnTuWdd96hQ4cOjBkzhqlTpzJr1iwigo4dO/K///u/hQ5TkiRJDVzekz2pJjfffDNDhgwpdBj17s477/xc2ahRowoQiSRJkopZQZdekNa59NJLadKkCcOGDSt0KJIkSVJRMNnLs2uvvZbu3bvTrVs3rrnmmkKHs1m49dZbuf/++xk3bhyZ+XskSZIkbSqHcebRnDlz+OMf/8i0adPYaqutOPTQQzn88MPZfffdCx1awTz44INceeWVPProo2yzzTaFDqf+XNJqEyv4vzoJQ5IkSVsOe/byaP78+fTt25dtttmGJk2acMABB3DvvfcWOqy8GTp0KPvssw8vvfQSHTp04KabbuKMM85gxYoVDBgwgLKyMk499dQNru+3v/0t3bp1o3v37gwdOpSVK1fWY/SSJElSw2LPXh51796diy66iOXLl9O8eXMeeOABysvLCx1W3tTlxCSLFy/muuuuY968eTRv3pzjjz+e8ePHM2LEiE2MUpIkSSoOJnt51KVLF84//3wGDBhAixYtKC0tpUkT34LaWr16NZ9++ilNmzblk08+Yaeddip0SJIkSdJmw2GceTZq1Ciee+45HnvsMbbffvst+nm9TbHzzjtz7rnnsssuu9C+fXtatWq13pp9kiRJ0pbObqU8W7p0Ke3ateONN97gnnvu4emnny50SPVrUycmueSDaovfe+897rvvPl577TVat27Ncccdxx133MGJJ564adeTJEmSioTJXp4NHjyY5cuX07RpU37/+9/Tpk2bQofUIE2ZMoVOnTrRtm1bAI499lieeuopkz1t8Tp27EjLli1p3LgxTZo0Yfr06YUOSZIkFYjJXp49/vjjhQ6hKOyyyy4888wzfPLJJzRv3pyHHnpoi5rsRsrlkUceYYcddih0GNpMrFmzhvLycnbeeWfuv//+QocjScojn9lTg7T33nvzrW99i169etGjRw/Wrl3L6NGjCx2WJG12rr32Wrp06VLoMCRJBWCypwZrzJgxvPjii8yZM4fbb7+drbfeutAhqUBWrlxJnz59KC0tpVu3bvzsZz8rdEgFExEMHDiQ3r17M3bs2EKHowJbtGgRf/3rXzn55JMLHUqt+f2W6offrS2DwzglNXhbb701Dz/8MC1atGDVqlX069ePb37zm/Tt27fQoeXdk08+yU477cTSpUsZMGAA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\n",
"text/plain": [
""
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"show_top2_committers_by_year(2017)"
]
},
{
"cell_type": "code",
"execution_count": 20,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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d+/Od77zHdauXcuMGTPo2rUrq1at4qOPPqK0tJT58+cDsGLFCo477ji6dOnCsGHDWD9lxqxZs+jbty/7778/hx9+OAsXLgSgX79+/PjHP6Zv376MGTOGfv36cc4559CnTx9KSkqYMWMGgwYNolOnTlx88cVVce28885AJnE788wz2W+//TjyyCNZtGhR1TaXX345PXv2pKysjJEjR1bFMm7cOL70pS9x/fXX06ZNGwDatm3LPffcwyOPPMI777wDUHWeBx54IOeffz5lZWUA3H777RxzzDEcddRRdOzYkRtvvJHrrruOL3/5yxxwwAEsXboUgFtuuYWePXvSrVs3Bg8ezMqVKwG49NJLueaaa3J+Lu+++y7HHnss3bp1o1u3blXJ7XXXXUdZWRllZWVcf/31AFRWVtKlSxdOO+00ysrKGDZsGI8//jhf/epX6dSpE9OnT9+4m0GSJEnKA5O9BnLbbbcxa9YsZs6cyQ033MB7771Xte6ll17i3nvvZdq0acyZM4eioiLuvvtuevbsycCBA7n44ov50Y9+xEknnVSVCM2ePZvrr7+eF198kTfffJNp06axevVqzjrrLCZOnMisWbM45ZRTuOiii6qO8/777/Pkk09y3nnnAbDtttvy1FNP8d3vfpejjz6aX/3qV8yfP5/bb7/9U/EBPPjgg7zyyivMmzePW2655VMtfmeeeSYzZsxg/vz5fPzxx1XdNO+44w5+/OMfs3jxYr7xjW/wla98hfPPP5/777+fM844g3vvvReAk08+mZtuuolnnnmGoqKiTx13/vz53HPPPUyfPp2LLrqIHXfckdmzZ3PggQdWddEcNGgQM2bMYO7cuZSUlDB27NiN/ly+//3v07dvX+bOnctzzz1HaWkps2bN4n//93/561//yrPPPsstt9zC7NmzAXj99dc5++yzef7553n55Ze55557ePrpp7nmmmu48sorN/q4kiRJUmMr+G6c+XLDDTfw4IMPAvD222/z2muvVa2bPHkys2bNomfPngB8/PHHtG7dGoBLLrmEnj17sv3223PDDTdU7dOrVy/atWsHQPfu3amsrKRly5bMnz+fAQMGALB27VqKi4ur9jnhhBM+FdPAgQMBKC8vp7S0tGrbvffem7fffps99tijatunnnqKoUOHUlRUxF577cWhhx5ate6JJ57g6quvZuXKlSxdupTS0lKOOuoo1qxZwy677MI555zDyJEjOeqoozjuuOMoLS2la9euPPbYY7z//vssX7686tnAb33rW596pu+QQw6hRYsWtGjRgl133ZWjjjqqKubnn38eyCSEF198Me+//z4rVqzg8MMP3+jPZcqUKVVJY1FREbvuuitPP/00xx57LDvttBOQSSb//Oc/M3DgQDp27Eh5eTkApaWl9O/fn4igvLycysrKjT6uJEmS1NhM9hrA1KlTefzxx3nmmWfYcccd6dev36eG408pMXz4cK666qrP7Lt06VJWrFjB6tWrWbVqVVUCst1221VtU1RUxJo1a0gpUVpayjPPPFNjHOv3XW99Hc2aNftUfc2aNWPNmjWf2b+mkSVXrVrF9773PWbOnMkXv/hFLr300qpzW99K9/LLL3PVVVdRVFTEYYcdBsCiRYto3bp1VZfP2mwYV/WY18c4YsQIHnroIbp168btt9/O1KlTc9b5eXLFtDHxSJIkSVsiu3E2gA8++IDddtuNHXfckZdffplnn332U+v79+/PxIkTq56DW7p0KW+99RYAI0eO5IorrmDYsGFccMEFOY/TuXNnFi9eXJXsrV69mhdeeKFezqFPnz5MmDCBtWvXsnDhQp544gmAqsSuVatWrFix4jMjXi5fvpzOnTvz6KOPsm7dOh577DFWrVrFtddeywknnMBuu+1GixYtqq7JhAkTNjm25cuXU1xczOrVq7n77rs3ad/+/fvz61//Gsi0hH744Yf06dOHhx56iJUrV/LRRx/x4IMPcvDBB29yXJIkSdKWxJa9BnDEEUdw00030bVrVzp37swBBxzwqfX77bcfP/3pTznssMNYt24d22yzDb/61a948sknad68Od/61rdYu3YtX/nKV5gyZQrNmtWck2+77bZMnDiR73//+3zwwQesWbOGH/zgB5SWlm72ORx77LFMmTKF8vJy9t13X/r27QtAy5YtOf300ykvL6dDhw5VXVEBhg4dyiWXXMKFF17I8OHDGT16NAcffDATJkzgwgsvpEuXLgCMHTuW008/nZ122ol+/fqx6667blJsV1xxBb179+ZLX/oS5eXlLF++POf2l1xyCRUVFQwcOJAxY8YwcuRIxo4dS1FREb/+9a858MADGTFiBL169QLgtNNO48tf/rLdNCVJktSkxed1q9uSVVRUpJkzZ36q7KWXXqKkpCRPEW3d1q1bx+DBg+nevTvnnnsuLVq0YPHixTzwwAOceuqpVdM/rFixomrUz9GjR7Nw4ULGjBmTz9DrlfegJEmSGktEzEopVdS0zm6cqjfNmjVj4sSJ7L777hx++OH06NGDk08+mU6dOn1qnr/f/e53dO/enbKyMv785z9/auoHSZIkSfXDlj2pnnkPSpIkqbHYsidJkiRJWxmTPUmSJEkqQCZ7kiRJklSATPYkSZIkqQCZ7OXJpEmTGD16dF5juPTSS7nmmmvqtc6JEyfyta99ja5du9KnTx/GjRtXr/XXpvr1bIjzkiRJkpqawp9U/dJNm7D78+v7oF6qGThwIAMHDqyXuvJtzZo1NG/enFGjRvH2229z66230qFDB5YuXcpll13GnDlz+MUvftGgMRTS9ZQkSZLqgy17DaCyspIuXbpw2mmnUVZWxrBhw3j88cf56le/SqdOnZg+fTq33347Z555JgBvvPEGBxxwAD179uSSSy6pmnA8pcT5559PWVkZ5eXl3HvvvQBMnTqVfv36cdxxx9GlSxeGDRtGSomZM2fSvXt3unfvTnl5OREBwC233ELPnj3p1q0bgwcPZuXKlZ+K96WXXqJXr16fir9r164AXH755fTs2ZOysjJGjhzJ+qk6+vXrx49//GP69u3LmDFjmDp1Km+99RZ33303HTp0AGD33XdnzJgxLFmyhBkzZuQ816lTp9K3b1+GDBnCvvvuy6hRo7j77rvp1asX5eXlvPHGGwD83//9H7179+bLX/4yX/va13j33XcBPnU9a7NixQpOPvlkysvL6dq1K7/97W8BGD9+POXl5ZSVlXHBBRdUbb/zzjtzwQUXsP/++/O1r32N6dOn069fP/bee28mTZq00feDJEmSlA8mew3k9ddf5+yzz+b555/n5Zdf5p577uHpp5/mmmuu4corr/zUtmeffTZnn302M2bMYK+99qoqf+CBB5gzZw5z587l8ccf5/zzz2fhwoUAzJ49m+uvv54XX3yRN998k2nTplFRUcGcOXOYM2cORxxxBD/84Q8BGDRoEDNmzGDu3LmUlJQwduzYTx2/pKSETz75hDfffBOAe++9lyFDhgBw5plnMmPGDObPn8/HH3/MI488UrXf+++/z5NPPsl5553HzTffzGWXXcbKlSsZOnQovXr14qKLLuKaa67hvPPO484778x5rgBz585lzJgxzJs3jzvvvJNXX32V6dOnc9ppp/HLX/4SgIMOOohnn32W2bNnc+KJJ3L11Vdv9GdyxRVXsOuuuzJv3jyef/55Dj30UP7xj39wwQUXMGXKFObMmcOMGTN46KGHAPjoo4/o168fs2bNokWLFlx88cU89thjPPjgg1xyySUbfVxJkiQpH0z2GkjHjh0pLy+nWbNmlJaW0r9/fyKC8vJyKisrP7XtM888w/HHHw/At771raryp59+mqFDh1JUVESbNm3o27dvVQtZr169aNeuHc2aNaN79+6fqvO+++7jueeeq3qGbf78+Rx88MGUl5dz991388ILL3wm3iFDhnDfffcBmWTvhBNOAOCJJ56gd+/elJeXM2XKlE/tu34bgAULFrDvvvtyyy230Lt3b6ZPn87y5ctZsWIFnTt3rmqZq+1cAXr27ElxcTHbbbcd++yzD4cddhjAp67ZggULOPzwwykvL+fnP/95jedSm8cff5wzzjijanm33XZjxowZ9OvXjz333JPmzZszbNgwnnrqKQC23XZbjjjiiKoY+vbtyzbbbFPjZyhJkiRtaUz2Gsh2221X9b5Zs2ZVy82aNWPNmjUbVcf6LpOfV39RUVFVnS+88AI/+clPmDBhAkVFRQCMGDGCG2+8kXnz5vGTn/yEVatWfaa+E044gfvuu49XX32ViKBTp06sWrWK733ve0ycOJF58+Zx+umnf2rfnXba6VPnCPDyyy9XJUhf//rXAVi0aBGtW7f+3PPdmGt21llnceaZZzJv3jx+85vf1HgutUkpVXVtrV5Wm2222aZq+7p+hpIkSVK+NFiyFxG3RcSiiJhfw7ofRkSKiFbVyi6MiNcj4pWIOLyh4toSHXDAAVXPj02YMKGqvE+fPtx7772sXbuWxYsX89RTT33q2boNffDBB5x44onccccd7LnnnlXly5cvp7i4mNWrV3P33XfXuO8+++xDUVERV1xxRVWL3fpEqlWrVqxYsYKJEyfWeuw2bdrwxhtv0LlzZx599FEA/vSnP7FmzRp++tOfctJJJ+U81431wQcf0LZtW4BNHunzsMMO48Ybb6xaXrZsGb179+bJJ59kyZIlrF27lvHjx9O3b99NjkuSJEna0jRky97twBEbFkbEF4EBwN+rle0HnAiUZvf5n4goasDYtijXX3891113Hb169WLh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\n",
"text/plain": [
""
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"show_top2_committers_by_year(2018)"
]
},
{
"cell_type": "code",
"execution_count": 21,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "iVBORw0KGgoAAAANSUhEUgAAA4UAAAFNCAYAAAC39MpQAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADh0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uMy4yLjIsIGh0dHA6Ly9tYXRwbG90bGliLm9yZy+WH4yJAAAgAElEQVR4nOzdeZRU1bmw8ecFcUARRIUgiBAvQe2GRmxQHEBDQO+NgGCUoLlhULlmMMaBiNEoYozGGKck6gUxYhxQcSLG5BNRnKJhiENwihNGDAEEBxCJDPv7o4q+DXYXCF1VNPX81qrV5+xzzt5vnepa9MveZ+9IKSFJkiRJKk0Nih2AJEmSJKl4TAolSZIkqYSZFEqSJElSCTMplCRJkqQSZlIoSZIkSSXMpFCSJEmSSphJoSRJkiSVMJNCSSphEbGs2mtNRHxabf/E7Dn7RcSUiPgoIpZGxGMRcXC1OtpFRKp23dyIGF1Le1+JiAciYlFELImI/xcRHTcQY/eIeCgiPsxeMyMihlc73iwiro+If0XE8oj4W/Xj2XPmRsRnEbHbeuXPZ2Nvl92/Obvff73zrs6WD8vuD4uIpzbmHkbEmIhYud55H1arO0XEJ9ny9yLiyohoWO14WUQ8HBEfZO/B7Ij4r1ruVVVc1d73gojYsVrZyRExvZbrN/j5RMQZ2Xv9UUTcFBHbVTv2/YiYFRH/joiba6j/5Ih4I/te/xQRe9QUhySpsEwKJamEpZR2WvsC/gH0q1Z2W0TsDTwN/A1oD+wB3Ac8HBE91quuWbaeIcAFEXFUDU02A6YAHYGWwAzggdriy7bxKPA48B/ArsB3gP/MHt8WeATYC+gBNAVGAZdFxJnrVfd2Nra1dXcCdqih2b8DQ6udtw1wHPBmTTFu6B5mT7uz+nkppWbrVVORvb4XMBgYUe3Y74GpZO5XC+AHwMc1xVKLbYDTN/LcnJ9PRBwJjAZ6A+2ALwMXVbv+n8BPgZvWrzgiegE/AwYAzcl8Hnd8gfchScoTk0JJUi5jgGdSSuellJaklJamlK4Ffgf8vKYLUkrPAC8B5TUcm5FSmpCtayVwFdAxInatpf1fABNTSj9PKb2fMmanlI7PHv9voC1wXErp7ZTSypTSn8gkTmMjYudqdf0O+Ha1/aHALTW0+XvgkIjYJbt/FPAi8K9aYqwzKaU3yCThXQCyPZvtgfEppc+yr6dTSk/lqmc9vwDOjoj1E9Ga2t/Q5zMUmJBSeiml9AFwMTCs2vX3ppTuBxbXUH0/4O7stZ9lr+2Z/Y8HSVIRmRRKknLpA9xdQ/ldZBKnxtULI+MQoAx4biPq7wn8K6X0uSQiW3cPYPIG4vtjSumT9crvAbbPXr/Ws8DOEbFvdnjmYODWGupcQaa37JvZ/W9Tc/JY5yJiH+Aw4I1s0eLs9q0RcUxEtNyEamcB04GzN+Ha9T+fMuCFasdfAFrmSOqri+yr+j7U8J8HkqTCMimUJOWyGzC/hvL5ZP4N2aVa2fvAEuBGYHRKaVquiiOiDfAbYP1hnmvtkm2jpvZzxpdSWpWNZ7f1Dq3tLewDvAq8V0u9twDfjoimZIZ03p8jho1xfPZ5wLWvx9Y7/teI+AR4hUwCd132fSTgCGAu8EtgfkQ8EREdvmD7FwCnRcTuG3tBLZ/PTsBH1fbXbjfZiCofInMfOkfEDtmYEtA492WSpHwzKZQk5fI+0KqG8lbAGuCDamW7pZR2SSntmx1iWqtscvIwcF1Kqbbnyj7ItlFT+znjyz4HuFv2eHW/A04gM+Sx1t6/7PDM3YHzgQdTSp/miGFj3JVSalbtdcR6x7uSSbgGAwcCVRPDpJTmpZS+n1Lam8yzk5/kir0mKaU5wINkngfcoByfzzKg+pDctdtLNyKGacCFZHpx3yGT6C4F5m1MTJKk/DEplCTl8giZSVbWdzyZZw2Xf9EKs8/qPQxMSSldUtt52bqfAY7dQHz/WX12zaxjgX+TGTJavc53yExw8l/AvRsI9VbgLAo0dDT7vORdZN7zBbWc8y6Z3rtNGXJ5IXAK0DrXSRv4fF4CKqrtVwALahr+W5OU0m9SSh1SSi3IJIfbAHM2Mn5JUp6YFEqScrkIODgiLomI5hHRJCJOIzME85wvWll24pf/BzydUtqYXqsfAcMiYtTa59YioiIiJmWP/45MT9PdkVkao1F2hsxrgTEppY9qqPMk4Ks1PIe4vmvJDDN9YiPirEuXASMj4ksRsUtEXBQR/xERDbITz4xgvWR3Y2QnsbmTzCQ8NdqIz+cW4KTILFOyC5me1JurXb9NRGwPNAQaRsT22V5bstvl2edO2wLjgGuyE9ZIkorIpFCSVKuU0uvAoWR6hOaSeX7vWODIlNLTm1DlQKAbMHy9dfva1tL+n4GvZl9vRcQSMsnEQ9nj/wa+BrwL/IXMUg1XAuellH5RS51vppRmbSjQ7Ayc07LP9W2uweu932UR0aKWdv9GZgmOUcBnZJZ+eITMe5tDpgd02CbGMZZqQ1NrkPPzyc7sejnwGJkhoO+Q6YFc63zgUzLDVL+V3T4/e2x74HYyQ1BnkOkR/ckmvg9JUh2Kuvm3TpIkSZJUH9lTKEmSJEklLG9JYUTcFBELI2LOeuWnRcRrEfFSRFxerfzciHgje+zIfMUlSZIkSfo/2+Sx7puBX1Nt1raIOAIYAHROKf177fMUEbEfmUWCy4A9gEci4isppdV5jE+SJEmSSl7eegpTSk+QWcS4uu8Al2UnBiCltDBbPgCYlFL6d0rpbeANoHu+YpMkSZIkZRT6mcKvAIdFxF8i4vGI6JYtb01m5ri15rGBdZQkSZIkSZsvn8NHa2tvF+AgMlNe3xURXwaihnNrnBY1IkYCIwF23HHHA/bZZ588hSpJkiRJW7bZs2e/n1LafXPqKHRSOA+4N7vm04yIWAPsli3fs9p5bYB/1lRBSmkcmTWqqKysTLNmbXCpKUmSJEnaKkXEO5tbR6GHj95PZgFiIuIrwLbA+8AU4JsRsV1EtAc6kFnYVpIkSZKUR3nrKYyIO4DDgd0iYh5wIXATcFN2mYrPgKHZXsOXIuIu4GVgFfA9Zx6VJEmSpPyLTE5WPzl8VJIkSVIpi4jZKaXKzamj0M8U5t3KlSuZN28eK1asKHYokrK233572rRpQ6NGjYodiiRJktaz1SWF8+bNo0mTJrRr146ImiY1lVRIKSUWL17MvHnzaN++fbHDkSRJ0noKPdFM3q1YsYJdd93VhFDaQkQEu+66q733kiRJW6itLikETAilLYzfSUmSpC3XVpkUbqnatWvH+++//4Wvmz59OkcffXQeIvq8gw8+uMbyYcOGMXny5A1ev2bNGm688UYOPfRQKioq6NOnDw8++GBdh1mjG264gVtuuQXY+HglSZKkUrfVPVO4vnaj/1Cn9c297Ot1Wl8hrFq1im222biP+s9//vMmt5NS4sQTT6Rly5bcc889tGzZkvfee4+zzjqLN998k9NPP32T694Yp556al7rlyRJkrZG9hTmyTHHHMMBBxxAWVkZ48aN+9zxW2+9le7du9OlSxf+53/+h9WrVzNz5kw6d+7MihUr+OSTTygrK2POnDkALFu2jG984xvss88+nHjiiaxdSmT27Nn06tWLAw44gCOPPJL58+cDcPjhh/PjH/+YXr16cc0113D44Ydzxhln0LNnT/bdd19mzpzJoEGD6NChA+eff35VXDvttBOQSfC+//3vs99++/H1r3+dhQsXVp0zduxYunXrRnl5OSNHjqyKZeLEiey1115cffXVtGzZEoDWrVtz++238+CDD/Lee+8BVL3PHj16MGrUKMrLywG4+eabOeaYY+jXrx/t27fn17/+NVdeeSX7778/Bx10EEuWLAFg/PjxdOvWjYqKCo499liWL18OwJgxY7jiiityfi4LFixg4MCBVFRUUFFRUZUEX3nllZSXl1NeXs7VV18NwNy5c9lnn304+eSTKS8v58QTT+SRRx7hkEMOoUOHDsyYMWPjfhkkSZKkLZhJYZ7cdNNNzJ49m1mzZnHttdeyePHiqmOvvPIKd955J08//TTPP/88DRs25LbbbqNbt27079+f888/nx/96Ed861vfqkqYnnvuOa6++mpefvll3nrrLZ5++mlWrlzJaaedxuTJk5k9ezYjRozgvPPOq2rnww8/5PHHH+ess84CYNttt+WJJ57g1FNPZcCAAfzmN79hzpw53HzzzevEB3Dffffx2muv8be//Y3x48ev04P4/e9/n5kzZzJnzhw+/fTTquGht9xyCz/+8Y9ZtGgR//Vf/8XBBx/MqFGjuPvuu/ne977HnXfeCcDw4cO54YYbeOaZZ2jYsOE67c6ZM4fbb7+dGTNmcN5559G4cWOee+45evToUTU0dNCgQcycOZMXXniBfffdlwkTJmz05/KDH/yAXr168cILL/DXv/6VsrIyZs+ezW9/+1v+8pe/8OyzzzJ+/Hiee+45AN544w1OP/10XnzxRV599VVuv/12nnrqKa644gp+9rOfbXS7kiRJ0pZqqx8+WizXXnst9913HwDvvvsur7/+etWxadOmMXv2bLp16wbAp59+SosWLQC44IIL6NatG9tvvz3XXntt1TXdu3enTZs2AHTp0oW5c+fSrFkz5syZQ58+fQBYvXo1rVq1qrpm8ODB68TUv39/ADp16kRZWVnVuV/+8pd599132XXXXavOfeKJJxgyZAgNGzZkjz324Ktf/WrVsccee4zLL7+c5cuXs2TJEsrKyujXrx+rVq1i55135owzzmDkyJH069ePb3zjG5SVldG5c2emTp3Khx9+yNKlS6ueXTzhhBPWeebwiCOOoEmTJjRp0oSmTZvSr1+/qphffPFFIJM4nn/++Xz44YcsW7aMI488cqM/l0cffbQquWzYsCFNmzblqaeeYuDAgey4445AJul88skn6d+/P+3bt6dTp04AlJWV0bt3byKCTp06MXfu3I1uV5IkSdpSmRTmwfTp03nkkUd45plnaNy4MYcffvg60/GnlBg6dCiXXnrp565dsmQJy5YtY+XKlaxYsaIqUdluu+2qzmnYsCGrVq0ipURZWRnPPPNMjXGsvXattXU0aNBgnfoaNGjAqlWrPnd9TTNGrlixgu9+97vMmjWLPffckzFjxlS9t7W9fq+++iqXXnopDRs2pG/fvgAsXLiQFi1aVA01rc36cVWPeW2Mw4YN4/7776eiooKbb76Z6dOn56xzQ3LFtDHxSJIkSfWZw0fz4KOPPmKXXXahcePGvPrqqzz77LPrHO/duzeTJ0+uek5vyZIlvPPOOwCMHDmSiy++mBNPPJFzzjknZzsdO3Zk0aJFVUnhypUreemll+rkPfTs2ZNJkyaxevVq5s+fz2OPPQZQlQDutttuLFu27HMzfC5dupSOHTvy8MMPs2bNGqZOncqKFSv45S9/yeDBg9lll11o0qRJ1T2ZNGnSF45t6dKltGrVipUrV3Lbbbd9oWt79+7N9ddfD2R6Vj/++GN69uzJ/fffz/Lly/nkk0+47777OOyww75wXJIkSVJ9ZE9hHhx11FHccMMNdO7cmY4dO3LQQQetc3y//fbjpz/9KX379mXNmjU0atSI3/zmNzz++ONss802nHDCCaxevZqDDz6YRx99lAYNas7dt912WyZPnswPfvADPvroI1atWsUPf/hDysrKNvs9DBw4kEcffZROnTrxla98hV69egHQrFkzTjnlFDp16kS7du2qhsACDBkyhAsuuIBzzz2XoUOHctlll3HYYYcxadIkzj33XPbZZx8AJkyYwCmnnMKOO+7I4YcfTtOmTb9QbBdffDEHHngge+21F506dWLp0qU5z7/ggguorKykf//+XHPNNYwcOZIJEybQsGFDrr/+enr06MGwYcPo3r07ACeffDL777+/w0MlSZJUEmJDw/m2ZJWVlWnWrFnrlL3yyivsu+++RYqotK1Zs4Zjjz2WLl26cOaZZ9KkSRMWLVrEvffey0knnVS1LMayZcuqZjm97LLLmD9/Ptdcc00xQ1cB+N2UJEmqexExO6VUuTl1OHxUdaZBgwZMnjyZ5s2bc+SRR9K1a1eGDx9Ohw4d1lkn8Q9/+ANdunShvLycJ598cp0lMSRJkiQVlj2FkgrC76YkSVLds6dQkiRJkrRZTAolSZIkqYSZFEqSJElSCTMplCRJkqQSZlKYB3PnzqW8vHyz6vjwww+57rrrNquOV199lS5durD//vvz5ptvblZddWHMmDFcccUVxQ7jCxs2bBiTJ08G4PDDD2f9yY02xpo1a7jxxhs59NBDqaiooE+fPjz44IN1HWqNbrjhBm655RZg3fciSZIkQSksXj/miy2MvuH6Pqrb+mqxNin87ne/u9HXrF69moYNG1bt33///QwYMICLLrpok+vQ5lm9ejUNGjTgxBNPpGXLltxzzz20bNmS9957j7POOos333yT008/Pa8xnHrqqXmtX5IkSfWbPYV5snr1ak455RTKysro27cvn376KW+++SZHHXUUBxxwAIcddhivvvoqAAsWLGDgwIFUVFRQUVHBn//8Z0aPHs2bb75Jly5dGDVqFCklRo0aRXl5OZ06deLOO+8EYPr06RxxxBGccMIJdOrUqar9hx56iKuvvpobb7yRI444AoBbb72V7t2706VLF/7nf/6H1atXA7DTTjtxwQUXcOCBB/LMM8+w0047cd5551FRUcFBBx3EggULAPj973/PgQceyP7778/Xvva1qvIxY8YwYsQIDj/8cL785S9z7bXXVsVxySWX0LFjR772ta/x2muvVZXXdi+6dOlS9dphhx14/PHHP3dvL7/8cjp16kRFRQWjR48GYPz48XTr1o2KigqOPfZYli9fDsDdd99NeXk5FRUV9OzZs+qzOfvss+nUqROdO3fmV7/6FQBjx46lW7dulJeXM3LkSDa0XMt3vvMdKisrKSsr48ILL6wqb9euHWPHjuXQQw/l7rvvZuLEiey1115cffXVtGzZEoDWrVtz++238+CDD/Lee+8BMHPmTDp37kyPHj2qPmuAm2++mWOOOYZ+/frRvn17fv3rX3PllVey//77c9BBB7FkyZKc92Bjemhr+h0EuPLKKykvL6e8vJyrr74ayPSE77PPPpx88smUl5dz4okn8sgjj3DIIYfQoUMHZsyYkbMtSZIkbWFSSvX2dcABB6T1vfzyy+sWXLhz3b42wttvv50aNmyYnnvuuZRSSscdd1z63e9+l7761a+mv//97ymllJ599tl0xBFHpJRSOv7449NVV12VUkpp1apV6cMPP0xvv/12Kisrq6pz8uTJ6Wtf+1patWpV+te//pX23HPP9M9//jM99thjqXHjxumtt976XBwXXnhh+sUvflF1X44++uj02WefpZRS+s53vpMmTpyYUkoJSHfeeWfVdUCaMmVKSimlUaNGpYsvvjillNKSJUvSmjVrUkopjR8/Pp155plV7fTo0SOtWLEiLVq0KDVv3jx99tlnadasWam8vDx98skn6aOPPkp77713VTy13Yu1pkyZkg499NCqeNd66KGHUo8ePdInn3ySUkpp8eLFKaWU3n///apzzjvvvHTttdemlFIqLy9P8+bNSyml9MEHH6SUUrruuuvSoEGD0sqVK9epY+3PlFL61re+VXUPhg4dmu6+++6UUkq9evVKM2fOXOf8VatWpV69eqUXXnghpZTSXnvtlX7+859X1XXEEUekjz76KC1cuDD953/+Z+rRo0c6++yz06RJk9J9992XfvnLX6aUUiorK0tPP/10Simlc845p+rz/+1vf5v23nvv9PHHH6eFCxemnXfeOV1//fUppZR++MMfVv3u1HYPqv8eVH8v1dX0O7j281u2bFlaunRp2m+//dJf//rXqt/vF198Ma1evTp17do1DR8+PK1Zsybdf//9acCAAZ+rP6UavpuSJEnabMCstJl51dY/fLRI2rdvT5cuXQA44IADmDt3Ln/+85857rjjqs7597//DcCjjz5a9cxXw4YNadq0KR988ME69T311FMMGTKEhg0b0rJlS3r16sXMmTPZeeed6d69O+3bt88Zz7Rp05g9ezbdunUD4NNPP6VFixZVbR577LFV52677bYcffTRVbFPnToVgHnz5jF48GDmz5/PZ599tk6bX//619luu+3YbrvtaNGiBQsWLODJJ59k4MCBNG7cGID+/fsDsGzZslrvBcDrr7/OqFGjePTRR2nUqNE67+ORRx5h+PDhVXU2b94cgDlz5nD++efz4YcfsmzZMo488kgADjnkEIYNG8bxxx/PoEGDquo49dRT2Wabbdap47HHHuPyyy9n+fLlLFmyhLKyMvr161frPb3rrrsY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sssuK1J0Umm74447mD9/PitXrmTevHmcdNJJ6xyfO3euPRnref3116u2p0yZwj777FPEaLSl8rslSfVb0Zak2FrVNFHDAw88wPTp0wEYOnQohx9+OD//+c8LH9xW6pprrmH8+PGklDjllFP44Q9/WOyQpHqppslUHnroIV577TUaNGjAXnvtxQ033FDsMAumLp7XLcVndSWty79TVB+YFBbAggULaNWqFQCtWrVa5zkLbZ45c+Ywfvx4ZsyYwbbbbstRRx3F17/+dTp06FDs0KR6p6bJVNbv8ZEkbTz/TlF94fBR1WuvvPIKBx10EI0bN2abbbahV69e3HfffcUOS5KkGl111VWUlZVRXl7OkCFDWLFiRbFDUh75d4rqC3sKC6Bly5bMnz+fVq1aMX/+fFq0aPGFrn/ttdcYPHhw1f5bb73F2LFjHX4AlJeXc95557F48WJ22GEHHnroISorK4sdlrYgDgGU6p5L4Wya9957j2uvvZaXX36ZHXbYgeOPP55JkyYxbNiwYoemPPHvFNUXJoUF0L9/fyZOnMjo0aOZOHEiAwYM+ELXd+zYkeefzyzpuHr1alq3bs3AgQPzEWq9s++++3LOOefQp08fdtppJyoqKthmG3+tJUlbplWrVvHpp5/SqFEjli9fzh577FHskJRH/p2i+sLfyjpW00QNo0eP5vjjj2fChAm0bduWu+++e5PrnzZtGnvvvTd77bVXHUZdv5100klVzz39+Mc/pk2bNkWOSKof7O2RCqt169acffbZtG3blh122IG+ffvSt2/fYoelPPPvFNUHJoV1rKaJGiCTzNWFSZMmMWTIkDqpa2uxcOFCWrRowT/+8Q/uvfdennnmmWKHJEnS53zwwQc88MADvP322zRr1ozjjjuOW2+9lW9961vFDk155N8pqg9MCuuRzz77jClTpnDppZcWO5QtyrHHHsvixYtp1KgRv/nNb9hll12KHZIkSZ/zyCOP0L59e3bffXcABg0axJ///GeTwq2cf6eoPjAprEf++Mc/0rVrV1q2bFnsULYoTz75ZLFDkCRpg9q2bcuzzz7L8uXL2WGHHZg2bZqTjpQA/05RfeCSFPXIHXfc4dBRSZLqqQMPPJBvfOMbdO3alU6dOrFmzRpGjhxZ7LAkyZ7CzTamaR3V81HOw8uXL2fq1Kn87//+b920J0mSCu6iiy7i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\n",
"text/plain": [
""
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"show_top2_committers_by_year(2019)"
]
},
{
"cell_type": "code",
"execution_count": 22,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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CTpOPvlkqqqqqK6u5rrrrgPgnnvuYejQoXz1q1+le/fujB07lsxkzpw59O7dm969e1NdXV03ZO+yyy6jf//+1NTUMHLkSN5///3V4n3mmWcYMGDAavH36tULgLPPPpv+/ftTVVXFpEmTWLWEydChQ/mXf/kXhgwZwpQpU7jnnnt4+eWXufbaa+nSpQsA22+/PVOmTOGNN95g9uzZRe/1nnvuYciQIYwaNYrddtuNU089lWuvvZYBAwZQXV3N/PnzAfjtb3/LwIED2XPPPTnggAN47bXXAFZrz8YsW7aM8ePHU11dTa9evfjNb34DwLRp06iurqaqqopTTjml7vitttqKU045hb59+3LAAQfw8MMPM3ToUL74xS8ya9asdf5+kCRJkpozk8ISeeGFFzjhhBN4/PHHefbZZ/n1r3/NAw88wPnnn8+//du/rXbsCSecwAknnMDs2bP5/Oc/X1d+ww03MG/ePB577DHuuOMOTj75ZBYtWgTAo48+yoUXXsjTTz/Niy++yIMPPki/fv2YN28e8+bN4+CDD+akk04CYMSIEcyePZvHHnuMHj16cMUVV6x2/R49evDhhx/y4osvAnDdddcxatQoAI477jhmz57Nk08+yQcffMAtt9xSd94777zDvffey/e//30uvfRSzjrrLN5//33GjBnDgAEDOO200zj//PP5/ve/z9VXX130XgEee+wxpkyZwhNPPMHVV1/N888/z8MPP8zEiRO56KKLANhnn3146KGHePTRRznqqKM477zz1vkzOeecc9hmm2144oknePzxx9lvv/34y1/+wimnnMJdd93FvHnzmD17NjfddBMA7733HkOHDmXu3Lm0a9eO008/ndtvv50bb7yRM844Y52vK0mSJDVnJoUl0rVrV6qrq2nTpg09e/Zk//33JyKorq5mwYIFqx37hz/8gSOPPBKAr33ta3XlDzzwAGPGjKFt27Z07NiRIUOG1PW4DRgwgM6dO9OmTRt69+69Wp0zZszgkUceqXvG7sknn2Tfffelurqaa6+9lqeeeuoT8Y4aNYoZM2YAtUnh6NGjAbj77rsZOHAg1dXV3HXXXaudu+oYqF0KZLfdduOyyy5j4MCBPPzwwyxdupRly5ax++671/X0NXavAP3796dTp05svvnm7Lrrrhx44IEAq7XZwoULOeigg6iuruYnP/lJg/fSmDvuuIPvfOc7ddvbbbcds2fPZujQoey4445ssskmjB07lvvuuw+AzTbbjIMPPrguhiFDhrDppps2+BlKkiRJGyuTwhLZfPPN6963adOmbrtNmzasWLFinepYNVRzbfW3bdu2rs6nnnqKM888k+nTp9O2bVsAxo0bxy9+8QueeOIJzjzzzAaXBhg9ejQzZszg+eefJyLo1q0by5cv59vf/jYzZ87kiSee4Nhjj13t3C233HK1ewR49tln6xKpL33pSwAsXryYDh06rPV+16XNjj/+eI477jieeOIJ/vM///NTLXOQmZ+YBbNYG2+66aZ1x6/vZyhJkiQ1dyaFzcBee+1V93zb9OnT68oHDx7Mddddx8qVK3n99de57777Vnv2b03vvvsuRx11FL/61a/Ycccd68qXLl1Kp06d+Oijj7j22msbPHfXXXelbdu2nHPOOXU9gKsSrvbt27Ns2TJmzpzZ6LU7duzI/Pnz2X333bntttsA+J//+R9WrFjBD3/4Q77+9a8Xvdd19e6777LTTjsBfOqZTQ888EB+8Ytf1G2//fbbDBw4kHvvvZc33niDlStXMm3aNIYMGfKp45IkSZI2ViaFzcCFF17IT3/6UwYMGMCiRYvYZpttADjiiCPo1asXNTU17Lfffpx33nl87nOfa7Sem266iZdffpljjz22bsIZqH2WbuDAgQwfPpzu3bs3ev7o0aO55ppr6p4n3HbbbTn22GOprq7m8MMPp3///o2ee8wxx3DSSSdx7LHH8uCDDzJgwAC22mor7rrrLoYMGcL+++9f9F7X1eTJkznyyCPZd999ad++/VqPv+SSS7jkkksAOP3003n77bepqqqipqaGu+++m06dOvHjH/+YYcOGUVNTQ58+fTjssMM+VUySJEnSxiyKDZ9r7vr165dz5sxZreyZZ56hR48eFYpo/bz//vt85jOfISKYPn0606ZN4+abb650WJ/a8ccfz4oVKzjnnHNo3749S5YsYcaMGYwaNYqtt94aaDn3qk9vY/zZlCRJau4iYm5m9tuQOlr8OoUbg7lz53LccceRmWy77bZceeWVlQ5pvVx00UVcc801fPWrX2XJkiXssMMOTJo0qS4hhJZzr5IkSVJLYU+hpLLwZ1OSJKnpNUVPoc8USpIkSVIrZlIoSZIkSa2YSaEkSZIktWImhZIkSZLUipkUlsCCBQuoqqraoDreeecdLr744g2q49lnn6V3797sueeezJ8/f4PqagqTJ0/m/PPPr3QYn9q4ceOYOXMmAEOHDmXNyY3Wxccff8zll1/OPvvsQ01NDcOHD+eWW25p6lAbdMkll/CrX/0KWP1eJEmSJGgNS1JM/nSLo6+9vnebtr5GrEoKv/3tb6/zOStXrqRt27Z12zfddBOHHXYYZ5111nrXoQ2zcuVK2rRpw9ixY+nYsSO/+c1v6NixI6+++irf//73mT9/PieccEJJY/jmN79Z0volSZK0cbOnsERWrlzJscceS8+ePTnwwAP54IMPmD9/PgcffDB9+/Zl33335dlnnwXgtdde44gjjqCmpoaamhr+93//l1NPPZX58+fTu3dvTj75ZDKTk08+maqqKqqrq7nuuusAuOeeexg2bBhf+9rXqK6urrv+rbfeyoUXXsjll1/OsGHDALjmmmsYMGAAvXv35h//8R9ZuXIlAFtttRVnnHEGAwcO5A9/+ANbbbUVp512GjU1Ney111689tprAPz2t79l4MCB7LnnnhxwwAF15ZMnT2bChAkMHTqUL37xi/z85z+vi+NHP/oRu+++OwcccADPPfdcXXljbdG7d++612c+8xnuvffeT7TteeedR3V1NTU1NZx66qkAXHbZZfTv35+amhpGjhzJ+++/D8D1119PVVUVNTU1DB48uO6zOemkk6iurqZXr15cdNFFAJx99tn079+fqqoqJk2axNqWa/nWt75Fv3796NmzJ2eeeWZdeZcuXTj77LPZZ599uP7665k6dSpf+MIXuPDCC+nYsSMAO+20E7/+9a+55ZZbePXVVwGYPXs2vXr1YtCgQXWfNcBVV13F4YcfziGHHELXrl35xS9+wU9/+lP23HNP9tprL956662ibbAuPbQNfQ8C/PSnP6WqqoqqqiouvPBCoLYnvHv37kycOJGqqirGjh3LHXfcwd577023bt14+OGHi15LkiRJzUxmbrSvvn375pqefvrp1QvO3LppX+vgpZdeyrZt2+ajjz6amZlHHnlkXn311bnffvvl888/n5mZDz30UA4bNiwzM0eNGpU/+9nPMjNzxYoV+c477+RLL72UPXv2rKtz5syZecABB+SKFSvyr3/9a+688875l7/8Je++++787Gc/my+++OIn4jjzzDPzJz/5SV27fOUrX8kPP/wwMzO/9a1v5dSpUzMzE8jrrruu7jwgZ82alZmZJ598cp5zzjmZmfnWW2/lxx9/nJmZl112WZ544ol11xk0aFAuX748X3/99dx+++3zww8/zDlz5mRVVVW+9957+e677+auu+5aF09jbbHKrFmzcp999qmLd5Vbb701Bw0alO+9915mZr755puZmfnGG2/UHXPaaaflz3/+88zMrKqqyoULF2Zm5ttvv52ZmRdffHGOGDEiP/roo9XqWPU1M/PrX/96XRscffTRef3112dm5pAhQ3L27NmrHb9ixYocMmRIPvbYY5mZ+YUvfCH//d//va6uYcOG5bvvvpuLFy/OL33pSzlo0KA86aSTcvr06XnjjTfmBRdckJmZPXv2zAcffDAzM0855ZS6z/+//uu/ctddd80lS5bk4sWLc+utt85f/vKXmZn53e9+t+57p7E2qP99UP9e6mvoe3DV57ds2bJcunRp7rHHHvnII4/UfX8//vjjuXLlyuzTp0+OHz8+P/7447zpppvysMMO+0T9mQ38bEqSJGmDAXNyA/Oqlj98tEK6du1K7969Aejbty8LFizgf//3fznyyCPrjvnb3/4GwF133VX3zFfbtm3ZZpttePvtt1er74EHHmDMmDG0bduWjh07MmTIEGbPns3WW2/NgAED6Nq1a9F47rzzTubOnUv//v0B+OCDD+jQoUPdNUeOHFl37GabbcZXvvKVuthvv/12ABYuXMjo0aNZtGgRH3744WrX/PKXv8zmm2/O5ptvTocOHXjttde4//77OeKII/jsZz8LwKGHHgrAsmXLGm0LgD/96U+cfPLJ3HXXXWy66aar3ccdd9zB+PHj6+rcfvvtAXjyySc5/fTTeeedd1i2bBkHHXQQAHvvvTfjxo1j1KhRjBgxoq6Ob37zm2yyySar1XH33Xdz3nnn8f777/PWW2/Rs2dPDjnkkEbbdMaMGVx66aWsWLGCRYsW8fTTT9OrVy8ARo8eXXfcihUr2Hrrrfne977HpEmTOOSQQ/jqV79Kz5496dWrF7fffjvvvPMOS5cu5e///u8B+NrXvrbaM4fDhg2jXbt2tGvXjm222aYururqah5//PGibbAuGvoefOCBBzjiiCPYcsstARgxYgT3338/hx56KF27dq3rme7Zsyf7778/EUF1dTULFixY5+tKkiSp8kwKS2TzzTeve9+2bVtee+01tt12W+bNm7de9WWRoYyr/tG+tvOPPvpofvzjH39i3xZbbLHac4SbbropEQHUxr5ixQoAjj/+eE488UQOPfRQ7rnnHiZPnlx3zpr3u+qcVfXU9/HHHzfaFu+99x6jRo3isssu4/Of/3yD99FQnePGjeOmm26ipqaGq666invuuQeonWTlj3/8I7/73e/o3bs38+bNa7CO5cuX8+1vf5s5c+aw8847M3nyZJYvX/6J66zy0ksvcf755zN79my22247xo0bt9rx9T+TVW377LPP8uMf/5i2bdty4IEHArB48WI6dOiw1qGq9du3TZs2ddtt2rSpa+vG2mB9FYtpXeKRJEnSxqFkzxRGxJURsTginmxg30kRkRHRvl7ZDyLihYh4LiLWvYtjI7H11lvTtWtXrr/+eqD2H9yPPfYYAPvvvz+//OUvgdrn3ZYsWUK7du1YunRp3fmDBw/muuuuY+XKlbz++uvcd999DBgwYJ2vv//++zNz5kwWL14MwFtvvcXLL7/8qe7h3XffZaeddgJg6tSpaz1+8ODB3HjjjXzwwQcsXbqU3/72t0Dxthg/fjzjx49n3333bbDOAw88kCuvvLLueblVz9MtXbqUTp068dFHH3HttdfWHT9//nwGDhzI2WefTfv27XnllVc48MADueSSS+qSl7feeqsuoWvfvj3Lli1b6wydS5YsYcstt2Sbbbbhtdde47//+7+LHr906VJ23313brvtNj7++GNuv/12li9fzgUXXMDo0aPZbrvtaNeuHQ899BAA06dPL1pfY9doqA3WRUPfg4MHD+amm27i/fff57333uPGG29s9HORJEnSxquUE81cBRy8ZmFE7AwMB/5cr2wP4CigZ+GciyOixU2Bee2113LFFVdQU1NDz549ufnmmwGYMmUKd999N9XV1fTt25ennnqKHXbYgb333puqqipOPvlkjjjiCHr16kVNTQ377bcf5513Hp/73Oc+cY2JEyc2uGTCHnvswQ9/+EMOPPBAevXqxfDhw1m0aNGnin/y5MkceeSR7LvvvrRv336tx/fp04fRo0fTu3dvRo4cuVpC0VBbvPzyy8ycOZMrr7yybrKZOXPmMGfOHCZOnAjAwQcfzKGHHkq/fv3o3bt33QQq55xzDgMHDmT48OF079697jonn3wy1dXVVFVVMXjwYGpqapg4cSK7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\n",
"text/plain": [
""
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"show_top2_committers_by_year(2020)"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {},
"outputs": [],
"source": []
}
],
"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.8.5"
}
},
"nbformat": 4,
"nbformat_minor": 4
}