{
 "cells": [
  {
   "cell_type": "markdown",
   "id": "634a8cd3",
   "metadata": {},
   "source": [
    "# gr002_errors\n",
    "[gr03_err2gr.C](https://root.cern/doc/master/gerrors2_8C.html) tutorial\n",
    "\n",
    "See the [TGraphErrors documentation](https://root.cern/doc/master/classTGraphErrors.html)\n",
    "\n",
    "\n",
    "\n",
    "**Author:** Rene Brun, Jamie Gooding  \n",
    "<i><small>This notebook tutorial was automatically generated with <a href= \"https://github.com/root-project/root/blob/master/documentation/doxygen/converttonotebook.py\">ROOTBOOK-izer</a> from the macro found in the ROOT repository  on Tuesday, May 19, 2026 at 08:37 PM.</small></i>"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 1,
   "id": "ed2f11e7",
   "metadata": {
    "collapsed": false,
    "execution": {
     "iopub.execute_input": "2026-05-19T20:37:41.305253Z",
     "iopub.status.busy": "2026-05-19T20:37:41.305121Z",
     "iopub.status.idle": "2026-05-19T20:37:42.456246Z",
     "shell.execute_reply": "2026-05-19T20:37:42.455535Z"
    }
   },
   "outputs": [],
   "source": [
    "import numpy as np\n",
    "import ROOT\n",
    "\n",
    "c1 = ROOT.TCanvas(\"c1\", \"A Simple Graph with error bars\", 200, 10, 700, 500)\n",
    "\n",
    "c1.SetGrid()\n",
    "c1.GetFrame().SetBorderSize(12)"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "f3fada85",
   "metadata": {},
   "source": [
    " We will use the constructor requiring: the number of points, arrays containing the x-and y-axis values, and arrays with the x- andy-axis errors"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "id": "db5695fd",
   "metadata": {
    "collapsed": false,
    "execution": {
     "iopub.execute_input": "2026-05-19T20:37:42.459257Z",
     "iopub.status.busy": "2026-05-19T20:37:42.459065Z",
     "iopub.status.idle": "2026-05-19T20:37:42.584091Z",
     "shell.execute_reply": "2026-05-19T20:37:42.583253Z"
    }
   },
   "outputs": [],
   "source": [
    "n = 10\n",
    "x = np.array([-0.22, 0.05, 0.25, 0.35, 0.5, 0.61, 0.7, 0.85, 0.89, 0.95])\n",
    "y = np.array([1, 2.9, 5.6, 7.4, 9, 9.6, 8.7, 6.3, 4.5, 1])\n",
    "ex = np.array([0.05, 0.1, 0.07, 0.07, 0.04, 0.05, 0.06, 0.07, 0.08, 0.05])\n",
    "ey = np.array([0.8, 0.7, 0.6, 0.5, 0.4, 0.4, 0.5, 0.6, 0.7, 0.8])"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "77c1e13e",
   "metadata": {},
   "source": [
    "If all x-axis errors should zero, just provide a single 0 in place of ex"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "id": "0e492cb8",
   "metadata": {
    "collapsed": false,
    "execution": {
     "iopub.execute_input": "2026-05-19T20:37:42.586302Z",
     "iopub.status.busy": "2026-05-19T20:37:42.586167Z",
     "iopub.status.idle": "2026-05-19T20:37:42.709252Z",
     "shell.execute_reply": "2026-05-19T20:37:42.708084Z"
    }
   },
   "outputs": [],
   "source": [
    "gr = ROOT.TGraphErrors(n, x, y, ex, ey)\n",
    "\n",
    "gr.SetTitle(\"TGraphErrors Example\")\n",
    "gr.SetMarkerColor(4)\n",
    "gr.SetMarkerStyle(21)"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "e110c91b",
   "metadata": {},
   "source": [
    "To draw in a new/empty canvas or pad, include the option \"A\" so that the axes are drawn (leave it out if the graph is to be drawn on top of an existing plot"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "id": "af378799",
   "metadata": {
    "collapsed": false,
    "execution": {
     "iopub.execute_input": "2026-05-19T20:37:42.710886Z",
     "iopub.status.busy": "2026-05-19T20:37:42.710716Z",
     "iopub.status.idle": "2026-05-19T20:37:42.906154Z",
     "shell.execute_reply": "2026-05-19T20:37:42.905062Z"
    }
   },
   "outputs": [
    {
     "data": {
      "text/html": [
       "\n",
       "\n",
       "<div id=\"root_plot_1779223062894\" style=\"width: 700px; height: 500px; position: relative\">\n",
       "</div>\n",
       "\n",
       "</div>\n",
       "<script>\n",
       "   function process_root_plot_1779223062894() {\n",
       "      function execCode(Core) {\n",
       "         Core.settings.HandleKeys = false;\n",
       "         \n",
       "Core.unzipJSON(20565,'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').then(json => {\n",
       "   const obj = Core.parse(json);\n",
       "   Core.draw('root_plot_1779223062894', obj, '');\n",
       "});\n",
       "\n",
       "      }\n",
       "      const servers = ['/static/', 'https://root.cern/js/7.11.0/', 'https://jsroot.gsi.de/7.11.0/'],\n",
       "            path = 'build/jsroot';\n",
       "      if (typeof JSROOT !== 'undefined')\n",
       "         execCode(JSROOT);\n",
       "      else if (typeof requirejs !== 'undefined') {\n",
       "         servers.forEach((s,i) => { servers[i] = s + path; });\n",
       "         requirejs.config({ paths: { 'jsroot' : servers } })(['jsroot'],  execCode);\n",
       "      } else {\n",
       "         const config = document.getElementById('jupyter-config-data');\n",
       "         if (config)\n",
       "            servers[0] = (JSON.parse(config.innerHTML || '{}')?.baseUrl || '/') + 'static/';\n",
       "         else\n",
       "            servers.shift();\n",
       "         function loadJsroot() {\n",
       "            return !servers.length ? 0 : import(servers.shift() + path + '.js').catch(loadJsroot).then(() => execCode(JSROOT));\n",
       "         }\n",
       "         loadJsroot();\n",
       "      }\n",
       "   }\n",
       "   process_root_plot_1779223062894();\n",
       "</script>\n"
      ],
      "text/plain": [
       "<IPython.core.display.HTML object>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "gr.Draw(\"ALP\")\n",
    "\n",
    "c1.Update()"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "b71d0efe",
   "metadata": {},
   "source": [
    "Draw all canvases "
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 5,
   "id": "093d6095",
   "metadata": {
    "collapsed": false,
    "execution": {
     "iopub.execute_input": "2026-05-19T20:37:42.907714Z",
     "iopub.status.busy": "2026-05-19T20:37:42.907548Z",
     "iopub.status.idle": "2026-05-19T20:37:43.023175Z",
     "shell.execute_reply": "2026-05-19T20:37:43.022389Z"
    }
   },
   "outputs": [
    {
     "data": {
      "text/html": [
       "\n",
       "\n",
       "<div id=\"root_plot_1779223063019\" style=\"width: 700px; height: 500px; position: relative\">\n",
       "</div>\n",
       "\n",
       "</div>\n",
       "<script>\n",
       "   function process_root_plot_1779223063019() {\n",
       "      function execCode(Core) {\n",
       "         Core.settings.HandleKeys = false;\n",
       "         \n",
       "Core.unzipJSON(20565,'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').then(json => {\n",
       "   const obj = Core.parse(json);\n",
       "   Core.draw('root_plot_1779223063019', obj, '');\n",
       "});\n",
       "\n",
       "      }\n",
       "      const servers = ['/static/', 'https://root.cern/js/7.11.0/', 'https://jsroot.gsi.de/7.11.0/'],\n",
       "            path = 'build/jsroot';\n",
       "      if (typeof JSROOT !== 'undefined')\n",
       "         execCode(JSROOT);\n",
       "      else if (typeof requirejs !== 'undefined') {\n",
       "         servers.forEach((s,i) => { servers[i] = s + path; });\n",
       "         requirejs.config({ paths: { 'jsroot' : servers } })(['jsroot'],  execCode);\n",
       "      } else {\n",
       "         const config = document.getElementById('jupyter-config-data');\n",
       "         if (config)\n",
       "            servers[0] = (JSON.parse(config.innerHTML || '{}')?.baseUrl || '/') + 'static/';\n",
       "         else\n",
       "            servers.shift();\n",
       "         function loadJsroot() {\n",
       "            return !servers.length ? 0 : import(servers.shift() + path + '.js').catch(loadJsroot).then(() => execCode(JSROOT));\n",
       "         }\n",
       "         loadJsroot();\n",
       "      }\n",
       "   }\n",
       "   process_root_plot_1779223063019();\n",
       "</script>\n"
      ],
      "text/plain": [
       "<IPython.core.display.HTML object>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "%jsroot on\n",
    "from ROOT import gROOT \n",
    "gROOT.GetListOfCanvases().Draw()"
   ]
  }
 ],
 "metadata": {
  "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.12.12"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 5
}
