{ "cells": [ { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "slide" } }, "source": [ "We made a ton of really nice figures today, and I'd like to let you take home a personalized version as my way of saying thanks for attending. Please run the code cells below to generate your personalized ordering of the Circos plots we made." ] }, { "cell_type": "code", "execution_count": 1, "metadata": { "collapsed": true, "slideshow": { "slide_type": "slide" } }, "outputs": [], "source": [ "import hashlib\n", "import matplotlib.image as mpimg\n", "import matplotlib.pyplot as plt\n", "import numpy as np\n", "\n", "%matplotlib inline" ] }, { "cell_type": "code", "execution_count": 2, "metadata": { "collapsed": true, "slideshow": { "slide_type": "slide" } }, "outputs": [], "source": [ "def make_image(name):\n", " \n", " integer = int(hashlib.sha1(bytes(name, 'utf-8')).hexdigest(), 16)\n", " digits = [int(i) for i in list(str(integer))]\n", "\n", " # Set the order of images.\n", " order = []\n", " for d in digits:\n", " if d not in order:\n", " order.append(d)\n", " images = {0: 'seventh.png',\n", " 1: 'sociopatterns.png',\n", " 2: 'physicians.png',\n", " 3: 'divvy.png',\n", " 4: 'crime-person.png',\n", " 5: 'crime-crime.png'}\n", " \n", " imgs_read = []\n", " for i in order:\n", " if i in images.keys():\n", " imgs_read.append(mpimg.imread('images/{0}'.format(images[i])))\n", " # Save the images to disk\n", " plt.imshow(np.hstack(imgs_read))\n", " plt.axis('off')\n", " plt.savefig('images/custom-logo.png', dpi=900, bbox_inches='tight')\n", " plt.savefig('images/custom-logo-small.png', dpi=75, bbox_inches='tight')\n", " print('Thank you for attending, {0}!'.format(name))\n", " print('Your hash-ordered image can be found in at \"images/custom-logo.png\".'.format(name))" ] }, { "cell_type": "code", "execution_count": 4, "metadata": { "slideshow": { "slide_type": "slide" } }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Thank you for attending, Eric Ma!\n", "Your hash-ordered image can be found in at \"images/custom-logo.png\".\n" ] }, { "data": { "image/png": "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\ntex9gNkJxz8AAAAASUVORK5CYII=\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "# Change accordingly! :)\n", "make_image('Eric Ma')" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": true }, "outputs": [], "source": [] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": true }, "outputs": [], "source": [] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": true }, "outputs": [], "source": [] } ], "metadata": { "celltoolbar": "Slideshow", "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.6.0" }, "toc": { "colors": { "hover_highlight": "#DAA520", "navigate_num": "#000000", "navigate_text": "#333333", "running_highlight": "#FF0000", "selected_highlight": "#FFD700", "sidebar_border": "#EEEEEE", "wrapper_background": "#FFFFFF" }, "moveMenuLeft": true, "nav_menu": { "height": "12px", "width": "252px" }, "navigate_menu": true, "number_sections": true, "sideBar": true, "threshold": 4, "toc_cell": false, "toc_section_display": "block", "toc_window_display": false, "widenNotebook": false }, "varInspector": { "cols": { "lenName": 16, "lenType": 16, "lenVar": 40 }, "kernels_config": { "python": { "delete_cmd_postfix": "", "delete_cmd_prefix": "del ", "library": "var_list.py", "varRefreshCmd": "print(var_dic_list())" }, "r": { "delete_cmd_postfix": ") ", "delete_cmd_prefix": "rm(", "library": "var_list.r", "varRefreshCmd": "cat(var_dic_list()) " } }, "types_to_exclude": [ "module", "function", "builtin_function_or_method", "instance", "_Feature" ], "window_display": false }, "widgets": { "state": {}, "version": "1.1.1" } }, "nbformat": 4, "nbformat_minor": 1 }