{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# Binning in physt" ] }, { "cell_type": "code", "execution_count": 1, "metadata": { "collapsed": false }, "outputs": [], "source": [ "# Necessary import evil\n", "%matplotlib inline\n", "from physt import histogram, binnings\n", "import numpy as np\n", "import matplotlib.pyplot as plt" ] }, { "cell_type": "code", "execution_count": 2, "metadata": { "collapsed": false }, "outputs": [], "source": [ "# Some data\n", "np.random.seed(42)\n", "\n", "heights1 = np.random.normal(169, 10, 100000)\n", "heights2 = np.random.normal(180, 6, 100000)\n", "numbers = np.random.rand(100000)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Ideal number of bins" ] }, { "cell_type": "code", "execution_count": 3, "metadata": { "collapsed": false }, "outputs": [ { "data": { "image/png": "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\n/n/OLXAzBX0YbgAAAABJRU5ErkJggg==\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "X = [int(x) for x in np.logspace(0, 4, 50)]\n", "\n", "algos = binnings.bincount_methods\n", "Ys = { algo: [] for algo in algos}\n", "\n", "for x in X:\n", " ex_dataset = np.random.exponential(1, x)\n", " for algo in algos:\n", " Ys[algo].append(binnings.ideal_bin_count(ex_dataset, algo))\n", "\n", "figure, axis = plt.subplots(figsize=(8, 8))\n", "for algo in algos:\n", " if algo == \"default\":\n", " axis.plot(X, Ys[algo], \":.\", label=algo, alpha=0.5, lw=2)\n", " else:\n", " axis.plot(X, Ys[algo], \"-\", label=algo, alpha=0.5, lw=2)\n", "axis.set_xscale(\"log\")\n", "axis.set_yscale(\"log\")\n", "axis.set_xlabel(\"Sample size\")\n", "axis.set_ylabel(\"Bin count\")\n", "axis.legend(loc=2);" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Binning schemes" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Exponential binning\n", "\n", "Uses numpy.logscale to create bins." ] }, { "cell_type": "code", "execution_count": 4, "metadata": { "collapsed": false }, "outputs": [ { "data": { "image/png": "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\nLEmSJPX4/wGAM8Mksq+hJAAAAABJRU5ErkJggg==\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "figure, axis = plt.subplots(1, 2, figsize=(10, 4))\n", "hist1 = histogram(numbers, \"exponential\", 10, range=(0.0001, 1))\n", "hist1.plot(color=\"green\", ax=axis[0])\n", "hist1.plot(density=True, errors=True, ax=axis[1])\n", "axis[0].set_title(\"Absolute scale\")\n", "axis[1].set_title(\"Log scale\")\n", "axis[1].set_xscale(\"log\");" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Integer binning\n", "\n", "Useful for integer values (or something you want to round to integers), creates bins of width=1 around integers (i.e. 0.5-1.5, ...)" ] }, { "cell_type": "code", "execution_count": 5, "metadata": { "collapsed": false }, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "# Sum of two dice (should be triangle, right?)\n", "dice = np.floor(np.random.rand(10000) * 6) + np.floor(np.random.rand(10000) * 6) + 2\n", "histogram(dice, \"integer\").plot(ticks=\"center\", density=True);" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Quantile-based binning\n", "\n", "Based on quantiles, this binning results in all bins containing roughly the same amount \n", "of observances." ] }, { "cell_type": "code", "execution_count": 6, "metadata": { "collapsed": false }, "outputs": [ { "data": { "image/png": "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\nrkJggg==\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "figure, axis = plt.subplots(1, 2, figsize=(10, 4))\n", "# bins2 = binning.quantile_bins(heights1, 40)\n", "hist2 = histogram(heights1, \"quantile\", 40)\n", "hist2.plot(ax=axis[0]);\n", "hist2.plot(density=True, ax=axis[1]);\n", "axis[0].set_title(\"Frequencies\")\n", "axis[1].set_title(\"Density\");" ] }, { "cell_type": "code", "execution_count": 7, "metadata": { "collapsed": false }, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAagAAAEYCAYAAAAJeGK1AAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAIABJREFUeJzt3X90VeWd7/H3R0ABf4JELgU6wVtAgdYIkdJaLa3Xwvhj\noNpaXLcFxcKogD9q60i9MzqrssY7Rb3L6VRKbynQsVVq5fKj1VZs8cdUjYEbFBAEJS6SQUS9gE6F\nQvjeP85DegiBJOSQ7ITPa62zznOe/ex9vucE8sne5zl7KyIwMzPLmuNauwAzM7P6OKDMzCyTHFBm\nZpZJDigzM8skB5SZmWWSA8rMzDLJAWVmZpnkgDIzs0xyQJmZWSZ1bO0CGtKjR48oLi5u7TLMzKxA\nVqxY8W5EFDU0LvMBVVxcTHl5eWuXYWZmBSLprcaM8yE+MzPLJAeUmZllkgPKzMwyKfOfQdVnz549\nVFVVsWvXrtYuxZqgc+fO9OnTh06dOrV2KWbWBrTJgKqqquLkk0+muLgYSa1djjVCRPDee+9RVVVF\nv379WrscM2sD2uQhvl27dnH66ac7nNoQSZx++une6zWzRmuTAQU4nNog/8zMrCnabECZmVn71iY/\ng6pryZLCbu/yyxseU1VVxZQpU1i7di01NTVccskl3HfffZxwwgkFrWX58uUcf/zxfPaznwVg1qxZ\ndO3alfHjx3PNNddw2WWX8ZWvfKVR22rq+OZYvnw5M2fOZOnSpUf9ucysffIe1BGICK644grGjh3L\nhg0b2LBhAx999BG33357wZ9r+fLl/PGPf6x9fP311zN+/PiCP4+ZWdY4oI7A73//ezp37sy1114L\nQIcOHXjggQeYP38+H374IXPnzmXq1Km14y+77DKWL18OwA033EBpaSmDBw/mrrvuqh1TXFzMXXfd\nxdChQ/nkJz/JunXrqKysZNasWTzwwAOUlJTw3HPPcffddzNz5syDalqxYgWf//znGTZsGKNGjWLL\nli311r5s2TJKS0sZMGBA7d5NZWUlF1xwAUOHDmXo0KG1gbhlyxYuvPBCSkpKGDJkCM899xwAv/vd\n7/jMZz7D0KFD+epXv8qHH34IwJNPPslZZ53F0KFDefzxx5v5LpvZsc4BdQTWrFnDsGHDDug75ZRT\nKC4uZuPGjYddd8aMGZSXl/PKK6/wzDPP8Morr9Qu69GjBytXruSGG25g5syZFBcXc/3113PrrbdS\nUVHBBRdcUO829+zZw7Rp03jsscdYsWIFEydO5M4776x3bGVlJWVlZfz617/m+uuvZ9euXZxxxhk8\n9dRTrFy5kkcffZSbbroJgJ///OeMGjWKiooKVq1aRUlJCe+++y733HMPy5YtY+XKlZSWlnL//fez\na9cuJk2axJIlS1ixYgVvv/12U95SM7ODtIvPoNqSBQsWMHv2bPbu3cuWLVtYu3Ytn/rUpwC44oor\nABg2bFiT9kDWr1/P6tWrufjiiwGoqamhV69e9Y696qqrOO644+jfvz9nnnkm69ato1+/fkydOpWK\nigo6dOjA66+/DsB5553HxIkT2bNnD2PHjqWkpIRnnnmGtWvXcv755wPw5z//mc985jO12+nfvz8A\nX//615k9e/aRvUlmZjigjsigQYN47LHHDujbuXMnb7/9NgMHDmT16tXs27evdtn+7/5s2rSJmTNn\n8vLLL9OtWzeuueaaA74XtH+CRYcOHdi7d2+j64kIBg8ezAsvvNDg2LpTvSXxwAMP0LNnT1atWsW+\nffvo3LkzABdeeCHPPvssv/71r7nmmmv41re+Rbdu3bj44ov5xS9+ccB2KioqGl2vmVlj+BDfEbjo\noov405/+xPz584HcHsttt93G1KlT6dKlC8XFxVRUVLBv3z42b95MWVkZkAuxE088kVNPPZWtW7fy\nxBNPNPhcJ598Mh988MFhxwwcOJBt27bVBtSePXtYs2ZNvWN/+ctfsm/fPt544w3efPNNBg4cyI4d\nO+jVqxfHHXccP/vZz6ipqQHgrbfeomfPnkyaNIlvfvObrFy5khEjRvDv//7vtYcy//M//5PXX3+d\ns846i8rKSt544w2AgwLMzKyp2sUeVGOmhReSJBYuXMiUKVP43ve+x7Zt2/ja175W+7nP+eefT79+\n/Rg0aBBnn302Q4cOBeCcc87h3HPP5ayzzqJv3761h8kO5/LLL+crX/kKixYt4l/+5V/qHXP88cfz\n2GOPcdNNN7Fjxw727t3LLbfcwuDBgw8a+/GPf5zhw4ezc+dOZs2aRefOnbnxxhu58sormT9/PqNH\nj+bEE08EcjMIv//979OpUydOOukk5s+fT1FREXPnzuXqq69m9+7dANxzzz0MGDCA2bNnc+mll9K1\na1cuuOCCBoPVzOxwFBGtXcNhlZaWRt0LFr722mucffbZrVTRwf74xz9y9dVXs3Dhwtowsvpl7Wdn\n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\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "figure, axis = plt.subplots()\n", "\n", "histogram(heights1, \"quantile\", 10).plot(alpha=0.3, density=True, ax=axis, label=\"Quantile based\")\n", "histogram(heights1, 10).plot(alpha=0.3, density=True, ax=axis, color=\"green\", label=\"Equal spaced\")\n", "axis.legend(loc=2);" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Fixed-width bins\n", "\n", "This binning is useful if you want \"human-friendly\" bin intervals." ] }, { "cell_type": "code", "execution_count": 8, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/plain": [ "Histogram1D(bins=(31,), total=100000, dtype=int64)" ] }, "execution_count": 8, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAagAAAEYCAYAAAAJeGK1AAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAEx5JREFUeJzt3X+s3fdd3/HnazY1KV1Kgi/Gs63ZGmaTgzbanAVv1Vi3\nIsUwhPMHijwNYliUaCRAW6FVcZHWf1NAdERaIlkkiwNVgwmFWJOyNXPZ+peTHffHHDs1uSMLtuvE\nFwoN27SAw3t/nI/HyY3da99z4/M59z4f0lfncz7fH+dzP/I9L38+53O+N1WFJEm9+WvTboAkSZdj\nQEmSumRASZK6ZEBJkrpkQEmSumRASZK6ZEBJkrpkQEmSumRASZK6tH7aDViujRs31vbt26fdDEnS\nNTp+/PgfVdXcUsfNbEBt376d4XA47WZIkq5Rkleu5jin+CRJXTKgJEldMqAkSV0yoCRJXTKgJEld\nMqAkSV0yoCRJXTKgJEldMqAkSV0yoCRJXTKgJEldMqAkSV0yoCRJXTKgJEldMqAkSV0yoCRJXTKg\nJEldWjKgkjyW5EKSF8bqfinJV5P89yS/k+Tbx/YdSDKf5HSS28fqb01you17KEla/YYkv9nqn0uy\nfWV/REnSLLqaEdTjwJ5Fdc8C31tVfxf4feAAQJJdwD7glnbOw0nWtXMeAe4Bdrbt0jXvBv6kqr4b\n+BTwyeX+MJKk1WPJgKqqLwBfX1T3uaq62J4eA7a28l7gyap6o6peBuaB25JsBm6sqmNVVcATwB1j\n5xxq5aeAD10aXUmS1q6V+AzqXwLPtPIW4MzYvrOtbksrL65/yzkt9L4BfMflXijJvUmGSYYLCwsr\n0HRpupJr26S1ZKKASvILwEXg0yvTnG+uqg5W1aCqBnNzc9fjJSVJU7LsgEryk8CPAP+iTdsBnAO2\njR22tdWd46+mAcfr33JOkvXAe4E/Xm67JEmrw7ICKske4GPAj1bV/xnbdQTY11bm7WC0GOL5qjoP\nvJ5kd/t86S7g6bFz9rfyjwGfHws8SdIatX6pA5J8BvggsDHJWeATjFbtbQCebesZjlXVv6qqk0kO\nA6cYTf3dX1Vvtkvdx2hF4A2MPrO69LnVo8CvJ5lntBhj38r8aJKkWZZZHawMBoMaDofTboY0kWtd\n+DCjv67SWyQ5XlWDpY7zThKSpC4ZUJKkLhlQkqQuLblIQtLV88u00spxBCVJ6pIBJUnqkgElSeqS\nASVJ6pIBJUnqkqv4pBninSe0ljiCkiR1yYCSJHXJgJIkdcmAkiR1yYCSJHXJgJIkdcmAkiR1yYCS\nJHXJgJIkdcmAkiR1yYCSJHXJgJIkdcmAkiR1yYCSJHXJgJIkdcmAkiR1yYCSJHXJv6grfRPX+hds\nJa2cJUdQSR5LciHJC2N1Nyd5NslL7fGmsX0HkswnOZ3k9rH6W5OcaPseSka/+kk2JPnNVv9cku0r\n+yNKkmbR1UzxPQ7sWVT3AHC0qnYCR9tzkuwC9gG3tHMeTrKunfMIcA+ws22Xrnk38CdV9d3Ap4BP\nLveHkSStHksGVFV9Afj6ouq9wKFWPgTcMVb/ZFW9UVUvA/PAbUk2AzdW1bGqKuCJRedcutZTwIcu\nja4kSWvXchdJbKqq8638KrCplbcAZ8aOO9vqtrTy4vq3nFNVF4FvAN9xuRdNcm+SYZLhwsLCMpsu\nSZoFE6/iayOiWoG2XM1rHayqQVUN5ubmrsdLSpKmZLkB9VqbtqM9Xmj154BtY8dtbXXnWnlx/VvO\nSbIeeC/wx8tslyRplVhuQB0B9rfyfuDpsfp9bWXeDkaLIZ5v04GvJ9ndPl+6a9E5l671Y8Dn26hM\nkrSGLfk9qCSfAT4IbExyFvgE8CBwOMndwCvAnQBVdTLJYeAUcBG4v6rebJe6j9GKwBuAZ9oG8Cjw\n60nmGS3G2LciP5kkaaZlVgcrg8GghsPhtJuhVW7W15PO6K+3Vrkkx6tqsNRx3upIktQlA0qS1CUD\nSpLUJW8WK61i1/oZmp9ZqSeOoCRJXTKgJEldMqAkSV0yoCRJXTKgJEldMqAkSV0yoCRJXTKgJEld\nMqAkSV0yoCRJXTKgJEldMqAkSV0yoCRJXTKgJEldMqAkSV0yoCRJXTKgJEldMqAkSV0yoCRJXTKg\nJEldMqAkSV1aP+0GSNdbMu0WSLoajqAkSV0yoCRJXZoooJJ8NMnJJC8k+UySb01yc5Jnk7zUHm8a\nO/5Akvkkp5PcPlZ/a5ITbd9DiZMwkrTWLTugkmwBfg4YVNX3AuuAfcADwNGq2gkcbc9JsqvtvwXY\nAzycZF273CPAPcDOtu1ZbrskSavDpFN864EbkqwH3g18DdgLHGr7DwF3tPJe4MmqeqOqXgbmgduS\nbAZurKpjVVXAE2PnSJLWqGUHVFWdA34Z+EPgPPCNqvocsKmqzrfDXgU2tfIW4MzYJc62ui2tvLhe\nkrSGTTLFdxOjUdEO4G8A35bkx8ePaSOimqiFb33Ne5MMkwwXFhZW6rKSpA5NMsX3g8DLVbVQVX8B\nfBb4h8BrbdqO9nihHX8O2DZ2/tZWd66VF9e/TVUdrKpBVQ3m5uYmaLokqXeTBNQfAruTvLutuvsQ\n8CJwBNjfjtkPPN3KR4B9STYk2cFoMcTzbTrw9SS723XuGjtHkrRGLftOElX1XJKngC8CF4EvAQeB\n9wCHk9wNvALc2Y4/meQwcKodf39Vvdkudx/wOHAD8EzbJElrWEYfE82ewWBQw+Fw2s3QDPJbdlc2\no28HmjFJjlfVYKnjvJOEJKlL3ixW0v93raNLR1x6JzmCkiR1yYCSJHXJgJIkdcmAkiR1yYCSJHXJ\ngJIkdcmAkiR1yYCSJHXJgJIkdcmAkiR1yYCSJHXJgJIkdcmAkiR1yYCSJHXJgJIkdcmAkiR1yYCS\nJHXJgJIkdcmAkiR1yYCSJHXJgJIkdcmAkiR1yYCSJHXJgJIkdcmAkiR1yYCSJHVp/bQbIE0qmXYL\nJL0TJhpBJfn2JE8l+WqSF5P8gyQ3J3k2yUvt8aax4w8kmU9yOsntY/W3JjnR9j2U+JYjSWvdpFN8\nvwr8x6r6O8DfA14EHgCOVtVO4Gh7TpJdwD7gFmAP8HCSde06jwD3ADvbtmfCdkmSZtyyAyrJe4Ef\nAB4FqKo/r6o/BfYCh9phh4A7Wnkv8GRVvVFVLwPzwG1JNgM3VtWxqirgibFzJElr1CQjqB3AAvDv\nk3wpya8l+TZgU1Wdb8e8Cmxq5S3AmbHzz7a6La28uP5tktybZJhkuLCwMEHTJUm9mySg1gPvBx6p\nqvcB/5s2nXdJGxHVBK/xFlV1sKoGVTWYm5tbqctKkjo0SUCdBc5W1XPt+VOMAuu1Nm1He7zQ9p8D\nto2dv7XVnWvlxfWSpDVs2QFVVa8CZ5L87Vb1IeAUcATY3+r2A0+38hFgX5INSXYwWgzxfJsOfD3J\n7rZ6766xcyRJa9Sk34P6WeDTSd4F/AHwU4xC73CSu4FXgDsBqupkksOMQuwicH9Vvdmucx/wOHAD\n8EzbJElrWEYfE82ewWBQw+Fw2s1QB/zW3PTM6NuHpizJ8aoaLHWctzqSJHXJgJIkdcl78Ulatmud\nXnVKUNfCEZQkqUsGlCSpSwaUJKlLBpQkqUsGlCSpSwaUJKlLBpQkqUsGlCSpSwaUJKlLBpQkqUsG\nlCSpSwaUJKlLBpQkqUsGlCSpSwaUJKlLBpQkqUsGlCSpSwaUJKlLBpQkqUsGlCSpSwaUJKlLBpQk\nqUsGlCSpSwaUJKlL66fdAGmxZNotkNSDiUdQSdYl+VKS/9Ce35zk2SQvtcebxo49kGQ+yekkt4/V\n35rkRNv3UOJblCStdSsxxfdh4MWx5w8AR6tqJ3C0PSfJLmAfcAuwB3g4ybp2ziPAPcDOtu1ZgXZJ\nkmbYRAGVZCvwz4BfG6veCxxq5UPAHWP1T1bVG1X1MjAP3JZkM3BjVR2rqgKeGDtHkrRGTTqC+rfA\nx4C/HKvbVFXnW/lVYFMrbwHOjB13ttVtaeXF9W+T5N4kwyTDhYWFCZsuSerZsgMqyY8AF6rq+JWO\naSOiWu5rXOZ6B6tqUFWDubm5lbqsJKlDk6zi+wDwo0l+GPhW4MYkvwG8lmRzVZ1v03cX2vHngG1j\n529tdedaeXG9JGkNW/YIqqoOVNXWqtrOaPHD56vqx4EjwP522H7g6VY+AuxLsiHJDkaLIZ5v04Gv\nJ9ndVu/dNXaOJGmNeie+B/UgcDjJ3cArwJ0AVXUyyWHgFHARuL+q3mzn3Ac8DtwAPNM2SdIaltHH\nRLNnMBjUcDicdjP0DvBbcKvXjL7daIUlOV5Vg6WO81ZHkqQueasjSdfNtYyOHW3JEZQkqUsGlCSp\nSwaUJKlLBpQkqUsGlCSpSwaUJKlLBpQkqUsGlCSpSwaUJKlLBpQkqUsGlCSpSwaUJKlLBpQkqUsG\nlCSpSwaUJKlLBpQkqUsGlCSpSwaUJKlLBpQkqUvrp90ArX7JtFsgaRY5gpIkdcmAkiR1yYCSJHXJ\ngJIkdcmAkiR1yVV8krp0ras/q96Zdmh6lj2CSrItye8lOZXkZJIPt/qbkzyb5KX2eNPYOQeSzCc5\nneT2sfpbk5xo+x5KXJgsSWvdJFN8F4Gfr6pdwG7g/iS7gAeAo1W1EzjantP27QNuAfYADydZ1671\nCHAPsLNteyZolyRpFVh2QFXV+ar6Yiv/GfAisAXYCxxqhx0C7mjlvcCTVfVGVb0MzAO3JdkM3FhV\nx6qqgCfGzpEkrVErskgiyXbgfcBzwKaqOt92vQpsauUtwJmx0862ui2tvLhekrSGTRxQSd4D/Dbw\nkap6fXxfGxGt2EeXSe5NMkwyXFhYWKnLSpI6NFFAJfkWRuH06ar6bKt+rU3b0R4vtPpzwLax07e2\nunOtvLj+barqYFUNqmowNzc3SdMlSZ2bZBVfgEeBF6vqV8Z2HQH2t/J+4Omx+n1JNiTZwWgxxPNt\nOvD1JLvbNe8aO0eStEZN8j2oDwA/AZxI8uVW93HgQeBwkruBV4A7AarqZJLDwClGKwDvr6o323n3\nAY8DNwDPtE2StIalZvTbbYPBoIbD4bSboavgt9p0PczoW9malOR4VQ2WOs5bHUmSumRASZK6ZEBJ\nkrpkQEmSuuTdzHXNXPQg6XpwBCVJ6pIBJUnqkgElSeqSASVJ6pKLJCStCv6J+NXHEZQkqUsGlCSp\nSwaUJKlLBpQkqUsGlCSpSwaUJKlLBpQkqUsGlCSpS35RV96dXFKXHEFJkrpkQEmSuuQUn6Q1yXv3\n9c8RlCSpSwaUJKlLBpQkqUt+BrUKuWxc0mrgCEqS1CVHUJJ0FVz1d/05gpIkdambgEqyJ8npJPNJ\nHph2e3qSXNsmSatBFwGVZB3w74AfAnYB/zzJrum2SpKWz/9YTq6Xz6BuA+ar6g8AkjwJ7AVOTbVV\n18B/YJIm8U6+h8zq52G9BNQW4MzY87PA9y8+KMm9wL3t6f9Kcvo6tG0WbAT+aNqNmFH23WTsv+W7\nbn3X4X+g/+bVHNRLQF2VqjoIHJx2O3qTZFhVg2m3YxbZd5Ox/5bPvltaF59BAeeAbWPPt7Y6SdIa\n1UtA/TdgZ5IdSd4F7AOOTLlNkqQp6mKKr6ouJvkZ4D8B64DHqurklJs1S5z2XD77bjL23/LZd0tI\nzeryDknSqtbLFJ8kSW9hQEmSumRAzYAkjyW5kOSFy+z7+SSVZONY3YF2y6jTSW6/vq3ty5X6LsnP\nJvlqkpNJfnGs3r5rLtd3Sb4vybEkX04yTHLb2D77rkmyLcnvJTnV/o19uNXfnOTZJC+1x5vGzrH/\nFqsqt8434AeA9wMvLKrfxmhhySvAxla3C/gKsAHYAfwPYN20f4ae+g74J8B/Bja0599p3111330O\n+KFW/mHgv9h3l+27zcD7W/mvA7/f+ugXgQda/QPAJ+2/K2+OoGZAVX0B+Ppldn0K+BgwvtJlL/Bk\nVb1RVS8D84xuJbUmXaHvfhp4sKreaMdcaPX23Zgr9F0BN7bye4GvtbJ9N6aqzlfVF1v5z4AXGd0x\nZy9wqB12CLijle2/yzCgZlSSvcC5qvrKol2Xu23UluvWsNnwPcA/SvJckv+a5O+3evtuaR8BfinJ\nGeCXgQOt3r67giTbgfcBzwGbqup82/UqsKmV7b/LMKBmUJJ3Ax8H/s202zKj1gM3A7uBfw0cTjq8\nW1mffhr4aFVtAz4KPDrl9nQtyXuA3wY+UlWvj++r0dye3/P5Jgyo2fS3GM1TfyXJ/2R0a6gvJvku\nvG3U1TgLfLZGngf+ktGNO+27pe0HPtvKv8VfTUPZd4sk+RZG4fTpqrrUZ68l2dz2bwYuTS/bf5dh\nQM2gqjpRVd9ZVdurajujN9z3V9WrjG4RtS/JhiQ7gJ3A81Nsbo9+l9FCCZJ8D/AuRneVtu+W9jXg\nH7fyPwVeamX7bkwbkT8KvFhVvzK26wijkKc9Pj1Wb/8t0sWtjvTNJfkM8EFgY5KzwCeq6rJTK1V1\nMslhRn9L6yJwf1W9ed0a25nL9R3wGPBYWz7958D+Nt1i3425Qt/dA/xqkvXA/6X9+Rv/3b3NB4Cf\nAE4k+XKr+zjwIKMp5bsZrb69E+y/K/FWR5KkLjnFJ0nqkgElSeqSASVJ6pIBJUnqkgElSeqSASVJ\n6pIBJUnq0v8Dnv1t+mGD2hQAAAAASUVORK5CYII=\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "hist_fixed = histogram(heights1, \"fixed_width\", 3)\n", "hist_fixed.plot()\n", "hist_fixed" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### \"Human\" bins\n", "\n", "The width and alignment of bins is guessed from the data with an approximate number of bins as (optional) parameter." ] }, { "cell_type": "code", "execution_count": 9, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/plain": [ "Histogram1D(bins=(19,), total=100000, dtype=int64)" ] }, "execution_count": 9, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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\nt513kpAkdcmAkiR1yYCSJHXJgJIkdcmAkiR1yYCSJHXJgJIkdcmAkiR1yYCSJHXJgJIkdcmAkiR1\nyYCSJHXJgJIkdcmAkiR1yYCSJHXJgJIkdcmAkiR1yYCSJHXJgJIkdWlRAZXk2SSPJNmXZNhq5ya5\nL8lT7e85Y9tfn2Q6yZNJLhurb27HmU5yU5Ispl+SpMm3FGdQv11Vm6pq0B5fB9xfVRuB+9tjklwE\nbAcuBrYCn01yRtvnZuBqYGNbti5BvyRJE+xXcYlvG7CrtXcBl4/V76yqI1X1DDANbEmyBjirqvZU\nVQG3j+2jFSJZ2kXS5FtsQBXwjSR7k+xotQuq6lBr/xC4oLXXAvvH9j3Qamtbe279lyTZkWSYZDgz\nM7PIrkuSerZqkfu/paoOJnkdcF+S74+vrKpKUot8jvHj7QR2AgwGgyU7riSpP4s6g6qqg+3vC8BX\ngS3A8+2yHe3vC23zg8C6sd0vbLWDrT23LklawRYcUEl+LclrZ9vA7wGPAruBK9tmVwL3tPZuYHuS\n1Uk2MJoM8WC7HHg4ySVt9t4VY/tIklaoxVziuwD4apsRvgr4YlX9ryTfBe5KchXwHPAegKp6LMld\nwOPAUeDaqnqpHesa4DbgTODetkiSVrCMJs5NnsFgUMPhcLm7oSXizDu9nAl9m9IJJNk79tWkE/JO\nEpKkLhlQkqQuGVCSpC4ZUJKkLhlQkqQuGVCSpC4ZUJKkLhlQkqQuGVCSpC4t9m7mkvQrt5R3GvGu\nFJPDMyhJUpcMKElSlwwoSVKXDChJUpcMKElSlwwoSVKXDChJUpcMKElSlwwoSVKXDChJUpcWHFBJ\n1iX5VpLHkzyW5IOt/vEkB5Psa8s7xva5Psl0kieTXDZW35zkkbbupmQpb2wiSZpEi7kX31Hgw1X1\nUJLXAnuT3NfW3VhVfzG+cZKLgO3AxcA/B76R5I1V9RJwM3A18ADwNWArcO8i+iZJmnALPoOqqkNV\n9VBr/xR4Alj7MrtsA+6sqiNV9QwwDWxJsgY4q6r2VFUBtwOXL7RfkqTTw5J8BpVkPfAmRmdAAB9I\n8nCSW5Oc02prgf1jux1otbWtPbd+vOfZkWSYZDgzM7MUXZckdWrRAZXkNcCXgQ9V1WFGl+teD2wC\nDgGfXuxzzKqqnVU1qKrB1NTUUh1WktShRQVUklcxCqcvVNVXAKrq+ap6qap+DvwlsKVtfhBYN7b7\nha12sLXn1iVJK9hiZvEFuAV4oqo+M1ZfM7bZu4BHW3s3sD3J6iQbgI3Ag1V1CDic5JJ2zCuAexba\nL0nS6WExs/h+C/hD4JEk+1rtI8B7k2wCCngWeB9AVT2W5C7gcUYzAK9tM/gArgFuA85kNHvPGXyS\ntMKlJvT3jweDQQ2Hw+Xuxormt9U0iSb0Le+0kmRvVQ3m2847SUiSumRASZK6ZEBJkrpkQEmSumRA\nSZK6ZEBJkrpkQEmSumRASZK6tJg7SUjSxFnqL5j7xd9fHc+gJEldMqAkSV0yoCRJXTKgJEldMqAk\nSV0yoCRJXXKa+QrjbzhJmhSeQUmSumRASZK6ZEBJkrrkZ1CStAhL+bmut006VjdnUEm2JnkyyXSS\n65a7P5Kk5dXFGVSSM4D/DvwucAD4bpLdVfX48vZs+TnrTtJK1csZ1BZguqp+UFX/D7gT2LbMfZKk\nV1SydMvpoIszKGAtsH/s8QHg387dKMkOYEd7eCTJo69A30435wN/t9ydmDCO2cI4bqduycas85D6\nFyezUS8BdVKqaiewEyDJsKoGy9ylieO4nTrHbGEct1PnmB2rl0t8B4F1Y48vbDVJ0grVS0B9F9iY\nZEOSVwPbgd3L3CdJ0jLq4hJfVR1N8p+B/w2cAdxaVY/Ns9vOX33PTkuO26lzzBbGcTt1jtmYlN8M\nkyR1qJdLfJIkHcOAkiR1qduASnJrkhfGv+uU5FNJvp/k4SRfTfLrY+uub7dJejLJZcvT6+V1vDEb\nW/fhJJXk/LHaih8zOPG4JflA+/f2WJJPjtVX/Lid4L/PTUn2JNmXZJhky9g6xyxZl+RbSR5v/6Y+\n2OrnJrkvyVPt7zlj+6zscauqLhfgbcCbgUfHar8HrGrtG4AbWvsi4HvAamAD8DRwxnK/hh7GrNXX\nMZqA8hxwvmN2Uv/Wfhv4BrC6PX6d4zbvmH0d+P3WfgfwfxyzY8ZsDfDm1n4t8DdtbD4JXNfq1/m+\n9oul2zOoqvoO8OKc2ter6mh7uIfR96VgdFukO6vqSFU9A0wzun3SinK8MWtuBP4cGJ8R45g1Jxi3\nPwE+UVVH2jYvtLrjxgnHrICzWvts4G9b2zEDqupQVT3U2j8FnmB0F51twK622S7g8tZe8ePWbUCd\nhD8G7m3t490qae0r3qMOJdkGHKyq781Z5Zi9vDcCb03yQJJvJ/k3re64ndiHgE8l2Q/8BXB9qztm\ncyRZD7wJeAC4oKoOtVU/BC5o7RU/bhMZUEk+ChwFvrDcfelZkn8KfAT4r8vdlwm0CjgXuAT4L8Bd\nSed3N1t+fwL8aVWtA/4UuGWZ+9OlJK8Bvgx8qKoOj6+r0bU9v/vTTFxAJfkj4A+A/9T+xwRvlXQi\n/5LRtevvJXmW0bg8lOSf4ZjN5wDwlRp5EPg5oxt5Om4ndiXwldb+a35xOcoxa5K8ilE4faGqZsfq\n+SRr2vo1wOzl5BU/bhMVUEm2Mvos5Z1V9bOxVbuB7UlWJ9kAbAQeXI4+9qSqHqmq11XV+qpaz+hN\n981V9UMcs/n8T0YTJUjyRuDVjO4y7bid2N8C/661fwd4qrUdM6Cdgd8CPFFVnxlbtZtRuNP+3jNW\nX9njttyzNE60AHcAh4B/YPTGehWjDwn3A/va8rmx7T/KaJbLk7SZRCttOd6YzVn/LG0Wn2M277+1\nVwN/BTwKPAT8juM275i9BdjLaObZA8Bmx+yYMXsLo8t3D4+9h70DOA+4n1GgfwM413EbLd7qSJLU\npYm6xCdJWjkMKElSlwwoSVKXDChJUpcMKElSlwwoSVKXDChJUpf+P+Kg/8MTZlWmAAAAAElFTkSu\nQmCC\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "human = histogram(heights1, \"human\", 15)\n", "human.plot()\n", "human" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Astropy binning\n", "\n", "Astropy includes its histogramming tools. If this package is available, we reuse its binning\n", "methods. These include:\n", "\n", "* Bayesian blocks\n", "* Knuth\n", "* Freedman\n", "* Scott\n", "\n", "See for more details." ] }, { "cell_type": "code", "execution_count": 10, "metadata": { "collapsed": false }, "outputs": [ { "data": { "image/png": "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\n/SNJTiQ50N3e3bfNjUmOJjmS5LJBvgBJ0miazaWOngI+WFX3Jnk5sD/JHd26P6yqT/R3TrIR2Apc\nArwKuDPJxVV1djELlySNthmPoKrqZFXd2y3/GLgPWPsCm2wBdlXVmap6EDgKbF6MYiVJy8ecPoNK\nchHweuDurunaJN9OcluSC7q2tcCxvs2OM0WgJdmeZCLJxOnTp+dcuCRptM06oJK8DPgycH1VPQF8\nGng1sAk4Cdwylyeuqh1VNV5V42NjY3PZVJK0DMwqoJKcRy+cPl9VXwGoqseq6mxVPQ18hmdP450A\n1vVtfmHXJknSrM1mFl+AzwL3VdUn+9rX9HV7D3CwW94DbE2yMsl6YAOwb/FKliQtB7OZxfcrwG8A\n30lyoGv7XeCqJJuAAh4CPgBQVYeS7AYO05sBeI0z+CRJczVjQFXVN4Gpfq/0z19gm5uAmxZQlyRp\nmfNKEpKkJhlQkqQmGVCSpCYZUJKkJhlQkqQmGVCSpCYZUJKkJhlQkqQmGVCSpCYZUJKkJhlQkqQm\nGVCSpCYZUJKkJhlQkqQmGVCSpCYZUJKkJs3mF3UljbBM9XOki6hqsPvX6PIISpLUJANKktQkA0qS\n1CQDSpLUJANKktQkA0qS1CQDSpLUpBkDKsm6JHclOZzkUJLruvZVSe5I8kB3f0HfNjcmOZrkSJLL\nBvkCJEmjaTZHUE8BH6yqjcAbgWuSbARuAPZW1QZgb/eYbt1W4BLgcuDWJCsGUbwkaXTNGFBVdbKq\n7u2WfwzcB6wFtgA7u247gSu65S3Arqo6U1UPAkeBzYtduCRptM3pM6gkFwGvB+4GVlfVyW7Vo8Dq\nbnktcKxvs+Nd2+R9bU8ykWTi9OnTcyxbkjTqZh1QSV4GfBm4vqqe6F9XVQXM6YpbVbWjqsaranxs\nbGwum0qSloFZBVSS8+iF0+er6itd82NJ1nTr1wCnuvYTwLq+zS/s2iRJmrXZzOIL8Fngvqr6ZN+q\nPcC2bnkbcHtf+9YkK5OsBzYA+xavZC1VyeBukkbPbH5u41eA3wC+k+RA1/a7wM3A7iRXAw8DVwJU\n1aEku4HD9GYAXlNVZxe9cknSSJsxoKrqm8B071HfNs02NwE3LaAuSdIy55UkJElNMqAkSU0yoCRJ\nTTKgJElNMqAkSU0yoCRJTTKgJElNMqAkSU0yoCRJTTKgJElNMqAkSU0yoCRJTTKgJElNMqAkSU0y\noCRJTTKgJElNMqAkSU0yoCRJTTKgJElNMqAkSU0yoCRJTTKgJElNMqAkSU0yoCRJTTKgJElNmjGg\nktyW5FSSg31tH0lyIsmB7vbuvnU3Jjma5EiSywZVuCRptM3mCOpzwOVTtP9hVW3qbn8OkGQjsBW4\npNvm1iQrFqtYSdLyMWNAVdU3gMdnub8twK6qOlNVDwJHgc0LqE+StEwt5DOoa5N8uzsFeEHXthY4\n1tfneNf2PEm2J5lIMnH69OkFlCFJGkXzDahPA68GNgEngVvmuoOq2lFV41U1PjY2Ns8yJEmjal4B\nVVWPVdXZqnoa+AzPnsY7Aazr63ph1yZJ0pzMK6CSrOl7+B7gmRl+e4CtSVYmWQ9sAPYtrERJ0nJ0\n7kwdknwRuBR4RZLjwO8DlybZBBTwEPABgKo6lGQ3cBh4Crimqs4OpnRJ0ihLVQ27BsbHx2tiYmLY\nZWjAkmFXoGFo4E+MGpNkf1WNz9TPK0lIkppkQEmSmmRASZKaZEBJkppkQEmSmmRASZKaZEBJkppk\nQEmSmmRASZKaZEBJkppkQEmSmmRASZKaZEBJkppkQEmSmmRASZKaZEBJkppkQEmSmmRASZKaZEBJ\nkpp07rALkDTakhf/Oate/OfU4vMISpLUJANKktQkA0qS1CQDSpLUpBkDKsltSU4lOdjXtirJHUke\n6O4v6Ft3Y5KjSY4kuWxQhUuSRttsjqA+B1w+qe0GYG9VbQD2do9JshHYClzSbXNrkhWLVq0kadmY\nMaCq6hvA45OatwA7u+WdwBV97buq6kxVPQgcBTYvUq2SpGVkvp9Bra6qk93yo8DqbnktcKyv3/Gu\n7XmSbE8ykWTi9OnT8yxDkjSqFjxJoqoKmPPX4qpqR1WNV9X42NjYQsvQAiWDv0nSXMw3oB5Lsgag\nuz/VtZ8A1vX1u7BrkyRpTuYbUHuAbd3yNuD2vvatSVYmWQ9sAPYtrERJ0nI047X4knwRuBR4RZLj\nwO8DNwO7k1wNPAxcCVBVh5LsBg4DTwHXVNXZAdUuSRphMwZUVV01zaq3TdP/JuCmhRQlSZJXkpAk\nNcmAkiQ1yYCSJDXJgJIkNcmAkiQ1yYCSJDXJgJIkNcmAkiQ1yYCSJDXJgJIkNcmAkiQ1yYCSJDXJ\ngJIkNcmAkiQ1yYCSJDXJgJIkNcmAkiQ1yYCSJDXJgJIkNcmAkiQ1yYCSJDXJgJIkNcmAkiQ1yYCS\n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\nkpr0/wEb4cSWOooZFQAAAABJRU5ErkJggg==\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "image/png": "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\nUJKkJhlQkqQmGVCSpCYZUJKkJhlQkqQmGVCSpCYZUJKkJhlQkqQmGVCSpCYZUJKkJhlQkqQmzRpQ\nSe5OcjbJY31ttyU5leRwd3tX375dSY4nOZbk+lEVLkkab4OMoP4YuGGG9o9X1ebu9jmAJJuAbcB1\n3Tl3JlkxrGIlScvHrAFVVQ8BXx/w+bYCe6vqXFU9DRwHtiygPknSMrWQz6Den+RL3SXAq7q2NcCJ\nvmNOdm3/TJIdSaaSTE1PTy+gDEnSOJpvQH0CeAOwGTgNfHSuT1BVu6tqsqomJyYm5lmGJGlczSug\nqupMVV2oqheBT/LyZbxTwLq+Q9d2bZIkzcm8AirJ6r6H7wZemuG3H9iWZGWSDcBG4ODCSpQkLUdX\nzHZAknuAtwHXJDkJfBh4W5LNQAHPAO8DqKojSfYBR4HzwM6qujCa0iVJ4yxVtdg1MDk5WVNTU4td\nhi6TZLEr0OXSwD8valCSQ1U1OdtxriQhSWqSASVJatKsn0FJg/LSnaRhcgQlSWqSASVJapIBJUlq\nkgElSWqSASVJapIBJUlqktPMJY3MXL564KoTupgjKElSkwwoSVKTDChJUpMMKElSkwwoSVKTDChJ\nUpMMKElSkwwoSVKTDChJUpMMKElSkwwoSVKTXItPUhMGXbfPNfuWj1lHUEnuTnI2yWN9bVcnOZDk\nye7+qr59u5IcT3IsyfWjKlySNN4GucT3x8ANF7XdCjxQVRuBB7rHJNkEbAOu6865M8mKoVUrSVo2\nZg2oqnoI+PpFzVuBPd32HuDGvva9VXWuqp4GjgNbhlSrJGkZme8kiVVVdbrbfg5Y1W2vAU70HXey\na/tnkuxIMpVkanp6ep5lSJLG1YJn8VVVAXP+2LKqdlfVZFVNTkxMLLQMSdKYmW9AnUmyGqC7P9u1\nnwLW9R23tmvTEpUMfpOkYZpvQO0Htnfb24H7+tq3JVmZZAOwETi4sBIlScvRrN+DSnIP8DbgmiQn\ngQ8DdwD7ktwMPAvcBFBVR5LsA44C54GdVXVhRLVLksbYrAFVVe+5xK53XOL424HbF1KUJEkudSRJ\napIBJUlqkgElSWqSASVJapIBJUlqkj+3IWlJ8Wc5lg9HUJKkJhlQkqQmGVCSpCYZUJKkJjlJYply\n9XFJrXMEJUlqkgElSWqSASVJapIBJUlqkgElSWqSASVJapIBJUlqkgElSWqSX9SVNJZc9XzpcwQl\n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\nvli893pGAjEAAAAASUVORK5CYII=\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "image/png": "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\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "image/png": "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\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "middle_sized = np.random.normal(180, 6, 5000)\n", "\n", "for n in [\"blocks\", \"scott\", \"knuth\", \"freedman\"]:\n", " algo = \"{0}\".format(n)\n", " hist = histogram(middle_sized, algo, name=algo)\n", " hist.plot(density=True)" ] } ], "metadata": { "anaconda-cloud": {}, "kernelspec": { "display_name": "Python [default]", "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.5.2" } }, "nbformat": 4, "nbformat_minor": 0 }