├── .gitignore ├── logo.png ├── requirements.txt ├── logo-raw.png ├── .travis.yml ├── README.md ├── nbtests.py ├── LICENSE ├── untested └── Axelrod-Strategy-Times.ipynb ├── basic-noisy-tournament.ipynb ├── basic-tournament.ipynb ├── Logo.ipynb ├── Spatia-Circle-Structured-Example.ipynb └── Spatia-Lattice-Structured-Example.ipynb /.gitignore: -------------------------------------------------------------------------------- 1 | .ipynb_checkpoints/ 2 | ./logo-raw.png 3 | -------------------------------------------------------------------------------- /logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Axelrod-Python/Axelrod-notebooks/HEAD/logo.png -------------------------------------------------------------------------------- /requirements.txt: -------------------------------------------------------------------------------- 1 | axelrod 2 | networkx 3 | jupyter 4 | pillow 5 | pandas 6 | seaborn 7 | -------------------------------------------------------------------------------- /logo-raw.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Axelrod-Python/Axelrod-notebooks/HEAD/logo-raw.png -------------------------------------------------------------------------------- /.travis.yml: -------------------------------------------------------------------------------- 1 | language: python 2 | python: 3 | - 3.5 4 | - 3.6 5 | before_install: 6 | - export DISPLAY=:99.0 7 | - sh -e /etc/init.d/xvfb start 8 | install: 9 | - pip install -r requirements.txt 10 | script: 11 | - python nbtests.py 12 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | A repository of Jupyter notebooks using the Axelrod project. 2 | Download, modify, and contribute your own notebooks! 3 | 4 | Currently we have notebooks for the following: 5 | 6 | * [Basic Example Tournaments](basic-tournament.ipynb) 7 | * [Noisy Tournaments](basic-noisy-tournament.ipynb) 8 | * [Using Axelrod matches](Matches.ipynb) 9 | * [The Moran Process](Moran-Process.ipynb) 10 | * [Spatial tournaments on a lattice](Spatia-Lattice-Structured-Example.ipynb) 11 | * [Spatial tournaments on a cycle](Spatia-Circle-Structured-Example.ipynb) 12 | * [Code to recreate the Axelrod logo](Logo.ipynb) 13 | 14 | The `./untested/` dir contains notebooks that are not tested by the 15 | `./nbtests.py` script. 16 | 17 | To view and run these notebooks without having to download or install anything, 18 | you can [![Binder](https://mybinder.org/badge.svg)](https://mybinder.org/v2/gh/Axelrod-Python/Axelrod-notebooks/master) 19 | -------------------------------------------------------------------------------- /nbtests.py: -------------------------------------------------------------------------------- 1 | """ 2 | Script to test all notebooks execute without errors 3 | """ 4 | import nbformat 5 | import pathlib 6 | from nbconvert.preprocessors import ExecutePreprocessor 7 | 8 | def retrieve_errors(nb_path): 9 | """ 10 | Find all errors that occur when running a nb 11 | """ 12 | 13 | with nb_path.open() as f: 14 | nb = nbformat.read(f, as_version=4) 15 | 16 | ep = ExecutePreprocessor(timeout=600, kernel_name='python3', 17 | allow_errors=True) 18 | out, _ = ep.preprocess(nb, {'metadata': {'path': '.'}}) 19 | errors = [] 20 | for cell in out.cells: 21 | if "outputs" in cell: 22 | for output in cell["outputs"]: 23 | if output.output_type == "error": 24 | errors.append(output.evalue) 25 | return errors 26 | 27 | if __name__ == "__main__": 28 | 29 | nb_dir = pathlib.Path('.') 30 | nbs = nb_dir.glob("*.ipynb") 31 | 32 | for path in nbs: 33 | print("Testing: {}".format(path.stem)) 34 | errors = retrieve_errors(path) 35 | assert errors == [], errors 36 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | The MIT License (MIT) 2 | 3 | Copyright (c) 2016 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /untested/Axelrod-Strategy-Times.ipynb: -------------------------------------------------------------------------------- 1 | { 2 | "cells": [ 3 | { 4 | "cell_type": "markdown", 5 | "metadata": {}, 6 | "source": [ 7 | "This notebook computes the average strategy runtime by pitting each strategy versus each other strategy. It will take a few hours to run." 8 | ] 9 | }, 10 | { 11 | "cell_type": "code", 12 | "execution_count": 1, 13 | "metadata": { 14 | "collapsed": true 15 | }, 16 | "outputs": [], 17 | "source": [ 18 | "import timeit\n", 19 | "\n", 20 | "import numpy as np\n", 21 | "import pandas as pd\n", 22 | "import tqdm\n", 23 | "\n", 24 | "import axelrod as axl" 25 | ] 26 | }, 27 | { 28 | "cell_type": "code", 29 | "execution_count": 2, 30 | "metadata": {}, 31 | "outputs": [ 32 | { 33 | "data": { 34 | "text/plain": [ 35 | "'3.0.0'" 36 | ] 37 | }, 38 | "execution_count": 2, 39 | "metadata": {}, 40 | "output_type": "execute_result" 41 | } 42 | ], 43 | "source": [ 44 | "axl.__version__" 45 | ] 46 | }, 47 | { 48 | "cell_type": "code", 49 | "execution_count": 3, 50 | "metadata": { 51 | "collapsed": true 52 | }, 53 | "outputs": [], 54 | "source": [ 55 | "strategies = axl.strategies\n", 56 | "reps = 20" 57 | ] 58 | }, 59 | { 60 | "cell_type": "code", 61 | "execution_count": 4, 62 | "metadata": {}, 63 | "outputs": [], 64 | "source": [ 65 | "def play_matches(s1, s2, reps=20):\n", 66 | " match = axl.Match(players=(s1(), s2()), turns=100)\n", 67 | " for _ in range(reps):\n", 68 | " match.play()" 69 | ] 70 | }, 71 | { 72 | "cell_type": "code", 73 | "execution_count": 5, 74 | "metadata": {}, 75 | "outputs": [ 76 | { 77 | "name": "stderr", 78 | "output_type": "stream", 79 | "text": [ 80 | "100%|██████████| 195/195 [16:59:50<00:00, 1886.19s/it] \n" 81 | ] 82 | } 83 | ], 84 | "source": [ 85 | "data = [] \n", 86 | " \n", 87 | "for s1 in tqdm.tqdm(strategies):\n", 88 | " times = []\n", 89 | " for s2 in strategies:\n", 90 | " t = timeit.timeit(lambda: play_matches(s1, s2, reps=reps), number=1)\n", 91 | " times.append(t / float(reps))\n", 92 | " data.append((str(s1()), np.mean(times), np.std(times)))\n", 93 | "\n", 94 | "df = pd.DataFrame(data, columns=[\"Player Name\", \"Mean Time\", \"Std Time\"])\n", 95 | "df.sort_values(by=\"Mean Time\", inplace=True, ascending=False)" 96 | ] 97 | }, 98 | { 99 | "cell_type": "code", 100 | "execution_count": 6, 101 | "metadata": {}, 102 | "outputs": [ 103 | { 104 | "name": "stdout", 105 | "output_type": "stream", 106 | "text": [ 107 | " Player Name Mean Time Std Time\n", 108 | "183 Meta Winner Ensemble: 173 players 0.725196 0.163327\n", 109 | "194 Nice Meta Winner Ensemble: 173 players 0.717734 0.163551\n", 110 | "181 Meta Winner: 173 players 0.715843 0.163815\n", 111 | "193 Nice Meta Winner: 173 players 0.710260 0.161433\n", 112 | "180 Meta Mixer: 173 players 0.704137 0.164330\n", 113 | "179 Meta Minority: 173 players 0.703511 0.161470\n", 114 | "175 Meta Majority: 173 players 0.694404 0.163263\n", 115 | "188 NMWE Deterministic: 126 players 0.674661 0.161399\n", 116 | "186 Meta Winner Long Memory: 95 players 0.669951 0.163705\n", 117 | "190 NMWE Long Memory: 95 players 0.669422 0.161453\n", 118 | "178 Meta Majority Long Memory: 95 players 0.654059 0.161824\n", 119 | "182 Meta Winner Deterministic: 126 players 0.274890 0.368792\n", 120 | "32 DBS: 0.75, 3, 4, 3, 5 0.237661 0.326356\n", 121 | "189 NMWE Finite Memory: 78 players 0.082399 0.161549\n", 122 | "185 Meta Winner Finite Memory: 78 players 0.078334 0.163674\n", 123 | "192 NMWE Stochastic: 47 players 0.077715 0.160826\n", 124 | "187 Meta Winner Stochastic: 47 players 0.074814 0.162308\n", 125 | "177 Meta Majority Finite Memory: 78 players 0.072536 0.161273\n", 126 | "191 NMWE Memory One: 30 players 0.055799 0.160154\n", 127 | "184 Meta Winner Memory One: 30 players 0.053825 0.161574\n", 128 | "176 Meta Majority Memory One: 30 players 0.050814 0.158918\n", 129 | "51 Evolved HMM 5 0.049297 0.159704\n", 130 | "18 Cautious QLearner 0.047443 0.165049\n", 131 | "12 Arrogant QLearner 0.047385 0.164823\n", 132 | "14 Better and Better 0.046649 0.167129\n", 133 | "17 Calculator 0.046625 0.166518\n", 134 | "13 Average Copier 0.046254 0.165869\n", 135 | "4 ALLCorALLD 0.045717 0.164213\n", 136 | "85 Hesitant QLearner 0.045697 0.158947\n", 137 | "126 Risky QLearner 0.045648 0.158738\n", 138 | ".. ... ... ...\n", 139 | "48 Evolved FSM 16 Noise 05 0.037923 0.148604\n", 140 | "120 Resurrection 0.037918 0.148614\n", 141 | "95 Math Constant Hunter 0.037918 0.148293\n", 142 | "104 $\\pi$ 0.037917 0.148406\n", 143 | "73 Grudger 0.037915 0.148749\n", 144 | "150 Tit For Tat 0.037915 0.148737\n", 145 | "129 Shubik 0.037914 0.148716\n", 146 | "124 Revised Downing: True 0.037910 0.148451\n", 147 | "135 SolutionB1 0.037907 0.148419\n", 148 | "36 DoubleCrosser: ('D', 'D') 0.037902 0.148167\n", 149 | "68 Soft Go By Majority: 5 0.037898 0.148177\n", 150 | "161 Win-Stay Lose-Shift: C 0.037892 0.148436\n", 151 | "46 Evolved FSM 4 0.037886 0.148443\n", 152 | "156 VeryBad 0.037871 0.148505\n", 153 | "130 Slow Tit For Two Tats 0.037856 0.148452\n", 154 | "31 Davis: 10 0.037850 0.148450\n", 155 | "128 ShortMem 0.037848 0.148281\n", 156 | "91 Level Punisher 0.037847 0.148361\n", 157 | "58 Forgiver 0.037834 0.148303\n", 158 | "84 Hard Tit For Tat 0.037807 0.148200\n", 159 | "54 Fool Me Forever 0.037794 0.148077\n", 160 | "42 Eventual Cycle Hunter 0.037786 0.147847\n", 161 | "152 Tricky Cooperator 0.037772 0.147798\n", 162 | "74 GrudgerAlternator 0.037734 0.147876\n", 163 | "75 Grumpy: Nice, 10, -10 0.037720 0.147843\n", 164 | "103 Opposite Grudger 0.037701 0.147757\n", 165 | "118 Random Hunter 0.037666 0.147202\n", 166 | "23 Cooperator Hunter 0.037662 0.147499\n", 167 | "22 Cooperator 0.037562 0.147239\n", 168 | "34 Defector Hunter 0.037512 0.146974\n", 169 | "\n", 170 | "[195 rows x 3 columns]\n" 171 | ] 172 | } 173 | ], 174 | "source": [ 175 | "print(df)" 176 | ] 177 | }, 178 | { 179 | "cell_type": "code", 180 | "execution_count": 7, 181 | "metadata": { 182 | "collapsed": true 183 | }, 184 | "outputs": [], 185 | "source": [ 186 | "df.to_csv(\"runtimes.csv\")" 187 | ] 188 | }, 189 | { 190 | "cell_type": "code", 191 | "execution_count": null, 192 | "metadata": { 193 | "collapsed": true 194 | }, 195 | "outputs": [], 196 | "source": [] 197 | } 198 | ], 199 | "metadata": { 200 | "anaconda-cloud": {}, 201 | "kernelspec": { 202 | "display_name": "Python [default]", 203 | "language": "python", 204 | "name": "python3" 205 | }, 206 | "language_info": { 207 | "codemirror_mode": { 208 | "name": "ipython", 209 | "version": 3 210 | }, 211 | "file_extension": ".py", 212 | "mimetype": "text/x-python", 213 | "name": "python", 214 | "nbconvert_exporter": "python", 215 | "pygments_lexer": "ipython3", 216 | "version": "3.5.2" 217 | }, 218 | "widgets": { 219 | "state": {}, 220 | "version": "1.0.0" 221 | } 222 | }, 223 | "nbformat": 4, 224 | "nbformat_minor": 1 225 | } 226 | -------------------------------------------------------------------------------- /basic-noisy-tournament.ipynb: -------------------------------------------------------------------------------- 1 | { 2 | "cells": [ 3 | { 4 | "cell_type": "markdown", 5 | "metadata": {}, 6 | "source": [ 7 | "This notebook shows how to build a noisy tournament. The documentation for this can be found here: http://axelrod.readthedocs.org/en/latest/tutorials/getting_started/noisy_tournaments.html" 8 | ] 9 | }, 10 | { 11 | "cell_type": "code", 12 | "execution_count": 6, 13 | "metadata": { 14 | "collapsed": true 15 | }, 16 | "outputs": [], 17 | "source": [ 18 | "import axelrod as axl\n", 19 | "import random # To set a seed\n", 20 | "%matplotlib inline" 21 | ] 22 | }, 23 | { 24 | "cell_type": "code", 25 | "execution_count": 7, 26 | "metadata": { 27 | "collapsed": false 28 | }, 29 | "outputs": [ 30 | { 31 | "data": { 32 | "image/png": "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\nQmCC\n", 33 | "text/plain": [ 34 | "" 35 | ] 36 | }, 37 | "metadata": {}, 38 | "output_type": "display_data" 39 | } 40 | ], 41 | "source": [ 42 | "random.seed(1)\n", 43 | "strategies = [axl.Cooperator(), axl.Defector(),\n", 44 | " axl.TitForTat(), axl.Grudger(),\n", 45 | " axl.Random()]\n", 46 | "noise = 0.1\n", 47 | "tournament = axl.Tournament(strategies, noise=noise)\n", 48 | "results = tournament.play()\n", 49 | "plot = axl.Plot(results)\n", 50 | "plot.boxplot();" 51 | ] 52 | }, 53 | { 54 | "cell_type": "code", 55 | "execution_count": null, 56 | "metadata": { 57 | "collapsed": true 58 | }, 59 | "outputs": [], 60 | "source": [] 61 | } 62 | ], 63 | "metadata": { 64 | "kernelspec": { 65 | "display_name": "Python 3", 66 | "language": "python", 67 | "name": "python3" 68 | }, 69 | "language_info": { 70 | "codemirror_mode": { 71 | "name": "ipython", 72 | "version": 3 73 | }, 74 | "file_extension": ".py", 75 | "mimetype": "text/x-python", 76 | "name": "python", 77 | "nbconvert_exporter": "python", 78 | "pygments_lexer": "ipython3", 79 | "version": "3.5.0" 80 | } 81 | }, 82 | "nbformat": 4, 83 | "nbformat_minor": 0 84 | } 85 | -------------------------------------------------------------------------------- /basic-tournament.ipynb: -------------------------------------------------------------------------------- 1 | { 2 | "cells": [ 3 | { 4 | "cell_type": "markdown", 5 | "metadata": {}, 6 | "source": [ 7 | "This notebook shows how to build a basic tournament and view the results." 8 | ] 9 | }, 10 | { 11 | "cell_type": "code", 12 | "execution_count": 32, 13 | "metadata": { 14 | "collapsed": false 15 | }, 16 | "outputs": [], 17 | "source": [ 18 | "import axelrod as axl\n", 19 | "import random\n", 20 | "%matplotlib inline" 21 | ] 22 | }, 23 | { 24 | "cell_type": "code", 25 | "execution_count": 41, 26 | "metadata": { 27 | "collapsed": true 28 | }, 29 | "outputs": [], 30 | "source": [ 31 | "strategies = [s() for s in axl.basic_strategies]\n", 32 | "strategies.append(axl.Random())\n", 33 | "tournament = axl.Tournament(strategies)\n", 34 | "results = tournament.play()" 35 | ] 36 | }, 37 | { 38 | "cell_type": "code", 39 | "execution_count": 42, 40 | "metadata": { 41 | "collapsed": false 42 | }, 43 | "outputs": [ 44 | { 45 | "data": { 46 | "text/plain": [ 47 | "['Defector',\n", 48 | " 'Bully',\n", 49 | " 'Tit For Tat',\n", 50 | " 'Random: 0.5',\n", 51 | " 'Alternator',\n", 52 | " 'Suspicious Tit For Tat',\n", 53 | " 'Anti Tit For Tat',\n", 54 | " 'Win-Stay Lose-Shift',\n", 55 | " 'Cooperator']" 56 | ] 57 | }, 58 | "execution_count": 42, 59 | "metadata": {}, 60 | "output_type": "execute_result" 61 | } 62 | ], 63 | "source": [ 64 | "results.ranked_names" 65 | ] 66 | }, 67 | { 68 | "cell_type": "markdown", 69 | "metadata": {}, 70 | "source": [ 71 | "Visualising the results:" 72 | ] 73 | }, 74 | { 75 | "cell_type": "code", 76 | "execution_count": 44, 77 | "metadata": { 78 | "collapsed": false 79 | }, 80 | "outputs": [ 81 | { 82 | "data": { 83 | "image/png": "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\njzo2AAAAAElFTkSuQmCC\n", 84 | "text/plain": [ 85 | "" 86 | ] 87 | }, 88 | "metadata": {}, 89 | "output_type": "display_data" 90 | } 91 | ], 92 | "source": [ 93 | "plot = axl.Plot(results)\n", 94 | "plot.boxplot();" 95 | ] 96 | }, 97 | { 98 | "cell_type": "markdown", 99 | "metadata": {}, 100 | "source": [ 101 | "There are many more strategies as well as outputs that the library can create: [take a look at the documentation for further details](http://axelrod.readthedocs.org/en/latest/index.html)." 102 | ] 103 | } 104 | ], 105 | "metadata": { 106 | "kernelspec": { 107 | "display_name": "Python 3", 108 | "language": "python", 109 | "name": "python3" 110 | }, 111 | "language_info": { 112 | "codemirror_mode": { 113 | "name": "ipython", 114 | "version": 3 115 | }, 116 | "file_extension": ".py", 117 | "mimetype": "text/x-python", 118 | "name": "python", 119 | "nbconvert_exporter": "python", 120 | "pygments_lexer": "ipython3", 121 | "version": "3.5.1" 122 | } 123 | }, 124 | "nbformat": 4, 125 | "nbformat_minor": 0 126 | } 127 | -------------------------------------------------------------------------------- /Logo.ipynb: -------------------------------------------------------------------------------- 1 | { 2 | "cells": [ 3 | { 4 | "cell_type": "markdown", 5 | "metadata": {}, 6 | "source": [ 7 | "A notebook to create the logo of the Axelrod-Python library" 8 | ] 9 | }, 10 | { 11 | "cell_type": "code", 12 | "execution_count": 1, 13 | "metadata": { 14 | "collapsed": true 15 | }, 16 | "outputs": [], 17 | "source": [ 18 | "%matplotlib inline\n", 19 | "import axelrod as axl\n", 20 | "import matplotlib\n", 21 | "matplotlib.style.use('classic') # Use the classic style which is what the original logo was built with\n", 22 | "from PIL import Image" 23 | ] 24 | }, 25 | { 26 | "cell_type": "code", 27 | "execution_count": 2, 28 | "metadata": {}, 29 | "outputs": [ 30 | { 31 | "name": "stderr", 32 | "output_type": "stream", 33 | "text": [ 34 | "Playing matches: 100%|██████████| 15/15 [00:00<00:00, 72.42it/s]\n", 35 | "Analysing: 100%|██████████| 150/150 [00:00<00:00, 606.02it/s]\n", 36 | "Finishing: 100%|██████████| 23/23 [00:00<00:00, 2878.64it/s]\n" 37 | ] 38 | } 39 | ], 40 | "source": [ 41 | "players = [axl.Cooperator(), axl.TitForTat(), axl.Alternator(), axl.Defector(), axl.Random()]\n", 42 | "tournament = axl.Tournament(players)\n", 43 | "results = tournament.play()\n", 44 | "eco = axl.Ecosystem(results)\n", 45 | "eco.reproduce(35) # Evolve the population over 100 time steps" 46 | ] 47 | }, 48 | { 49 | "cell_type": "code", 50 | "execution_count": 3, 51 | "metadata": {}, 52 | "outputs": [ 53 | { 54 | "data": { 55 | "image/png": "iVBORw0KGgoAAAANSUhEUgAAApgAAAHTCAYAAACDRmj7AAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAAMTQAADE0B0s6tTgAAIABJREFUeJzs3Xd4lFX6xvHvmXR678aVRUURFmVlbT+wsojYVkBFRAV7\n27WAZcFeWKWqizQRRAEBpTcVERRQcFVAlC41dEIgbdp7fn8kxARpk0zyJjP3J9eYyTszz3lmcl1y\n5y3nmPnz51tERERERMLE43YDIiIiIhJZFDBFREREJKwUMEVEREQkrBQwRURERCSsFDBFREREJKwU\nMEVEREQkrBQwRURERCSsIiJgLl261O0Wyjx9hkWnz7Do9BkWnT7DotNnWDT6/IouEj7DiAiYy5Yt\nc7uFMk+fYdHpMyw6fYZFp8+w6PQZFo0+v6KLhM8wIgKmiIiIiJQesW43UFSO45CVlUV6ejrGGLfb\nKbP8fj8ZGRlut1Gm6TMsOn2GRafPsOj0GRaNPr+isdaSlZWF4zh4PGV3P6Ap62uR79mzh06dOrnd\nhoiIiEjYTJgwgZo1a7rdRqGV+T2YSUlJALzCKzSnucvdiIiIiBReJpl0olNevimrynzAPHxYPJFE\nylPe5W5EREREiq6sn/ZXdg/ui4iIiEippIApIiIiImGlgCkiIiIiYVXmz8EUESkN7BFfDk7e9sP3\nHZw/PO9kvo5W/1iP5R/nyPGPd/94tfM/52jjFWZb/trHe+7Rvh+rr+M952i/r5N9zvHun+zjJ3pO\ncb0mlNeFWvdkahX29aHULczri/p4cY7vx1+ksUsLBUyRCGWxBHK/ggTz7uf/2Y+/wGNBgji5X8F8\nX/m35X/syG0Wm/f9cMg5/Nr82w6/5vC2oAkWePbhn528/x4eJ/c5xiFonbz7jv19nPyvKThy7tjW\nydeJxcnr12JtwQDo5Pvvib6Km8H84X7+bUd/Rr775uiPgsl9qOAFBX+8wCB3zKM8N98DBWra3191\nxEtMgW9Hr3G01x1r2++vtebI95fbR24/R+/9WOMXfI7Ne6LFGHOU3/rvjx+tlj1yjONew/H7+znO\nwwVr53843zj2iOfn/F7yP370fo8oeNTxbV7B/I8fr94Rvxtj/7Dt98eO39IJez4Be9zXH7uvnLFP\nor/j/4KPzXHgt8K9tDRRwBQJsyBBso/xlUXWMbdnmSx8xpcX/AImgN/mj4X+3+/bw7EwSNAGCoTB\nw3HveKHHgweDwRy+Zzy5/yAZjDF59zl8v8DNk/P/TY/BGk/Od4/J+Z/1Ed+tAevxgDE4npz/oduY\n3DoeT87N5PvZGIiJ+ePjh+97YsAT9/u2mJh8j+V7ff5th28xMb/Xzv+cw/ePfOxY32NjC9Y71usL\n9H2Mx4/WK/w+Rj72GPdFJMJkZED79m53UWQKmCJHCBIkPd/XoXxfeT+bQxzwHCDNHuQQB0m36WTa\nTHz4CBLMq2UwxBBLjInB44nBeGIwMTEQG4sTF4MTH0sgIZZgYjwkJEBcXE64iI2F2MSc74e3xcUV\nvMXH59zy309I+P37kfcTE/Oe57j4+YqISORTwJSokEUW+4/4SiWVvWYfezx72Gv3kmYPkGkz8eIF\ncsJhHHHExMThic0JccHEOHzl4nEqlIOKFaFyPahyNlSrBtWr526rnHOrUgWbmEgACLj79kVEREqU\nAqaUaQ4Ou9nNNraxi13sZz/72Mduzx72spf9dj8H7UH8+DAY4k0CsXEJ2MQE/BWT8FetmBMMa/0V\natWCGjVyvtepg61SBV8ZXgdWRETELQqYUupZLAc4wDa2sTX3a5NnE5vtFnbbXTg4JMaUwyQlEayQ\nhLdyeaheDWqeBXXrQoMGkJyMrVsXb2xs7v5JERERKS4KmFJqZJLJttyvrWxls2czm9hEipOCFy8J\nJpHYpPJk16hIsEE9aHQlNGkCzZqRlZjodvsiIiKSSwFTXJFFFmtZy2pWs9KzklXOKg5wgDjiiE+o\nQKBqBbz1a8FpLeDs26F5c7xVq2rvo4iISBmggCnFLkiQzWzmV35llVnFClaSYrcTZ+LxVKlCdqNk\naHELXHQR/lNOiZApZkVERKKXAqaE3R728Au/8Cu/ssKzgvXOehwcEpIqk5VcG/uXi+Cyy/CdccYf\n5voTERGRsk8BU4rEYtnKVpawhB89P/Kr8yuHOERSbAV8daoROPtMuPgWuOACMuPj3W5XRERESoAC\npoQsSJBVrOIbvuErs4B9di8JlaqTdVZDaHkHXHopmdWqud2miIiIuEQBU05KFlksYxlfe75mkbOY\nAAGoVwd/6yugY0eyqlZ1u0UREREpJRQw5Zj2sIclLGGBZwE/OT8RH5OE9/RkbNt74eqrc5YdFBER\nETmCAqbksVg2sIHFLGa+5ys2O5tITKpCVvPGcMPrZLds6XaLIiIiUgYoYAqb2MR0M535dj4HOUhc\ntZpkX9gCbn6RrFNOcbs9ERERKWMUMKOUg8NSljLeM56Vzkpi6tTH3/YG+Mc/CFao4HZ7IiIiUoYp\nYEaZLLKYwxzGm485wAH8zZpgHx2Bc9ppbrcmIiIiEUIBM0rsYAefmk+Zbqdj4hPIbnsp3HcflCvn\ndmsiIiISYRQwI5jFspzlfOz5mKXOUuKq1cZ7+wNw7bVaQUdERESKjQJmBPLhYx7zGGfGsdPuJHjG\n6TgPv4W3SRO3WxMREZEooIAZQfaxjylMYTKTCcZCdusL4KFBoEnQRUREpAQpYEaA7WxnpGckXzlf\nEV+pOtk3d4ZbbtFhcBEREXGFAmYZlk02H/ER4xmPqVsf51FNhi4iIiLuU8AsgyyWRSxiAAPJSPAT\neLwHtGnjdlsiIiIigAJmmbOd7QzwDGCFswJ/m8ugRw+I1a9RRERESg8lkzIim2w+5EM+5mM45VQC\nr74P9eu73ZaIiIjIHyhglnIWy9d8zUAGkpkQ1OFwERERKfUUMEuxrWxlgBnAz3YV/raXwxNP6HC4\niIiIlHpKK6VQFlmMMWOYaCdiTj0V/2ujoG5dt9sSEREROSkKmKWIxbKQhQxkEFkJDoEnn4YrrnC7\nLREREZGQFCpgrl+/nkWLFpGYmEiTJk0455xzwtLMnDlzaNq0KfWj8OKVLWyhv+nPL/yK/+or4bHH\ndDhcREREyqRCJZivvvqKu+++G4DRo0ezevVqKlasSNWqVVm3bh3p6encc8899OjRg9atW1O9enX8\nfj87d+4kMzOTdu3aMXLkSNq3b8/evXvZsmULjRs3JiUlhdTUVM4//3wWLlxIdnY2d911F3369OHy\nyy+ndevWYX3zpUGQIB+aDxljx2D+dBqB10ZDnTputyUiIiJSaIUKmMaYvPsZGRnccccdDB48GGMM\n999/PxMnTmT//v0kJydz3XXXMWTIEDIyMmjSpAmHDh3C7/fTtGlTmjVrxrRp06hduzYrV67klFNO\noWnTpixcuJAbb7yRFStWsGHDBho0aFAgXC5dupRly5YB4Pf7i/gRuGc723nJvMTmmG0Ee/TU1eEi\nIiISEQoVMFu1asUHH3xAQkIC5cuXZ9KkSfz5z3+matWqjB07lvT0dKpVq8bmzZsZN24c55xzDsFg\nkJSUFGrXrk1cXBye3HWyt2zZwhlnnIHjONStW5fPP/+c5s2bM3ny5Lw9mN99912B8Vu2bEnL3CUR\nMzIymDp1ahE/hpJlscxhDgMZiD01Gf+gcVCpktttiYiIiISFmT9/vi2u4u+99x7du3cvrvJATsBs\n3749felLC1oU61jhkEYab5g3+J7/4buzM3Tt6nZLIiIiUlpkZED79syYMYPy5cu73U2hFetVJMUd\nLsuaZSzjFV7BWyUR34ChcOqpbrckIiIiEna6TLkEePEyxAxhhp1B4O9XQM+ekHuKgIiIiEikUcAs\nZutZz/PmefbFpxN4tQ+0KP2H8UVERESKQgGzmDg4fMzHvMdIbLNzcN54H+Lj3W5LREREpNgpYBaD\n3ezmJfMy680Ggo//C665xu2WREREREqMAmaYfcmXvMmbBOvVwf/Wh1CtmtstiYiIiJQoBcwwSSed\n/p7+fON8g//WDnDvvW63JCIiIuIKBcwwWMlKnud5Mit48PcbDI0aud2SiIiIiGs0V04RzWQmj/M4\nqZecg3fyBIVLERERiXrag1lIQYIMNoOZbqcTeOg+6NDB7ZZERERESgUFzEJIJ53nzHP8ErMG/3/6\nwHnnud2SiIiISKmhgBmibWyjh+lBasUA3hGjoGZNt1sSERERKVV0DmYI/sf/uId72HN6VbwTP1K4\nFBERETkK7cE8SZOZzH8ZTLBdG+jRw+12REREREotBcwTCBBgkGcQc+1nBP/5MFx/vdstiYiIiJRq\nCpjHkUYavUwv1sX8hr9fX2ja1O2WREREREo9Bcxj2MxmetCDtCoefCM+0JKPIiIiIidJF/kcxXd8\nx33cx75z6uGboPXERUREREKhPZj5WCwTzUSG2+EEbrwWHn3U7ZZEREREyhwFzFw+fPQ1ffmKBQSe\negLatnW7JREREZEySQETSCWVZ8wzbIpPwT/oLTjzTLdbEhERESmzoj5g7mc/D5gHOVAjBt+ID6FS\nJbdbEhERESnTojpgHuQg/zT/IrV2HP4x70NsVH8cIiIiImERtYkqk0yeME+wu4oX/+gxCpciIiIi\nYRKVqcqHj6fMU2wtvx/fB6MhPt7tlkREREQiRtQFzAABent6sy5+C94PRkGFCm63JCIiIhJRoipg\nBgnyqudVlsf8gvf94VC1qtstiYiIiEScqAmYFkt/T3+WmKV4h74Ddeq43ZKIiIhIRIqKgGmxvGve\n5Qvm4XurP5x2mtstiYiIiESsqAiYY8wYpjAV/39ehbPPdrsdERERkYgW8QHzEz5hjP2QwIu94K9/\ndbsdERERkYjncbuB4jSHOQxhCIEn/wmtWrndjoiIiEhUiNiAuYAF9KMfgQfvhWuucbsdERERkagR\nkQFzKUt5hVcIdO0MHTu63Y6IiIhIVIm4gLmCFfSiF4Ebr4W77nK7HREREZGoE1EBcy1r6UlP/Fe0\nhkcfdbsdERERkagUMVeRb2UrwxmO74LzoNe/3W5HREREJGpFzB7Mt3mb7HMaYV9/ze1WRERERKJa\nxARMc+qfcAYNcLsNERERkagXMQEz+PAD4ImYtyMiIiJSZkVOIjPG7Q5EREREhEgKmCIiIiJSKihg\nioiIiEhYKWCKiIiISFgpYIqIiIhIWClgioiIiEhYKWCKiIiISFgpYIqIiIhIWClgioiIiEhYKWCK\niIiISFgpYIqIiIhIWClgioiIiEhYKWCKiIiISFgpYIqIiIhIWClgioiIiEhYKWCKiIiISFgpYIqI\niIhIWClgioiIiEhYKWCKiIiISFgpYIqIiIhIWClgioiIiEhYKWCKiIiISFgpYIqIiIhIWClgioiI\niEhYKWCKiIiISFgpYIqIiIhIWClgioiIiEhYKWCKiIiISFgpYIqIiIhIWClgioiIiEhYKWCKiIiI\nSFgpYIqIiIhIWClgioiIiEhYKWCKiIiISFgpYIqIiIhIWClgioiIiEhYKWCKiIiISFgVKWAGAgEm\nTZpEjx49GDduHL/99hvvvfdegec8//zzTJo0iY0bNx631rRp0+jZsycTJkxg3bp1BR47sqaIiIiI\nlF6xRXpxbCwdOnQgLS2Ns846i5SUFDZu3MiSJUu48MILCzy3UqVKjB49mvLly1OxYkWstaSmpnLx\nxReTnJzMddddx/79+7npppsAmDRpElu3bqVLly5s3LiRL7/8kssvv7wo7YqIiIhICShSwDxSYmIi\nDRs2LBAuk5OT6dChAwAZGRnccccdDB48mIYNG3LJJZdwyimn/KGO1+vFcRwqV67M2rVradiwYYFw\nuXTpUpYtWwaA3+8P51sQERERkSIKa8AEiIuLY8GCBbRu3foPj5UvX55Jkybx5z//GWstHs/Rj9Cn\npqaSnp6OMQZrLZUrV2bWrFm0a9cOgJYtW9KyZUsgJ7ROnTo13G9DRERERArJzJ8/37rdRFFkZGTQ\nvn176NsXWrRwux0RERGRwsvIgPbtmTFjBuXLl3e7m0LTVeQiIiIiguM4fPTRR3Tp0iVn5x05pyXO\n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\n", 56 | "text/plain": [ 57 | "" 58 | ] 59 | }, 60 | "metadata": {}, 61 | "output_type": "display_data" 62 | } 63 | ], 64 | "source": [ 65 | "plot = axl.Plot(results)\n", 66 | "stackplot = plot.stackplot(eco, logscale=False);\n", 67 | "stackplot.savefig(\"logo-raw.png\", dpi=400)" 68 | ] 69 | }, 70 | { 71 | "cell_type": "code", 72 | "execution_count": 24, 73 | "metadata": { 74 | "collapsed": true 75 | }, 76 | "outputs": [], 77 | "source": [ 78 | "img = Image.open(\"logo-raw.png\")\n", 79 | "#left = 302\n", 80 | "#top = 164\n", 81 | "#width = 1236\n", 82 | "#height = width\n", 83 | "left = 302\n", 84 | "top = 95\n", 85 | "width = 2020\n", 86 | "height = width\n", 87 | "box = (left, top, left+width, top+height)\n", 88 | "logo = img.crop(box)\n", 89 | "logo.save(\"logo.png\")" 90 | ] 91 | }, 92 | { 93 | "cell_type": "markdown", 94 | "metadata": {}, 95 | "source": [ 96 | "![](./logo.png)" 97 | ] 98 | }, 99 | { 100 | "cell_type": "code", 101 | "execution_count": null, 102 | "metadata": { 103 | "collapsed": true 104 | }, 105 | "outputs": [], 106 | "source": [] 107 | } 108 | ], 109 | "metadata": { 110 | "anaconda-cloud": {}, 111 | "kernelspec": { 112 | "display_name": "Python [default]", 113 | "language": "python", 114 | "name": "python3" 115 | }, 116 | "language_info": { 117 | "codemirror_mode": { 118 | "name": "ipython", 119 | "version": 3 120 | }, 121 | "file_extension": ".py", 122 | "mimetype": "text/x-python", 123 | "name": "python", 124 | "nbconvert_exporter": "python", 125 | "pygments_lexer": "ipython3", 126 | "version": "3.5.2" 127 | } 128 | }, 129 | "nbformat": 4, 130 | "nbformat_minor": 1 131 | } 132 | -------------------------------------------------------------------------------- /Spatia-Circle-Structured-Example.ipynb: -------------------------------------------------------------------------------- 1 | { 2 | "cells": [ 3 | { 4 | "cell_type": "markdown", 5 | "metadata": {}, 6 | "source": [ 7 | "# Spatial Tournament Examples : Circle Topology\n", 8 | "\n", 9 | "In this notebook we will be performing a circle tournament. Ten random players\n", 10 | "are selected by the list of strategies in Axelrod. Afterwards these players are allocated\n", 11 | "into a circle network where each player competes with their two neughboors. Then we plot the results.\n" 12 | ] 13 | }, 14 | { 15 | "cell_type": "code", 16 | "execution_count": 20, 17 | "metadata": { 18 | "collapsed": true 19 | }, 20 | "outputs": [], 21 | "source": [ 22 | "# Python 3 \n", 23 | "%matplotlib inline\n", 24 | "\n", 25 | "import matplotlib.pyplot as plt\n", 26 | "import random\n", 27 | "\n", 28 | "# package for creation and visuliazation of networks\n", 29 | "import networkx as nx \n", 30 | "\n", 31 | "import axelrod as axl" 32 | ] 33 | }, 34 | { 35 | "cell_type": "code", 36 | "execution_count": 13, 37 | "metadata": { 38 | "collapsed": true 39 | }, 40 | "outputs": [], 41 | "source": [ 42 | "strategies = [s() for s in axl.ordinary_strategies]" 43 | ] 44 | }, 45 | { 46 | "cell_type": "code", 47 | "execution_count": 14, 48 | "metadata": { 49 | "collapsed": true 50 | }, 51 | "outputs": [], 52 | "source": [ 53 | "players = random.sample(strategies, 10)" 54 | ] 55 | }, 56 | { 57 | "cell_type": "code", 58 | "execution_count": 15, 59 | "metadata": { 60 | "collapsed": true 61 | }, 62 | "outputs": [], 63 | "source": [ 64 | "G = nx.cycle_graph(len(players))" 65 | ] 66 | }, 67 | { 68 | "cell_type": "code", 69 | "execution_count": 16, 70 | "metadata": { 71 | "scrolled": true 72 | }, 73 | "outputs": [ 74 | { 75 | "data": { 76 | "image/png": "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\n", 77 | "text/plain": [ 78 | "" 79 | ] 80 | }, 81 | "metadata": {}, 82 | "output_type": "display_data" 83 | } 84 | ], 85 | "source": [ 86 | "pos = nx.circular_layout(G)\n", 87 | "# for the nodes \n", 88 | "nx.draw_networkx_nodes(G,pos,\n", 89 | " node_color='r',\n", 90 | " node_size=100\n", 91 | " )\n", 92 | "# for the edges\n", 93 | "nx.draw_networkx_edges(G,pos,\n", 94 | " width=5, alpha = 0.5)\n", 95 | "# using labels\n", 96 | "labels={}\n", 97 | "for i in range(len(players)):\n", 98 | " labels[i]= '%s' % (players[i])\n", 99 | "\n", 100 | "nx.draw_networkx_labels(G,pos,labels,font_size=10)\n", 101 | "plt.show()" 102 | ] 103 | }, 104 | { 105 | "cell_type": "code", 106 | "execution_count": 17, 107 | "metadata": {}, 108 | "outputs": [ 109 | { 110 | "name": "stderr", 111 | "output_type": "stream", 112 | "text": [] 113 | } 114 | ], 115 | "source": [ 116 | "edges = G.edges()\n", 117 | "tournament = axl.Tournament(players, edges=G.edges(), repetitions=1)\n", 118 | "results = tournament.play(processes=1)" 119 | ] 120 | }, 121 | { 122 | "cell_type": "code", 123 | "execution_count": 18, 124 | "metadata": {}, 125 | "outputs": [ 126 | { 127 | "data": { 128 | "text/plain": [ 129 | "['Inverse Punisher',\n", 130 | " 'Hard Go By Majority: 20',\n", 131 | " 'Once Bitten',\n", 132 | " 'Meta Minority',\n", 133 | " 'Calculator',\n", 134 | " 'ZD-Extort-4',\n", 135 | " 'Math Constant Hunter',\n", 136 | " 'Cycler CCD',\n", 137 | " 'Firm But Fair',\n", 138 | " 'Fortress3']" 139 | ] 140 | }, 141 | "execution_count": 18, 142 | "metadata": {}, 143 | "output_type": "execute_result" 144 | } 145 | ], 146 | "source": [ 147 | "results.ranked_names" 148 | ] 149 | }, 150 | { 151 | "cell_type": "code", 152 | "execution_count": 19, 153 | "metadata": {}, 154 | "outputs": [ 155 | { 156 | "data": { 157 | "image/png": "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\nRU5ErkJggg==\n", 158 | "text/plain": [ 159 | "" 160 | ] 161 | }, 162 | "metadata": {}, 163 | "output_type": "display_data" 164 | } 165 | ], 166 | "source": [ 167 | "plot = axl.Plot(results)\n", 168 | "plot.boxplot();" 169 | ] 170 | } 171 | ], 172 | "metadata": { 173 | "anaconda-cloud": {}, 174 | "kernelspec": { 175 | "display_name": "Python [default]", 176 | "language": "python", 177 | "name": "python3" 178 | }, 179 | "language_info": { 180 | "codemirror_mode": { 181 | "name": "ipython", 182 | "version": 3 183 | }, 184 | "file_extension": ".py", 185 | "mimetype": "text/x-python", 186 | "name": "python", 187 | "nbconvert_exporter": "python", 188 | "pygments_lexer": "ipython3", 189 | "version": "3.5.2" 190 | } 191 | }, 192 | "nbformat": 4, 193 | "nbformat_minor": 1 194 | } 195 | -------------------------------------------------------------------------------- /Spatia-Lattice-Structured-Example.ipynb: -------------------------------------------------------------------------------- 1 | { 2 | "cells": [ 3 | { 4 | "cell_type": "markdown", 5 | "metadata": {}, 6 | "source": [ 7 | "# Spatial Tournament Examples : Lattice Topology\n", 8 | "\n", 9 | "In this notebook we will be performing a lattice structured tournament. Ten random players are selected by the list of strategies in Axelrod. Afterwards these players are allocated into a square lattice network where each player competes with four neughboors. Then we plot the results.\n" 10 | ] 11 | }, 12 | { 13 | "cell_type": "code", 14 | "execution_count": 1, 15 | "metadata": { 16 | "collapsed": true 17 | }, 18 | "outputs": [], 19 | "source": [ 20 | "# Python 3 \n", 21 | "%matplotlib inline\n", 22 | "\n", 23 | "import matplotlib.pyplot as plt\n", 24 | "import random\n", 25 | "\n", 26 | "# package for creation and visuliazation of networks\n", 27 | "import networkx as nx \n", 28 | "from networkx.drawing.nx_agraph import graphviz_layout\n", 29 | "\n", 30 | "import axelrod as axl" 31 | ] 32 | }, 33 | { 34 | "cell_type": "code", 35 | "execution_count": 2, 36 | "metadata": { 37 | "collapsed": true 38 | }, 39 | "outputs": [], 40 | "source": [ 41 | "strategies = [s() for s in axl.strategies]" 42 | ] 43 | }, 44 | { 45 | "cell_type": "code", 46 | "execution_count": 3, 47 | "metadata": { 48 | "collapsed": true 49 | }, 50 | "outputs": [], 51 | "source": [ 52 | "players = random.sample([s() for s in axl.strategies], 10)" 53 | ] 54 | }, 55 | { 56 | "cell_type": "code", 57 | "execution_count": 6, 58 | "metadata": { 59 | "collapsed": true 60 | }, 61 | "outputs": [], 62 | "source": [ 63 | "G = nx.newman_watts_strogatz_graph(len(players), 4, 0)" 64 | ] 65 | }, 66 | { 67 | "cell_type": "code", 68 | "execution_count": 8, 69 | "metadata": {}, 70 | "outputs": [ 71 | { 72 | "data": { 73 | "image/png": "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\n64nQ5QAAAABJRU5ErkJggg==\n", 74 | "text/plain": [ 75 | "" 76 | ] 77 | }, 78 | "metadata": {}, 79 | "output_type": "display_data" 80 | } 81 | ], 82 | "source": [ 83 | "pos = nx.circular_layout(G)\n", 84 | "# for the nodes \n", 85 | "nx.draw_networkx_nodes(G,pos,\n", 86 | " node_color='r',\n", 87 | " node_size=100\n", 88 | " )\n", 89 | "# for the edges\n", 90 | "nx.draw_networkx_edges(G,pos,\n", 91 | " width=5, alpha = 0.5)\n", 92 | "# using labels\n", 93 | "labels={}\n", 94 | "for i in range(len(players)):\n", 95 | " labels[i]= '%s' % (players[i])\n", 96 | "\n", 97 | "nx.draw_networkx_labels(G,pos,labels,font_size=10)\n", 98 | "plt.show()" 99 | ] 100 | }, 101 | { 102 | "cell_type": "code", 103 | "execution_count": 9, 104 | "metadata": {}, 105 | "outputs": [ 106 | { 107 | "name": "stderr", 108 | "output_type": "stream", 109 | "text": [ 110 | "Playing matches: 100%|██████████| 20/20 [00:00<00:00, 118.03it/s]\n", 111 | "Analysing: 100%|██████████| 20/20 [00:00<00:00, 872.01it/s]\n", 112 | "Finishing: 100%|██████████| 33/33 [00:00<00:00, 574.10it/s]\n" 113 | ] 114 | } 115 | ], 116 | "source": [ 117 | "edges = G.edges()\n", 118 | "tournament = axl.Tournament(players, edges=G.edges(), repetitions=1)\n", 119 | "results = tournament.play(processes=1)" 120 | ] 121 | }, 122 | { 123 | "cell_type": "code", 124 | "execution_count": 10, 125 | "metadata": {}, 126 | "outputs": [ 127 | { 128 | "data": { 129 | "text/plain": [ 130 | "['Cycler DC',\n", 131 | " 'DoubleResurrection',\n", 132 | " 'TF1',\n", 133 | " 'Doubler',\n", 134 | " 'Soft Joss: 0.9',\n", 135 | " 'Stalker: D',\n", 136 | " 'NMWE Memory One: 30 players',\n", 137 | " '$e$',\n", 138 | " 'Aggravater',\n", 139 | " 'ThueMorseInverse']" 140 | ] 141 | }, 142 | "execution_count": 10, 143 | "metadata": {}, 144 | "output_type": "execute_result" 145 | } 146 | ], 147 | "source": [ 148 | "results.ranked_names" 149 | ] 150 | }, 151 | { 152 | "cell_type": "code", 153 | "execution_count": 11, 154 | "metadata": {}, 155 | "outputs": [ 156 | { 157 | "data": { 158 | "image/png": "iVBORw0KGgoAAAANSUhEUgAAA1gAAAGoCAYAAABbkkSYAAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAIABJREFUeJzt3Xm0ZGV97vHvA+2AAyjQatCLU0xiriDqIdoqKDihQQ0a\nxSFBcQCHmIh6A2rixDUqzsYYQcWoSESNqBiVKyCTotIgojHikEiMgrQD4tQM3b/7x96dLg7dnNOn\nd/PuKr6ftXqdql11aj3Uaqrr2e+wU1VIkiRJkjbfVq0DSJIkSdKssGBJkiRJ0kAsWJIkSZI0EAuW\nJEmSJA3EgiVJkiRJA7FgSZIkSdJALFiSJEmSNBALliRJkiQNxIIlSZIkSQNZ1jrAjjvuWHe4wx1a\nx5AkSZKkjTrnnHN+UlXLF3pe84J1hzvcgZUrV7aOIUmSJEkbleTCxTzPKYKSJEmSNBALliRJkiQN\nxIIlSZIkSQOxYEmSJEnSQCxYkiRJkjQQC5YkSZIkDcSCJUmSJEkDsWBJkiRJ0kAsWJIkSZI0kGWt\nAwj2P/KsQV7nuINXDPI6kiRJkpbGESxJkiRJGogjWCPgyJMkSZI0GxzBkiRJkqSBWLAkSZIkaSAW\nLEmSJEkaiAVLkiRJkgZiwZIkSZKkgSxYsJLcLckXk5yR5L1JMu+xM5N8IcmuGzsmSZIkSdcHixnB\nuqCq7ltVe/T35yYeOxx4IvD4/vbGjkmSJEnSzFvwOlhVdeXE3cuBH0zcv2VV/QAgyS2u5ZgkSZIk\nzbxFrcFK8qgk3wBuDfx0I7+fazk2//UOSrIyycpVq1ZtSl5JkiRJGq1FFayq+mRV3Q34b2DfyYcm\nbq+9lmPzX++oqpqrqrnly5dvSl5JkiRJGq0FpwgmuVFVXd7fvQz47cTDP0tyO7oiddm1HJMkSZKk\nmbdgwQL2SfKC/vZ3gPOTvLSqXg28HDiuf+y5/c8NHZMkSZKkmZeqWvhZW9Dc3FytXLmyaQZJkiRJ\nujZJzqmquYWe54WGJUmSJGkgFixJkiRJGogFS5IkSZIGYsGSJEmSpIFYsCRJkiRpIBYsSZIkSRqI\nBUuSJEmSBmLBkiRJkqSBWLAkSZIkaSAWLEmSJEkaiAVLkiRJkgZiwZIkSZKkgViwJEmSJGkgFixJ\nkiRJGogFS5IkSZIGYsGSJEmSpIFYsCRJkiRpIBYsSZIkSRqIBUuSJEmSBrKsdQBpsfY/8qxBXue4\ng1cM8jqSJEnSfI5gSZIkSdJAHMHS1HDkSZIkSWPnCJYkSZIkDcSCJUmSJEkDsWBJkiRJ0kAsWJIk\nSZI0EAuWJEmSJA3EgiVJkiRJA7FgSZIkSdJAFixYSe6d5ItJzkzy5nmPvSXJqf2fn/fHnprkgv7Y\nEVsquCRJkiSNzWIuNHwhsHdVrU7ywSS7VNXXAarq+QBJ7gG8cOJ3Xl9V7x4+riRJkiSN14IjWFV1\ncVWt7u9eCazZwNP2Az42cf/5SU5P8qABMkqSJEnSVFj0GqwkuwLLq+qbG3h4H+Cz/e2PA7sCjwXe\nkGTrDbzWQUlWJlm5atWqJcSWJEmSpPFZVMFKsj3wduDpG3jsLsAPq+o3AFV1aVWtrapVwLeBW8//\nnao6qqrmqmpu+fLlm/UfIEmSJEljsZhNLpYBxwAvqqqLN/CU/YDjJ56/bf9zG+AugENUkiRJkq4X\nFjOC9Thgd+CIfmfAFUn+fuLxfYETJu4fkuQs4FTgtVV15WBpJUmSJGnEUlVNA8zNzdXKlSubZpAk\nSZKka5PknKqaW+h5XmhYkiRJkgZiwZIkSZKkgViwJEmSJGkgFixJkiRJGogFS5IkSZIGYsGSJEmS\npIFYsCRJkiRpIBYsSZIkSRqIBUuSJEmSBmLBkiRJkqSBWLAkSZIkaSAWLEmSJEkaiAVLkiRJkgZi\nwZIkSZKkgViwJEmSJGkgFixJkiRJGogFS5IkSZIGYsGSJEmSpIFYsCRJkiRpIBYsSZIkSRqIBUuS\nJEmSBmLBkiRJkqSBWLAkSZIkaSAWLEmSJEkaiAVLkiRJkgZiwZIkSZKkgViwJEmSJGkgFixJkiRJ\nGsiCBSvJvZN8McmZSd4877FXJPlaklOTvKA/dvMkJyT5QpIDtlRwSZIkSRqbxYxgXQjsXVX3B26V\nZJd5j7+wqh5YVW/q7z8T+BCwJ/CMJDccLq4kSZIkjdeCBauqLq6q1f3dK4E1857yuiQnJdmtv38f\n4HNVtQb4GvAHg6WVJEmSpBFb9BqsJLsCy6vqmxOH31ZV9wKeDfx9f+wWwGX97V/09+e/1kFJViZZ\nuWrVqqUllyRJkqSRWVTBSrI98Hbg6ZPHq+pn/c/vTBz+BbBtf3tb4NL5r1dVR1XVXFXNLV++fCm5\nJUmSJGl0FrPJxTLgGOBFVXXxvMe27X/uCCzrD58FPCjJ1sBuwLcGTSxJkiRJI7WYEazHAbsDR/S7\nBa5Ism464OuTfAE4ATisP/Zu4MnAGcDRVXXF0KElSZIkaYxSVU0DzM3N1cqVK5tmkCRJkqRrk+Sc\nqppb6HleaFiSJEmSBrJs4adImib7H3nWIK9z3MErBnkdSZKk6xNHsCRJkiRpII5gSTPGkSdJkqR2\nHMGSJEmSpIFYsCRJkiRpIBYsSZIkSRqIBUuSJEmSBmLBkiRJkqSBWLAkSZIkaSAWLEmSJEkaiAVL\nkiRJkgZiwZIkSZKkgViwJEmSJGkgFixJkiRJGogFS5IkSZIGYsGSJEmSpIFYsCRJkiRpIBYsSZIk\nSRqIBUuSJEmSBmLBkiRJkqSBWLAkSZIkaSAWLEmSJEkaiAVLkiRJkgZiwZIkSZKkgViwJEmSJGkg\nFixJkiRJGogFS5IkSZIGYsGSJEmSpIEsWLCS3DvJF5OcmeTN8x57eZKz+j8P6o89NckFSU5NcsSW\nCi5JkiRJY7OYEawLgb2r6v7ArZLsMvHY+6tqBfBw4OUTx19fVQ+sqr8eMKskSZIkjdqCBauqLq6q\n1f3dK4E1E4/9Z3/zcqAmfu35SU5fN6o1X5KDkqxMsnLVqlVLjC5JkiRJ47LoNVhJdgWWV9U3N/Dw\nK4Aj+9sfB3YFHgu8IcnW859cVUdV1VxVzS1fvnzTU0uSJEnSCC1bzJOSbA+8HXj8Bh7bD9ihqo4F\nqKpL+4dWJfk2cGvgR8PElaRh7H/kWYO8znEHrxjkdSRJ0mxYsGAlWQYcA7yoqi6e99iuwHOBP544\ntm1VXZZkG+AugHMAJUmSJF0vLGYE63HA7sARSQBeDDypqp4HvJ5uhOrEJL+oqkcDhyTZh2764Wur\n6sotE12Sls6RJ0mStCWkqhZ+1hY0NzdXK1eubJpBkiRJkq5NknOqam6h53mhYUmSJEkaiAVLkiRJ\nkgZiwZIkSZKkgSxqm3ZJ0vWT29lLkrRpHMGSJEmSpIE4giVJ2ihHniRJ2jSOYEmSJEnSQCxYkiRJ\nkjQQC5YkSZIkDcSCJUmSJEkDsWBJkiRJ0kAsWJIkSZI0EAuWJEmSJA3EgiVJkiRJA7FgSZIkSdJA\nLFiSJEmSNBALliRJkiQNxIIlSZIkSQOxYEmSJEnSQCxYkiRJkjQQC5YkSZIkDcSCJUmSJEkDsWBJ\nkiRJ0kAsWJIkSZI0EAuWJEmSJA3EgiVJkiRJA7FgSZIkSdJALFiSJEmSNJBlCz0hyb2BNwNrgbOr\n6pCJx3YCjgFuDLysqk7a0LEtklySpJHY/8izBnmd4w5eMcjrSJLaWcwI1oXA3lV1f+BWSXaZeOww\n4G+BhwJ/cy3HJEmSJGnmLTiCVVUXT9y9ElgzcX8X4K+qqpL8Msm2GzpWVZcNG1uSpPFw5EmStM6C\nBWudJLsCy6vqmxOHt66q6m//ArjFRo5drWAlOQg4CGDnnXdeYnRJkjRNnEop6fpgUZtcJNkeeDvw\n9HkPrZ24vS1w6UaOXU1VHVVVc1U1t3z58k1LLEmSJEkjtZhNLpbRbVrxonnTBQHOT7ICOB/Ytqou\nS3KNY4OnliRJU8eRJ0nXB4uZIvg4YHfgiCQALwaeVFXPA44A3g9sA7y8f/6GjkmSJEnSzMv65VJt\nzM3N1cqVK5tmkCRJkqRrk+Scqppb6HleaFiSJEmSBmLBkiRJkqSBWLAkSZIkaSAWLEmSJEkaiAVL\nkiRJkgZiwZIkSZKkgViwJEmSJGkgFixJkiRJGogFS5IkSZIGYsGSJEmSpIFYsCRJkiRpIBYsSZIk\nSRqIBUuSJEmSBmLBkiRJkqSBWLAkSZIkaSAWLEmSJEkaiAVLkiRJkgZiwZIkSZKkgViwJEmSJGkg\ny1oHkCRJ0nr7H3nWIK9z3MErBnkdSZvGESxJkiRJGogjWJIkSSPiyJM03RzBkiRJkqSBWLAkSZIk\naSAWLEmSJEkaiAVLkiRJkgZiwZIkSZKkgViwJEmSJGkgFixJkiRJGsiCBSvJTknOTbI6ybJ5j30o\nyalJzkpyXn/sFUm+1h9/wZYKLkmSJEljs5gLDf8MeBBw/PwHquoJAEn2A+418dALq+qkQRJKkiRJ\n0pRYcASrqlZX1c8XeNp+wMcm7r8uyUlJdtvQk5MclGRlkpWrVq3ahLiSJEmSNF6bvQYryQ2AXarq\n3P7Q26rqXsCzgb/f0O9U1VFVNVdVc8uXL9/cCJIkSZI0CkNscvFA4NR1d6rqZ/3P7wzw2pIkSZI0\nNYYoWPsxsT4rybb9zx1Z3BovSZIkSZoJi9lF8AZJTgLuDpyY5AFJXto/FmAFcObEr7w+yReAE4DD\ntkBmSZIkSRqlBUeYqupK4MHzDp/WP1bAPeY9/+DB0kmSJEnSFPFCw5IkSZI0EAuWJEmSJA3EgiVJ\nkiRJA7FgSZIkSdJALFiSJEmSNBALliRJkiQNxIIlSZIkSQOxYEmSJEnSQCxYkiRJkjQQC5YkSZIk\nDcSCJUmSJEkDsWBJkiRJ0kCWtQ4gSZIkbar9jzxrkNc57uAVg7yOtI4jWJIkSZI0EEewJEmSNHUc\nedJYOYIlSZIkSQOxYEmSJEnSQCxYkiRJkjQQC5YkSZIkDcSCJUmSJEkDsWBJkiRJ0kAsWJIkSZI0\nEAuWJEmSJA3EgiVJkiRJA7FgSZIkSdJALFiSJEmSNBALliRJkiQNxIIlSZIkSQNZsGAl2SnJuUlW\nJ1k277F/SvLlJKcmedLE809J8sUkD95SwSVJkiRpbJYt/BR+BjwIOH4jjz+5qr47cf8w4G+BrwGf\nAk7arISSJEmSNCUWHMGqqtVV9fONPQy8P8kJSW7fH9sF+GJV/Qr4ZZJtB8oqSZIkSaO2uWuwXlhV\n9wVeB7yxP7Z1VVV/+xfALeb/UpKDkqxMsnLVqlWbGUGSJEmSxmGzClZV/az/eSZwm/7w2omnbAtc\nuoHfO6qq5qpqbvny5ZsTQZIkSZJGY7MK1rrpf0l+n/VF6vwkK5LcFNi2qi7bzIySJEmSNBUW3OQi\nyQ2AzwB3B05M8irg/lX1auCDSW5Jtxbr2f2vHAG8H9gGePkWSS1JkiRJI7RgwaqqK4H5262f1j/2\nyA08/7+BvQdJJ0mSJElTxAsNS5IkSdJALFiSJEmSNBALliRJkiQNxIIlSZIkSQOxYEmSJEnSQCxY\nkiRJkjQQC5YkSZIkDcSCJUmSJEkDsWBJkiRJ0kAsWJIkSZI0EAuWJEmSJA3EgiVJkiRJA7FgSZIk\nSdJAlrUOIEmSJGnL2P/IswZ5neMOXjHI61wfOIIlSZIkSQNxBEuSJEmaUY48XfccwZIkSZKkgViw\nJEmSJGkgFixJkiRJGogFS5IkSZIGYsGSJEmSpIFYsCRJkiRpIBYsSZIkSRqIBUuSJEmSBmLBkiRJ\nkqSBWLAkSZIkaSAWLEmSJEkaSKqqbYBkFXBh0xDTYUfgJ61DTAHfp8XxfVoc36fF8X1aHN+nxfF9\nWhzfp8XxfVoc36fFuX1VLV/oSc0LlhYnycqqmmudY+x8nxbH92lxfJ8Wx/dpcXyfFsf3aXF8nxbH\n92lxfJ+G5RRBSZIkSRqIBUuSJEmSBmLBmh5HtQ4wJXyfFsf3aXF8nxbH92lxfJ8Wx/dpcXyfFsf3\naXF8nwbkGixJkiRJGogjWJIkSZI0EAuWJEmSJA1kWesAuqYkdwSWVdV3Jo79HnBFVX2/WTBJApJs\nBdwFuAXwYz+XNizJjYHdgdsAFwFnV9XlbVNJ0npJdgJuW1VnJ7lJVf2mdaZZ4AjWOP0D8It5xy4F\n/rFBlqmQZNsk/yvJzkl2bp1nGiR5RusMY5PO+1vnGLMkjwM+A7wU+ADw1iQfTnKPtsnGJck9gc8D\newO3BB4CnOL7tGFJDut/7pPkK0n+snWmMer/nXt5kkNaZxmr/nP8Ya1zTIMkLwHeABzZnzj7l8aR\nZoYjWOO0TVVdMnmgqi7pz4ZqniRHAbcHftQfKuBp7RKNS5K9N3QYeBbw7us4zqhVVSW5KMm9gXOA\ntf3xtW2Tjcpzgb369+omwHHAAcAngYc2TTYuhwN/WlU/XHeg/6w6CvjjZqnG6yHAa4EnA/cDvgi8\nrWmicToWeCHwhiRvAz5UVY9rnGlU+s+mZwMnts4yBR5SVXsl+XxVrU1yw9aBZoUFa5yuSrK8qlat\nO5Dk1sBVDTON2R2r6iGtQ4zYR4G30JWqSbdokGUa/FH/p+jes6IbhVBnDbB7kq8DDwCurKrVSfz3\n5OpuOFmuAKrqh36B2ahtkhwAXFJVVyb5betAI3VlVX0lyVVVtSbJDq0DjVSSfBo4l/Unyl7WNtIo\nXZHktkD13zOdwjwQ/0Ecp/8DHJ/kFLp5+7el+yLzF01TjdePkvwV8A26L8NU1SltI43K6cCRVfXj\nyYNJtm+UZ9T6s3k3AJZX1Y8W/IXrn6cChwJ3Ar5FNxIK3TQTrbd8A6PHAXZsEWYK/CWwK/CKfrbG\n2xvnGauPJnkncPMkuwDObNmwN7UOMCWeA7yRbhrzW4DntY0zO7wO1kj1X/BWsH5x9Jeq6sq2qcYp\nycvnHaqqelWTMJp6SZ4C/BlwK+CeOAVHS7CBz6X/UVWvvC6zTIMkn62qfVrnmAZJ7gU8CtgWeFdV\nfbNxpNFJsh3wbLri8FJgn6r6VNtU45UkdBvynF9Vq1vnmQUWrJFKshvdB+ht6NYWfbKqzm+baryS\n3Aa4I/D9qrqodZ4xSfKeqnp6f/t5VfX3rTONWZIzqmqPfk76XklOqSqnCC4gyVur6q9a59B0SnI0\ncAFXX/voTAQtSZIT6DYMe0lV7ZnkpKp6cOtcY5Pk5Kp6UJLD6U4q3q6qXCM6AHcRHKEkT6BbIH0a\n3ZDtF4DD++OaJ8n/AY6mK6TvTfLXjSONzR0nbu/XLMX0uCrJzejmpG9DP+1U185ypc10Id10t/sB\newD3bxtHU26bqvos69euz1+DrM7W/c87VNXBwHYtw8wS12CN00HAIyaGab+d5Czg08CH2sUarUdV\n1R7r7iQ5EziiYZ6x2b5fC5KJ24BniDfiULqNQe7a/zysbZxx6cvns+imMG9HdwmJL9Gt8/tly2ya\nXlX1yiT3AX6HbkfK2zaOpOn27SSH0v2bdwjwb60DjdT3k3wOeF+/UdGa1oFmhQVrnNbMnwPb79Ll\nX/wNuyLJfYGvAnOAa9Wu7ly6M8IAx0/cLsCCNU9VfQVwLcjGHUt3/auj6a7Xty3w4P74IxvmGqUk\n96iqr27svjpJ3g78Cti7qo5P8m7c9l9LVFXPSbIv8EHge1X15taZxqZfd3UqcExVXdVfB+tRbVPN\nDgvWON0lyfxNGgL8boswU+CpdKMOfwt8F3hK0zTjc4eq8rpgC0hyBtecDhi6TVP2bBBprHYA/mXi\n2mA/T/IvwPMbZhqzXehO/qyz67z76ty1Xwvy+f7+1tf6bOlaJPlAVf058Kn+vmtE5+mvF/aIqvqn\n/v5aupNmGoAFa5w2VhBOuk5TjFySVLdLyw/ptvhdd80iXd09k5w+75jFYZ7Jaaa6Vv8AnJrkfOAy\nummC/xt4R9NUI9SfIb7N5LGqel+jOGP3q/4C3yS5B37R0xL0f3fuCcwlWXdicRlwj3apRm3H/pqG\nX6P7/lRVdUDjTDPBgjVCVXVa6wxT4o3AC4CTWV+svDDsNX21qvZqHWJaJLk93bqrOwPfA46oqv9s\nm2o8qurYJB8G7kJ3sepfAN+uKi+EPk9/hvhuSW7s1scLejrd/3e/obtMwkFt42hKraXb2OJnrF9P\ntJpupouu6cDWAWaV27Rr6iV5cFWdNHH//lV1ZstMY7Juu/HWOaZFki/STXc7D9gNeEtV3bdtKk2r\nJF8DdqLbgnzdGWJHjudJsh/wr1V1Ressmg1JbkS39XgAquq/2iYanyQ7Ay8BbkY3e+rAqnp321Sz\nwW3aRyqdp7bOMSVeMu/+C5qkGK9Htw4wZVYBZ/df9FYCP2mcR1Osqu5eVcur6v5VtYflaqN2Bj6Z\n5OgkD+0X3EtLkuQw4DPAl+k2uji6baLROpruckA7VdUa4ImN88wMP8BGql9b9IjWOcYsyYH9xgT3\nTHJ6kjOSnAb8R+tsY1JVl7XOMA2SfCDJ++k2cfhGkg8BX6c7syctSZLdkhyf5OQkWyd5aetMY1RV\nb62qfYBXAs8ALkrytiRu7qSleHR/gfhv9+trf9o60EhtXVXfmrhvLxiIa7DGzcWH16Kq3kt3YeFH\nVtUJrfNo6v1N6wDTJMnbquovN3Zf/+OtwJ8AH6uqNf116F7dONPoJPlDurPn9wbOBl7RP/Q+uosP\nS5vi8v7nb5LsCfxhyzAjdkqSdwI7JXkr8LnWgWaFa7BGrF9sfzVVdWGLLGOW5D1V9fT+doB3VdUz\nGsfSlEpyjZMYVfX+Flk0/ZKcXlV7JjmlqvZOclpVPaB1rrFJ8g666/F8cd5x19RqkyW5O/At4E7A\ns+nW953YNtU4JdkF+AO60b6vtc4zKxwKHLcCXkx3tvO/gYe0jTNad1p3o59aeeeGWTT90v/ZCrg7\n8KC2ccYpyYH9z92TfDrJn7bONFLvS/IJ4E797ovvbR1ojKrqOcCPk+yRZM9+1AHLlZboIcDvVNW/\nV9VfWq42LMnHgXsBn7NcDcsRrBFLchLwF8A7+jOfJ1eVX/bmSfIR4ETgi8AK4OFV5Zc9DSLJp6pq\n39Y5xmbd51G/bu1Q4ISqmmuda4yS7EB3Iug/gZ9NXKRZvSRvp7um2v3oPstvUlWPaZtK0yrJvsBj\ngdsCpwAfqarvtU01PkluCTyq/7M13ef4e9qmmg2OYI2biw8X5yl0GxE8F7gp4Do1LVmSw5O8qv/z\nbvz/bmNu2o8y/LKqLgJ+3TrQGCV5U1X9tKrOBn4J/HPrTCO1a1X9OXBhVf1Z6zCablX1qao6kK44\nbA/8e+NIo1RVP+8vfn44cCHw8saRZoabXIybiw8X53LgYrqLCv4j3RXbz26aSNNs3TXV1gKXAec3\nzDJmhwAPBw7vrzfzscZ5xmplkrfQfXH5IPD6xnnG6qp+a/ZL+3WQ7h6oJUvyMOBPgTsCp9FN99Y8\nSV5Lt7HM14CP0l0DUgNwiuDITSw+vKCq/KK3AUn+me4D9ICqum+Sk6rqwa1zaToluTndoug7A98D\n3ulW99eUZJ+q+my/jfYhwHFVdXrrXGMx7zpOT6KbRvkU4DynCF5Tkt+huwbdjnTv1ylVdV7bVJpW\nSV4MfLSqvtM6y5glWVFVZ7XOMYssWCOU5Gkbe6yqvFjePOsK1cQuXRYsLVmSTwIfAs4B5oAnugbr\nmib+vzsaeBfwtqravXWusUjyebqNijLvoeqvzyOg37Z+g6rqlOsyi2ZHf4JjL2An+v8H3Q32mpI8\nFHgW3frHrfDzaTBOERynNRs5bhvesEuS7A9sk2Q/4KLWgTTVtquqY/vbFyQ5uGma8bp5kp2BNVV1\nVhLXYE2oqr1aZ5gSe2zkeNFtTiAtxXF027Q/lm768u0BC9Y1vRbYt6p+1DrIrLFgjVC/4JAkewBn\nVlX113e6f9tko/U04BnAucDtgGe2jaMpd16Sd9H9fZrDNVgb81q6hdGvTnJj4EuN84xKkjO45kmx\n0J0h3rNBpFGqqleuu91PE7wj8H2/8GkzLa+qxyXZo6r+pp+ZoGtayfqLMmtAThEcsfnbsjv17Zr6\n4vm+qnLnQG22JLvR7Tp1H7qtoj9TVee0TTVeSf6Ifq1aVX2ldR5NrySvAO4JfAO4G/DVqnJHMy1J\nf5mbPwaOBi4AHl1V92qbanySnEW3y+Il/SFPAA3EgjVi/V/8B1TVFf0uXadV1X1a5xqbJK8D/oVu\nxGEtgIvItamSPAF4MvAGummmt6XbUenYqjquZbYx6nfGuwnr16qtrqrntU01PkluBuzP1deCvKpp\nqBFKclpVPWDi/ul+0dNSJdmxqn6S5KbAw4AvV9UPW+fS9YdTBMftdcCZSb4P7Ay8pm2c0fqj/s+6\nBeUFuEhTm+og4BFVtbq//+3+JMen6ebz6+p2q6oH9rePTHJayzAj9lHgI8B+wDsANwLZsO8keSLw\nVbottb+R5E4AVfUfTZNpGh0D7FNVv8ZLSFxDkg+wkXX9zggahgVr3E4APgEsB1aVw43X0E8RfH9V\nvbd1Fk29NRPlCoCqWp1kY5vOXN/9MsmTWb9W7VeN84zVjarqPUkOqKp3J3lM60AjtTXw0P7POn9L\n9yVwozvrShvxoySH0o2wr5vZ4qYp6/1N6wCzzoI1bicC3wX+uaouWejJ10f9BiAPByxY2lx3STJ/\n6lbwgqcb82S6Ub+/pPucelLbOKN1Sb8JyNf7Le1v3jrQGFXVga0zaKZcCNwYuF9/310pJ1TVhQD9\nTrAvAW5Gd52+A4F3N4w2M1yDNXJJfg94At0Ogl+nWw/iovsJSU6hG+X7Gt2HaDnErU2V5AEbe6yq\nnP7WWzdtawPW0I20/+a6zDN2SXaoqp/21+XZDbikqv67dS5J6jcD+QvgHf11RK+2uZqWzhGs8buK\n7ovL2v7n45O8qKqe2DbWqHjmU5vNErVofzvv/rqzdFsBv5Pk61X1ous405h9BNi733jn3CQfBh7f\nOJM005KcA/wv4Dt0sxB+APwWeH1VuWX7eltX1be61RZA9zmuAViwRizJ/wO+D3wQ+Lt1a7CSvPLa\nfu96aEMF6Eq6AAAPGUlEQVQjD15QUNoCFprKleR911WWMesvev4Y4A+TrPs8WgZs2y7V+CTZGvgT\nYAVwC+BSumuqfbyqrmqZTVPtAmCPqvpNkpsA7wGeDpwOWLDWOyXJO4GdkrwV+FzrQLPCKYIjlOSW\nwA2Bn1fVFf2xWwNXVNXPm4YboSRPWXcT2AXYsaqeci2/IklbVJLt6ArDQcBR/eErgYu9jMR6/W5m\n5wMnA7+gK6APBu5eVX/WMpumVz+CtW9VXdRfwPqTVbV7klMndj8VkGQX4A+AC6rq/NZ5ZoUjWOP0\nbuDQqvrxxLGbAa+nOyOqCVV1tTPmST7VKosk9e5M94XlpUluBRxCdxLobcCPmiYblztU1Z/PO/bV\nJGc0SaNZ8RzgqCTb0hX35/ajpS9rG2tckhxYVe/tN+J5bZKjq+qjrXPNAgvWOO1QVd+dPFBV30uy\nfatAY5bkcNavA9kJ5xBLW1ySz1XVQybu/7NrQ6/m7XSbE0F3TZ73AKvodjx9WKtQI/SJ/qTYqcBl\nwHbAnnSXKZGWpKq+DDxyAw+dfl1nGbk/o/tMeh7dFMoT6K7dp81kwRqnSnKTyd24ktysZaCRO6n/\nWXTz97/eMIs005LsRXch78lt7ZfRndzQepdX1dokOwC3qarjAJJ4/ZkJVfWGft3eHN2Uyh8A/1RV\nq9om0zTrR0BvBfwE2BH4Md1I1qur6ksts43MTZPsCfyyn07569aBZoVn+sfp/wKfTvK0JA9P8gy6\nswrzr9Gjzp36HeB+C7wWeGzjPNIsW013UuMLdOtmTgY+xYbPFl+f/TrJgcBr6HYSJMky4CZNU41M\nkhvRjVj9kO7v0e8D+/VTlqSl+iawV1XdD9gL+BZwMN0UXa13CN2ax8P7/+c+1jjPzHCTi5FKsiPw\nCOB3gIuAT1fVT9qmGqd1123od+o6FDihquZa55JmUZLTq2rPJJ+sqke1zjNWSW4OHAD8BvhAVV3V\nX9RzN7eJXi/Jx4Fzga3pvggfD/wSeFhVPa5lNk2vJCuB+1fV6iTbAKdV1R+5ycV66fZm/0xV7dM6\nyyxyiuBI9WXKrcYXxyFu6bpzQZLTgV37n+suoFJVtWfDXKNSVb8E/mHesf8C/qtNotHarqpeBZDk\nEVX15v626/m0OV4FnJTkKrrvuif0m1z8Y9tY41FVleQ7SfYHzqG73ipV9R9tk80GC5ZmwSHAPjjE\nLW1xVfVM6DaXqar5Fx2WNtUNJ24/Z+L21td1EM2UzwBXAY+imwm0TVWtAY5rmmp8bkb3/WndKFYB\nT2sXZ3Y4RVBTr7/ezLOBWwIvAR5eVW7VLm1B/fbHBwO/C3wPeGdVXdY2laZNvwnIz2riy0iSG9BN\npTy7XTJNoySPp1sPehPgRGD/qnpQ21Tj1o/s3Qq4pC+hGoCbXGgWHAOcB6zoPxye3ziPdH1wDN31\nnN5Et0HBsW3jaBpV1U9r3pneqrrScqUl+r/AFcDfVdVRwOWN84xakicBZwJvBL6QxIt7D8SCpVmw\nTVV9lm46AKxfEyJpy9muqj5YVRdU1QeBbVsHknT9VlW/B7wVeGSSTwB/kGSvfrdKXdNfAHtU1ZOA\nPYDnNs4zM1yDpVnw7SSHAtsnOQT4t9aBpOuB85K8i24HuDng/MZ5JImqOp/+8yjJnYHHAC+j26VS\nV7eWbo3aD/qfa9vGmR2uwdJMSLIvcFfgArdAlq4bSeaAOwHfq6pzWufR9Ery4qp6zcbuSxpekl2B\nw+nWsP8ceHlVndc21WywYGmmJPkD4FlV5TosaQtIck+6Exm/TnIrul08A7ytqn7UNp2mVZJbV9WP\nN3ZfkqaJUwQ1tZI8AzgQuBFwJPCA/qH3NAslzb63A/fvbx9D9//bKuC9wMNahdLUW53kMNbvBrs7\n4G6w0haQ5D/orsk3OSUwdJfH2rtNqtliwdI0O7Cq7tdfpf37wJ5VdUHjTNKsu7yq1vbba9+mqo4D\nSPI3jXNpuh1Dd2Hml1TVmiTPx4IlbSn/CKwALgY+AZxcVVdd+69oU1iwNM2uSBK6LVn/nW6zi60A\nqsqFmtKW8eskB9L94/wRgCTL6K47Iy3VNlX12SR/3d93N1hpC6mq1wMkuQ3wJ8Dnknyqqt7YNtns\nsGBp2p1MP6w977ZD3NKW8UTgAOAs4AP9sZ2Av2uWSLPA3WCl69DEDov3Br4BnNY20WxxkwvNhCQ3\nAJa7yF6SptPEbrDfqqoTWueRZlWS84HVwPHA2UysxaqqU1rlmiVeaFhTL8lTgE8Dn0mydZKPtM4k\nSVq8JDehm4FwMXDLJAc0jiTNsn8B/hW4IXBfuo2L9mD9BkbaTE4R1Cx4RlXtkeTz/eLoHVoHkiRt\nkhPpTpQ5C0HawqrqletuJ7kP3UWGPwnctlmoGWPB0iy4KsnNgOp3FHTeqyRNl597YWHpupXk7cCv\ngL2r6vgk7wYe2jjWTLBgaRYcCnyUbu7+R4HD2saRJG2iZUmOp1tsXwBV9bK2kaSZd9eqelCSz/f3\nt26aZoZYsDT1quorwD6tc0iSlux1rQNI10O/SnJvgCT3AH7ROM/McBdBTa0kZ3DN6YDrrkS+Z4NI\nkqRNlGR74I+B2wAXAZ+pqp+2TSXNviQ70s36uSvwLeA1VfWTtqlmgwVLkiQ1keShwEuBfwJ+CNwO\neArwd1V1YsNokrRkFixNvSS3pzsDc2fge8ARVfWfbVNJkhaS5DTg4VX1m4ljN6UbxXImgrQF9Wuv\nim72z+8BF1XVXNtUs8E1WJoF/ww8HzgP2A34IN11HSRJ47Z2slwBVNWvk6zd2C9IGkZV7bXudpIb\nAUc2jDNTLFiaBauAs6uqkqwEnD8sSdPh3CSHAm+pqsv7L3mHAF9tnEuaeUnuNHF3J7qT1BqAUwQ1\ntZJ8gG5o+07ALYGvA7sAP66qvVtmkyQtLMlWwEHAY4AbAZcDxwNHVdWaltmkWZfkvf3NAi4FPlBV\nntwYgAVLU6tfe7VBVXXhdZlFkiRp2iTZDthu3f2q+q+GcWaGBUtTL8kB849V1ftbZJEkSZoGSY4C\ndgZ+xPrL3DytbarZ4BoszYJM/NwF2BGwYEmSJG3cHavqIa1DzCJHsDRzknyqqvZtnUOStDhJPgZ8\nGPhEVf22dR5pliVZt079KcC5wDfo1mFRVae0yjVLLFiaekkOp/9goNsFZ6eqekTDSJKkTZBkB+Cx\nwCPpFtt/mO5aWFc1DSbNoCRHAxtaq15V9arrOs8ssmBp6iV5QH9zLXAZcH75F1uSpk6S+9Ft074z\n3SU3Tq6qN7ZNJc2WJKe42/KWZcHS1Etyc+DZwJ2B7wHvrKrL2qaSJC1WktcD9wDOAI6tqu/0x53y\nLQ0syaXA+fMP041g7dkg0sxxkwvNgg8CHwI+AcwBxwL+gyxJUyBJgMuq6sHzH7NcSVvEV6tqr9Yh\nZpkFS7Ngu6o6tr99QZKDm6aRJC1aVVWSe7XOIUlDsWBpFpyX5F10O+HMcc1hb0nSuCXJp+k+x9cC\nVNXL2kaSZtajWweYdRYsTbUkuwE/Be5CtyPOO6rqnLapJEmb6E2tA0jXF65T3/K2ah1AWqokTwAO\nB04Dng98AXhZkv2bBpMkbaozgFsB9wVuDZzZNo4kLZ27CGpqJTkFeERVrZ44dmPg024/KknTI8kH\ngX8DzqGb6n23qnpi21SStDROEdQ0WzNZrgCqanWSNa0CSZKW5HZV9eT+9olJTmuaRpI2gwVL0+wu\nSeZfcTzA77YII0lash8meSnrNyu6qHEeSVoypwhqaiV5wMYeqyrPfkrSlEiyNbAf3QXjvwt8oqqu\naptKkpbGgiVJkprrd4W9Jd1MBKrqlLaJJGlpnCIoSZKaSnIC8EPWTw0swIIlaSpZsCRJUmvbVNWz\nWoeQpCE4RVCSJDWV5CnAbsA36EavqKqjm4aSpCXyQsOSJKm1g4FLgKuANf0fSZpKThGUJEmtraqq\n17QOIUlDcIqgJElqKsm/Aldw9SmCL2saSpKWyBEsSZLU2hGtA0jSUFyDJUmSWjsPWAE8AvgCcPO2\ncSRp6SxYkiSptWPoS1ZVXQU8v3EeSVoyC5YkSWptm6r6LN0uggBpGUaSNocFS5IktfbtJIcC2yc5\nBPi31oEkaancRVCSJDWXZF/grsC3quqE1nkkaaksWJIkqYkke27ssao6/brMIklDcZt2SZLUysnA\nucBJwOX9sdBdC8uCJWkqWbAkSVIrtwUeDTwYWA2cAHy6qn7TNJUkbQanCEqSpOaS/BFwJLCyqp7Z\nOo8kLZUFS5IkNZHknsB+9JtbAB+vqpVtU0nS5rFgSZKkJpKsBVYCF/SH/udLSVUd0CSUJG0m12BJ\nkqRW7tg6gCQNzREsSZIkSRrIVq0DSJIkSdKssGBJkqQmkmxwqUKSHa7rLJI0FAuWJElq5f+tu5Hk\noxPHP9IgiyQNwoIlSZJaycTtHTZyXJKmirsISpKkVrZJcke6E743nrzdNpYkLZ27CEqSpCaSvHdj\nj1XVgddlFkkaigVLkiQ1kWRf4MtVtap1FkkailMEJUlSK7sDz0myI/CfwNnAV4CVVfWbpskkaYkc\nwZIkSc0luQPwcODZwF2r6gZNA0nSElmwJElSE0keCMwBf0g3q+anwDnAOVX17w2jSdKSWbAkSVIT\nSf4NWAUcC3wJ+EZVrW2bSpI2jwVLkiQ1k+RmwL3oRrL+N3BD4CdV9fymwSRpidzkQpIktXRLYDlw\nK2Bn4CbA5U0TSdJmcARLkiQ1keQrwPdZv3vgOVX1q6ahJGkzWbAkSZIkaSBOEZQkSU0kWQucB1w6\neRioqtq7TSpJ2jwWLEmS1Mr+wB8D2wCnAMdX1SVtI0nS5nGKoCRJairJDYCHAK8ETq6qwxpHkqQl\ncwRLkiQ1kWRr4IHAnwC3AT7c/5GkqeUIliRJaiLJT4HvAZ8ALgb+50tJVR3dKpckbQ5HsCRJUisv\naB1AkoZmwZIkSa2c0TqAJA3NKYKSJKmJJO+duLvuC8m9gd+vKk8CS5pKFixJktRUkq2AxwDPBC4A\n3lZV322bSpKWxrNDkiSpiSTbAs8AHgmcADyuqi5rm0qSNo8jWJIkqYkklwH/BXwSWMPVdxF8Watc\nkrQ5HMGSJEmtPLJ1AEkamiNYkiRJkjSQrVoHkCRJkqRZYcGSJEmSpIFYsCRJkiRpIBYsSZIkSRrI\n/wcIKXunAKTmsgAAAABJRU5ErkJggg==\n", 159 | "text/plain": [ 160 | "" 161 | ] 162 | }, 163 | "metadata": {}, 164 | "output_type": "display_data" 165 | } 166 | ], 167 | "source": [ 168 | "plot = axl.Plot(results)\n", 169 | "plot.boxplot();" 170 | ] 171 | }, 172 | { 173 | "cell_type": "code", 174 | "execution_count": null, 175 | "metadata": { 176 | "collapsed": true 177 | }, 178 | "outputs": [], 179 | "source": [] 180 | } 181 | ], 182 | "metadata": { 183 | "anaconda-cloud": {}, 184 | "kernelspec": { 185 | "display_name": "Python [default]", 186 | "language": "python", 187 | "name": "python3" 188 | }, 189 | "language_info": { 190 | "codemirror_mode": { 191 | "name": "ipython", 192 | "version": 3 193 | }, 194 | "file_extension": ".py", 195 | "mimetype": "text/x-python", 196 | "name": "python", 197 | "nbconvert_exporter": "python", 198 | "pygments_lexer": "ipython3", 199 | "version": "3.5.2" 200 | } 201 | }, 202 | "nbformat": 4, 203 | "nbformat_minor": 1 204 | } 205 | --------------------------------------------------------------------------------