{ "cells": [ { "cell_type": "markdown", "id": "42151a7c-8b16-453c-9a5c-ae0e7dffe769", "metadata": {}, "source": [ "# Binning" ] }, { "cell_type": "code", "execution_count": 1, "id": "8a2db5fc", "metadata": {}, "outputs": [ { "data": { "image/png": "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5FRX06ZNw9GjR7Fq1SqlQ7GZ8+fPY8aMGfj666/h6empdDh2IYoievXqhbfeegs9e/bE448/jilTpmDp0qVKh2YT3377Lb7++musXLkSBw8exBdffIEFCxbgiy++UCQebr9QD5cvX8bVq1drbNO6dWts374dI0aMQHZ2ttV27+3atcPkyZPx4osv2jvUBqnr/e3cuRO33347tm/fjkGDBlle69+/P4YPH44333zT3qE2WF3v8d5778Uvv/wCQRAsz5tMJqjVajz44IOK/YGtTV3vT6fTAQAuXbqEIUOGYMCAAYiLi4NK5Zr/3iktLYW3tze+++47q1l7Dz/8MK5fv46ffvpJueBsaPr06fjpp5+wbds2REVFKR2OzaxduxZ333031Gq15TmTyQRBEKBSqVBSUmL1mitq2bIl7rjjDnz66aeW5z766CO88cYbuHjxooKR2UZERARefPFFTJs2zfLcG2+8gRUrVihSPWW3VD0EBwcjODi41naFhYUAUOmLQqVSWaoezqiu99e7d294eHjg5MmTluTGYDAgNTUVLVu2tHeYN6Wu9/jBBx/gjTfesBxfunQJsbGxWL16Nfr372/PEG9KXe8PMFdshg4daqm8uWpiAwA6nQ69e/dGfHy8JbkRRRHx8fGYPn26ssHZgCRJeOqpp/Djjz8iISHBrRIbABg2bBiOHDli9dwjjzyCDh064IUXXnD5xAYABg4cWGn6/qlTp5z+78y6KiwsrPR3iFqtVu47T5FhzG7u8uXLUtOmTaV77rlHSkpKkk6ePCk9++yzklarlZKSkpQOzyZmzJghNW/eXNq4caN04sQJafLkyVJISIh07do1pUOzi5SUFLeaLXXhwgWpbdu20rBhw6QLFy5I6enploerWrVqleTh4SHFxcVJf/31l/T4449LAQEBUkZGhtKh3bQnn3xS8vf3lxISEqz+XxUWFiodmt2422ypffv2SRqNRnrzzTel06dPS19//bXk7e0trVixQunQbOLhhx+WmjdvLq1bt05KSUmRfvjhBykoKEh6/vnnFYmHyY2d7N+/XxoxYoQUGBgo6fV6acCAAdL69euVDstmSktLpWeeeUYKCQmR9Hq9NHz4cOno0aNKh2U37pbcLF++XAJQ5cOVLV68WIqMjJR0Op3Ur18/ac+ePUqHZBPV/b9avny50qHZjbslN5IkSb/88ovUpUsXycPDQ+rQoYO0bNkypUOymdzcXGnGjBlSZGSk5OnpKbVu3Vp6+eWXpZKSEkXi4ZgbIiIiciuu28lOREREVAUmN0RERORWmNwQERGRW2FyQ0RERG6FyQ0RERG5FSY3RERE5FaY3BAREZFbYXJDREREboXJDRE5jSFDhmDmzJkNPj81NRWCICApKclmMRGR6+HGmUTkNH744QdotVqlwyAiF8fkhoicRmBgoNIhEJEbYLcUETmN8t1SrVq1wltvvYVHH30Uer0ekZGRWLZsmVX7ffv2oWfPnvD09ESfPn1w6NChStc8evQoRo0aBV9fX4SGhuKhhx7ClStXAAAJCQnQ6XTYvn27pf0777yDkJAQZGZm2u9GiciumNwQkdNauHChJWmZOnUqnnzySZw8eRIAkJ+fj7vuugudOnVCYmIi5syZg2effdbq/OvXr+P2229Hz549ceDAAWzYsAGZmZm49957AZQlUw899BBycnJw6NAh/Oc//8Gnn36K0NBQh98vEdkGu6WIyGmNHj0aU6dOBQC88MILWLRoEbZs2YLo6GisXLkSoijis88+g6enJzp37owLFy7gySeftJy/ZMkS9OzZE2+99Zbluc8//xwRERE4deoU2rdvjzfeeAObN2/G448/jqNHj+Lhhx/G3/72N4ffKxHZDpMbInJa3bp1s/wsCALCwsKQlZUFADh+/Di6desGT09PS5uYmBir8w8fPowtW7bA19e30rWTk5PRvn176HQ6fP311+jWrRtatmyJRYsW2eluiMhRmNwQkdOqOHNKEASIoljn8/Pz8zFmzBjMnz+/0mvh4eGWn3ft2gUAuHbtGq5duwYfH58GRkxEzoBjbojIJXXs2BF//vkniouLLc/t2bPHqk2vXr1w7NgxtGrVCm3btrV6yAlMcnIy/v3vf+OTTz5B//798fDDD9crgSIi58Pkhohc0gMPPABBEDBlyhT89ddfWL9+PRYsWGDVZtq0abh27Rruv/9+7N+/H8nJydi4cSMeeeQRmEwmmEwmTJgwAbGxsXjkkUewfPly/Pnnn1i4cKFCd0VEtsDkhohckq+vL3755RccOXIEPXv2xMsvv1yp+6lZs2bYuXMnTCYTRowYga5du2LmzJkICAiASqXCm2++iXPnzuHjjz8GYO6qWrZsGV555RUcPnxYidsiIhsQJEmSlA6CiIiIyFZYuSEiIiK3wuSGiIiI3AqTGyIiInIrTG6IiIjIrTC5ISIiIrfC5IaIiIjcCpMbIiIicitMboiIiMitMLkhIiIit8LkhoiIiNwKkxsiIiJyK/8PCUGzRej90TwAAAAASUVORK5CYII=", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "import nexus as nx\n", "import numpy as np\n", "import matplotlib.pyplot as plt\n", "\n", "def gauss(x, offset):\n", " return np.exp(-1/2*(x-offset)**2/1*2)\n", "\n", "axis = np.linspace(-8, 8, 1001)\n", "\n", "dat = gauss(axis, -4)\n", "\n", "bin_value = 3\n", "\n", "end_point = False\n", "\n", "bin_dat_mean = nx.data.Binning(dat, bin_value, \"mean\", end_point)\n", "\n", "bin_dat_sum = nx.data.Binning(dat, bin_value, \"sum\", end_point)\n", "\n", "axis_mean = nx.data.Binning(axis, bin_value, \"mean\", end_point)\n", "\n", "plt.plot(axis, dat, marker = \"o\", label = \"dat\")\n", "plt.plot(axis_mean, bin_dat_mean, label = \"dat binned mean\")\n", "plt.plot(axis_mean, bin_dat_sum, label = \"dat binned sum\")\n", "\n", "plt.xlabel('index')\n", "plt.ylabel('value')\n", "plt.legend()\n", "plt.show()" ] }, { "cell_type": "code", "execution_count": null, "id": "fcbf2e0d", "metadata": {}, "outputs": [], "source": [] } ], "metadata": { "kernelspec": { "display_name": "Python 3 (ipykernel)", "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.12.0" } }, "nbformat": 4, "nbformat_minor": 5 }