{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "<img src=\"images/continuum_analytics_logo.png\" \n", " alt=\"Continuum Logo\",\n", " align=\"right\",\n", " width=\"30%\">\n", "\n", "# Building Python Data Applications <br> with Blaze, Numba, and Bokeh\n", "\n", "*NCCU PyDay 2015*\n", "\n", "by Andy Terrel\n", "\n", "<hr>" ] }, { "cell_type": "markdown", "metadata": { "collapsed": true }, "source": [ "## Tutorial sections\n", "\n", "- Section 0: Introduction\n", "- Section 0a: Numba First Steps\n", "- Section 0b: Numba Types\n", "- Section 0c: Numba and Numpy\n", "- Section 1: Blaze\n", "- Section 2: Bokeh\n", "- Section 3: Apps\n", "\n", "<hr>\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Follow along\n", "\n", "### http://git.io/vIlk2\n", "\n", "<br>\n", "\n", "- Option A: Download repository\n", "\n", "### https://github.com/aterrel/pydata-apps\n", "\n", "- Option B: View notebooks on nbviewer\n", "\n", "### http://nbviewer.ipython.org/github/aterrel/pydata-apps\n", "\n", "<hr>\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# Numba\n", "\n", "http://numba.pydata.org\n", "\n", "Numba gives a simple way to compile simple functions to assembly via llvm to be used with NumPy kernels.\n" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": false }, "outputs": [], "source": [ "from IPython.display import IFrame\n", "IFrame('http://numba.pydata.org/', width='100%', height=350)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "<hr>" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Blaze\n", "\n", "\n", "### http://blaze.pydata.org/en/latest/\n", "\n", "\n", "Blaze allows Python users a familiar interface to query data living in other data storage systems." ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": false }, "outputs": [], "source": [ "from IPython.display import IFrame\n", "IFrame('http://blaze.pydata.org/en/latest/', width='100%', height=350)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "<hr>" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Bokeh\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### http://bokeh.pydata.org/en/latest/\n", "\n", "Bokeh is a Python interactive visualization library that targets modern web browsers for presentation." ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": false }, "outputs": [], "source": [ "from IPython.display import IFrame\n", "IFrame('http://bokeh.pydata.org/en/latest/', width='100%', height=350)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "<hr>" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Tutorial goals\n", "\n", "- Learn basics of Numba\n", "- Query backends with Blaze expressions \n", "- Generate Bokeh visualizations\n", "- Create data applications with Blaze and Bokeh\n", "\n", "<hr>" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Installation" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "- Download and install the [Anaconda Python Distribution](http://continuum.io/downloads)\n", "- Download [archive of this repository](https://github.com/aterrel/pydata-apps/archive/master.zip) or checkout with git \n", "\n", " ```\n", " git clone https://github.com/aterrel/pydata-apps.git\n", " ```\n", "\n", "- Each tutorial has a slightly different set of requirements. To download all the requirements try:\n", " \n", " ```\n", " conda update conda\n", " conda env create\n", " ```\n", "\n", "- Activate the environment\n", "\n", " ```\n", " source activate pydata_apps\n", " ```\n", "\n", "### Static notebooks\n", "\n", "For those want to just follow a static notebook (not all interactive elements will work), see the following links:\n", "\n", "- [Section 0: Introduction](http://nbviewer.ipython.org/github/ContinuumIO/pydata-apps/blob/master/Section_0_Introduction.ipynb)\n", "- [Numba 0: Numba First Steps](http://nbviewer.ipython.org/github/aterrel/pydata-apps/blob/master/numba_tutorial/Numba%20First%20Steps.ipynb)\n", "- [Numba 1: Numba Types](http://nbviewer.ipython.org/github/aterrel/pydata-apps/blob/master/numba_tutorial/Numba%20types.ipynb)\n", "- [Numba 2: Numba and Numpy](http://nbviewer.ipython.org/github/aterrel/pydata-apps/blob/master/numba_tutorial/Numpy%20and%20numba.ipynb)\n", "- [Section 1: Blaze Tutorial](http://nbviewer.ipython.org/github/ContinuumIO/pydata-apps/blob/master/Section_1_blaze.ipynb)\n", "- [Section 2: Bokeh Tutorial](http://nbviewer.ipython.org/github/ContinuumIO/pydata-apps/blob/master/Section_2_bokeh.ipynb) \n" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": true }, "outputs": [], "source": [] } ], "metadata": { "kernelspec": { "display_name": "Python 2", "language": "python", "name": "python2" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 2 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython2", "version": "2.7.10" } }, "nbformat": 4, "nbformat_minor": 0 }