Skip to content

Instantly share code, notes, and snippets.

@jGaboardi
Last active October 12, 2022 14:55
Show Gist options
  • Save jGaboardi/5639e9b475a78e1d67dc6a19ad0bcda0 to your computer and use it in GitHub Desktop.
Save jGaboardi/5639e9b475a78e1d67dc6a19ad0bcda0 to your computer and use it in GitHub Desktop.
hexbin_plot_error
Display the source blob
Display the rendered blob
Raw
{
"cells": [
{
"metadata": {
"ExecuteTime": {
"start_time": "2022-10-12T14:54:28.700694Z",
"end_time": "2022-10-12T14:54:28.739093Z"
},
"trusted": true
},
"cell_type": "code",
"source": "%config InlineBackend.figure_format = \"retina\"\n%load_ext watermark\n%watermark",
"execution_count": 1,
"outputs": [
{
"output_type": "stream",
"text": "Last updated: 2022-10-12T10:54:28.724694-04:00\n\nPython implementation: CPython\nPython version : 3.10.6\nIPython version : 8.5.0\n\nCompiler : Clang 13.0.1 \nOS : Darwin\nRelease : 21.6.0\nMachine : x86_64\nProcessor : i386\nCPU cores : 8\nArchitecture: 64bit\n\n",
"name": "stdout"
}
]
},
{
"metadata": {
"ExecuteTime": {
"start_time": "2022-10-12T14:54:28.745961Z",
"end_time": "2022-10-12T14:54:29.117393Z"
},
"trusted": true
},
"cell_type": "code",
"source": "import geopandas\nimport pandas\nfrom shapely.geometry import Point, Polygon\n%watermark -w\n%watermark -iv",
"execution_count": 2,
"outputs": [
{
"output_type": "stream",
"text": "Watermark: 2.3.1\n\ngeopandas: 0.11.1\njson : 2.0.9\npandas : 1.5.0\n\n",
"name": "stdout"
}
]
},
{
"metadata": {
"ExecuteTime": {
"start_time": "2022-10-12T14:54:29.121492Z",
"end_time": "2022-10-12T14:54:29.648615Z"
},
"trusted": true
},
"cell_type": "code",
"source": "xs = list(range(3))\nys = list(range(3))\n\npoints = [Point(x,y) for x,y in zip(xs, ys)]\nys.reverse()\npoints += [Point(x,y) for x,y in zip(xs, ys)]\n\ngdf = geopandas.GeoDataFrame(geometry=points)\ngdf[\"x\"] = gdf.geometry.map(lambda pt: pt.x)\ngdf[\"y\"] = gdf.geometry.map(lambda pt: pt.y)\n\ngdf.plot()",
"execution_count": 3,
"outputs": [
{
"output_type": "execute_result",
"execution_count": 3,
"data": {
"text/plain": "<AxesSubplot: >"
},
"metadata": {}
},
{
"output_type": "display_data",
"data": {
"text/plain": "<Figure size 640x480 with 1 Axes>",
"image/png": "iVBORw0KGgoAAAANSUhEUgAAA1wAAAM6CAYAAACVSEKDAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjYuMCwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy89olMNAAAACXBIWXMAAB7CAAAewgFu0HU+AABbTklEQVR4nO39e5BX9Z0n/j8bsEXuigZESESJimPiGAXjIFEyA8SIXBIhYYgGS6ecGtmEGlPOxKyou7qFWXXibFWyGojEGAKan0MMZJXRWvESHNBklHiboDICIhHkJvdL//7w270gNH2h31y6H4+qrnrT531e7/eHnBzPk3M+71NRVVVVFQAAAJpcq0M9AQAAgOZK4AIAAChE4AIAAChE4AIAAChE4AIAAChE4AIAAChE4AIAAChE4AIAAChE4AIAAChE4AIAAChE4AIAAChE4AIAAChE4AIAAChE4AIAAChE4AIAAChE4AIAACikzaGeAP/Pli1bsmjRoiTJCSeckDZt/M8DAAAHw44dO/L+++8nST7zmc+kbdu2TVLXFf1hZNGiRenfv/+hngYAALRoCxYsSL9+/ZqklkcKAQAACnGH6zBywgkn1LQXLFiQE0888RDOBgAAWo4VK1bUPG22+3X5gRK4DiO7f2frxBNPTM+ePQ/hbAAAoGVqyrUUPFIIAABQiMAFAABQiMAFAABQiMAFAABQiMAFAABQiMAFAABQiMAFAABQiMAFAABQiMAFAABQiMAFAABQiMAFAABQiMAFAABQiMAFAABQiMAFAABQiMAFAABQiMAFAABQiMAFAABQiMAFAABQiMAFAABQiMAFAABQiMAFAABQSJtDPQEOPxu2bM9767Zk47adaV/ZOt07t03Htkcd6mkBANBMNefrz6KB63e/+10ee+yxPPPMM/nDH/6QP/3pTznqqKPSo0eP/MVf/EWuvvrqDBw4sEnHnDFjRu6///68/PLLWbNmTbp3756BAwfmuuuuy+c///l61Vi9enX++Z//ObNmzcqSJUtSVVWV3r17Z+TIkfnWt76Vrl27NumcDwdVVVWZ/9bq/Gz+f2buqyuzc1dVzbbWrSoy9M+65Ruf/1QuOKVrKioqDuFMAQBoDlrK9WdFVVVVVd3dGu6iiy7K008/XWe/K664IlOmTEllZeUBjbdly5aMHj06s2fP3uf2Vq1a5ZZbbslNN9203zoLFy7MiBEjsmLFin1u79GjR371q1/lvPPOO6D57suyZcvSq1evJMnSpUvTs2fPJh9jX/6wfF3+/qF/z3+s/LDOvqd165C7x/x5zjqp80GYGQAAzdHheP1Z6lq82He4li9fnuSjgPLtb387v/zlL7NgwYLMnz8/d999d0466aQkyc9+9rOMHz/+gMe7+uqra8LWoEGDMmvWrCxYsCBTp07Nqaeeml27dmXSpEmZMmXKfud82WWXZcWKFWnTpk1uuOGGPP3003n66adzww03pE2bNnn33XczbNiwms93pHvmj+9nzL3z63WwJ8l/rPwwY+6dn2f++H7hmQEA0By1tOvPYne4hg0bliuvvDJf/epX07p16722r1q1KgMGDMh//Md/JEmefvrpRj9eOG/evFx88cVJkssuuyz/8i//sseYq1atyrnnnpt33nknxx57bN5666106dJlrzrjx4/PT3/60yTJQw89lNGjR++x/eGHH86YMWOSJFdddVV+8pOfNGq+tTnYd7j+sHxdxtw7P5u27Wzwvu0qW+ehay9wpwsAgHo7nK8/j7g7XLNnz86YMWP2GbaS5Pjjj89dd91V8+df/vKXjR7r+9//fpKkdevW+eEPf7jXmMcff3zuuOOOJMmaNWsyderUvWqsXLkyDz74YJJk6NChe4WtJBk9enSGDh2aJHnggQeycuXKRs/5UKuqqsrfP/TvjTrYk2TTtp25/qGXUiivAwDQzLTU689Duix89V2pJHnzzTcbVePDDz/Mk08+mSQZPHhwrUn0K1/5Sjp16pQkeeSRR/ba/uijj2bnzo/+x7/qqqtqHa/68cedO3fm0UcfbdScDwfz31pd79u4tXlj5YY8/9YHTTQjAACas5Z6/XlIA9e2bdtq2q1aNW4qCxYsyNatW5N8tFBHbSorK2tWKVywYEG2b9++x/Znnnmmpr2/Ortve/bZZxs158PBg8//52FVBwCA5q2lXn8e0vdwzZs3r6Z9xhlnNKrGa6+9Vu8aZ5xxRubOnZsdO3bkj3/8Y84888y96nTu3Dndu3evtcaJJ56YTp06Zf369XuMXR/Lli3b7/baVkZsahu2bM/jrzTN45CPvfJeNmzZ3mzekwAAQNNrydefhyxw7dq1K5MnT675c/ViFA21dOnSmnZdX2yr/hJc9X67B67qOvX5clyvXr3yyiuv7DF2few+/qH03rote7zn4EDs3FWVleu3HDEHPAAAB19Lvv48ZI8U/tM//VMWLFiQJBk1alSj32u1YcOGmnaHDh3227d9+/Y17Q8/3PP50eo6ddXYvc7HaxwpNjbyi4q1+XBr09YDAKB5acnXn4fkDte8efPyj//4j0mST3ziE/nRj37U6Fpbtmypadf18uSjjz66pr158+Z91qnPC5ir63y8Rl3quiO2YsWK9O/fv0E1G6N95b5XjmysDkc3bT0AAJqXlnz9edAD1yuvvJJRo0Zlx44dOfroo/PQQw+lW7duja7Xtm3bmvbui3DsS/XiGklyzDHH7FVn06ZNddbYvc7Ha9Sl9Hu16qt757Zp3aqiSW7rtmlVkW6d2tbdEQCAFqslX38e1EcK33777QwZMiRr1qxJ69at84tf/GK/KwLWR8eOHWvadT3it3Hjxpr2xx8drK5Tn8cEq+vU5/HDw1HHtkdl6J81PuTubuifdT9inp8FAODQaMnXnwctcL377rv5q7/6q7z77rupqKjIT37yk4waNeqA6+5+16iuVQB3f6Tv4wtYVNepq8budQ6XRTAa4xuf/9RhVQcAgOatpV5/HpTAtWrVqgwePDhvvfVWkuR//a//lSuvvLJJau++0uDrr7++377V29u0aZM+ffrss866devy3nvv1VpjxYoVWb9+fZKkb9++jZrz4eCCU7rmtG4Hdofu9G4d8/lTjmuiGQEA0Jy11OvP4oFr3bp1GTp0aF599dUkyeTJk3Pdddc1Wf1+/frVLHSx+3u9Pm7btm15/vnn99qn2oUXXljT3l+d3bcNGDCgUXM+HFRUVOTuMX+edo38AmO7yta5a8zZqaioaOKZAQDQHLXU68+igWvTpk259NJL87vf/S5J8r3vfS//8A//0KRjdOzYMX/5l3+ZJHniiSdqfSTwkUceqbkzta9HGYcPH55WrT7667j//vtrHW/atGlJklatWmX48OEHMvVD7qyTOufeK85t8EHfrrJ17r3i3Jx1UudCMwMAoDlqidefxQLXtm3bMmrUqDz33HNJkm9/+9u57bbbGlxn2rRpqaioSEVFRW655ZZ99vnOd76TJNmxY0euu+667Ny557r8q1atqgl6Xbp0yTXXXLNXje7du2fcuHFJkscffzy//OUv9+rz8MMP5/HHH0+SXHHFFenevXuDP8/hZuCnT8hD115Q79u7p3frmIeuvSADP31C4ZkBANActbTrz2LLwo8dOzZz585Nknzxi1/M1VdfnT/84Q+19q+srMxpp53WqLG++MUv5utf/3pmzJiRRx99NIMHD87EiRPTo0ePLFq0KLfffnveeeedJB890njsscfus87tt9+exx57LO+//37Gjh2bF154IcOGDUuSzJ49O3fddVeS5IQTTmhUeDxcnXVS5zw+8Qt5/q0P8rPnl+TxV1busWRnm1YVGfpn3fONz38qnz/luCPuNi4AAIeXlnT9WVFVVXXgi+Hvq3AD/1I+9alPZcmSJXv9ftq0abnqqquSJDfffHOtd7k2b96cyy+/PL/5zW/2ub1Vq1a56aabat2/2r/9279l5MiRtS6c0b1798yaNSvnn3/+fus0xrJly2pWPly6dOkhe2/Xhi3bs3L9lny4dWc6HN063Tq1PaKW3gQA4MhyOFx/lroWP+gvPi7lmGOOyZw5czJ9+vRMmzYtL730UtauXZtu3bpl4MCBmTBhQi644II665x//vlZtGhR7rnnnsyaNasmBPbu3TsjRozIxIkT07Vr18Kf5tDq2PYoAQsAgIOmOV9/FrvDRcMdLne4AACgpSl1LX7QXnwMAADQ0ghcAAAAhQhcAAAAhQhcAAAAhQhcAAAAhQhcAAAAhQhcAAAAhQhcAAAAhQhcAAAAhQhcAAAAhQhcAAAAhQhcAAAAhQhcAAAAhQhcAAAAhQhcAAAAhQhcAAAAhQhcAAAAhQhcAAAAhQhcAAAAhQhcAAAAhQhcAAAAhQhcAAAAhQhcAAAAhQhcAAAAhQhcAAAAhQhcAAAAhQhcAAAAhQhcAAAAhQhcAAAAhQhcAAAAhQhcAAAAhQhcAAAAhQhcAAAAhQhcAAAAhQhcAAAAhQhcAAAAhQhcAAAAhQhcAAAAhQhcAAAAhQhcAAAAhQhcAAAAhQhcAAAAhQhcAAAAhQhcAAAAhQhcAAAAhQhcAAAAhQhcAAAAhQhcAAAAhQhcAAAAhQhcAAAAhQhcAAAAhQhcAAAAhQhcAAAAhQhcAAAAhQhcAAAAhQhcAAAAhQhcAAAAhQhcAAAAhQhcAAAAhQhcAAAAhQhcAAAAhQhcAAAAhRQNXH/6058ye/bsTJo0KZdcckmOP/74VFRUpKKiIuPHj2+SMZ566qmamvX9ufjii/dZ6+STT67X/ieffHKTzB0AAGje2pQs3q1bt5LlG+30008/1FMAAABagKKBa3e9evVK3759M3fu3Cat269fvyxatKjOfhMmTMi8efOSJN/85jf323fEiBG57bbbat1eWVnZsEkCAAAtUtHANWnSpPTr1y/9+vVLt27dsmTJkvTu3btJx2jfvn3OOuus/fZZu3Ztnn/++SRJnz598hd/8Rf77d+lS5c6awIAANSlaOC69dZbS5avt5kzZ2br1q1JkiuuuOIQzwYAAGgpWsQqhQ888ECSpKKiQuACAAAOmmYfuN5888389re/TZIMHDiwyR9pBAAAqM1BWzTjUKm+u5XUvVhGtaeffjqf/exn8+abb6aqqirdunVL//79M3bs2IwYMSIVFRWNmsuyZcv2u33FihWNqgsAAByemn3gevDBB5MkxxxzTC6//PJ67fP222/v8eclS5ZkyZIleeihhzJgwIDMnDkzJ510UoPn0qtXrwbvAwAAHLmadeB65pln8tZbbyVJRo0alU6dOu23f2VlZYYPH54hQ4bkrLPOSufOnbN27drMnz8/P/rRj7J06dI899xzGTx4cObPn5/OnTsfjI8BAAAcoZp14PrZz35W077yyivr7L9gwYJ06dJlr99ffPHFmTBhQi6//PLMnTs3r732Wm699dbcfffdDZrP0qVL97t9xYoV6d+/f4NqAgAAh69mG7i2bt2ahx9+OEnSo0eP/NVf/VWd++wrbFXr2LFjHnrooZx66qlZvXp17rvvvkyePLlBL0Hu2bNnvfsCAABHvma7SuGvfvWrrF27Nkkybty4tG7d+oBrdu7cOV//+teTJBs3bswLL7xwwDUBAIDmq9kGrt1XJ6zP44T1deaZZ9a0ly9f3mR1AQCA5qdZBq4//elPefzxx5Mkn/vc53LWWWc1We2qqqomqwUAADRvzTJwTZ8+PTt27EjStHe3kuTVV1+taffo0aNJawMAAM1Lswxc1Y8TtmnTJn/913/dZHXXrVuXmTNnJknatWuX8847r8lqAwAAzc9hH7imTZuWioqKVFRU5JZbbqmz/yuvvJLf//73SZJLLrkkJ5xwQr3Geeyxx7J58+Zat2/YsCFjxozJ6tWrkyRXX311jj766HrVBgAAWqaiy8I/++yzWbx4cc2fV61aVdNevHhxpk2btkf/8ePHH/CYP/3pT2va3/zmN+u93+TJkzNu3Lh85StfyYUXXphTTz01HTp02OvFx0ly+umn1yv8AQAALVvRwDVlypQ9AtDunnvuuTz33HN7/O5AA9euXbsyffr0JMmxxx6bYcOGNWj/Dz74IFOmTMmUKVNq7fOFL3wh06dPz3HHHXdAcwUAAJq/ZvXi4yeffLJmqfavfe1rDXrk784778yTTz6Z+fPn54033siqVauydu3atGvXLj169Mj555+fsWPHZsiQIamoqCj1EQAAgGakoso654eNZcuWpVevXkmSpUuXpmfPnod4RgAA0DKUuhY/7BfNAAAAOFIJXAAAAIUIXAAAAIUIXAAAAIUIXAAAAIUIXAAAAIUIXAAAAIUIXAAAAIUIXAAAAIUIXAAAAIUIXAAAAIUIXAAAAIUIXAAAAIUIXAAAAIUIXAAAAIUIXAAAAIUIXAAAAIUIXAAAAIUIXAAAAIUIXAAAAIUIXAAAAIUIXAAAAIUIXAAAAIUIXAAAAIUIXAAAAIUIXAAAAIUIXAAAAIUIXAAAAIUIXAAAAIUIXAAAAIUIXAAAAIUIXAAAAIUIXAAAAIUIXAAAAIUIXAAAAIUIXAAAAIUIXAAAAIUIXAAAAIUIXAAAAIUIXAAAAIUIXAAAAIUIXAAAAIUIXAAAAIUIXAAAAIUIXAAAAIUIXAAAAIUIXAAAAIUIXAAAAIUIXAAAAIUIXAAAAIUIXAAAAIUIXAAAAIUIXAAAAIUIXAAAAIUIXAAAAIUIXAAAAIUIXAAAAIUIXAAAAIUIXAAAAIUIXAAAAIUIXAAAAIUIXAAAAIUUDVx/+tOfMnv27EyaNCmXXHJJjj/++FRUVKSioiLjx49vsnFuueWWmrp1/Tz11FN11lu9enVuvvnmnH322encuXM6deqUs88+OzfffHNWr17dZPMGAACatzYli3fr1q1k+SIWLlyYESNGZMWKFXv8/uWXX87LL7+cKVOm5Fe/+lXOO++8QzRDAADgSFE0cO2uV69e6du3b+bOnVt0nEWLFu13e+/evWvdtnz58lx22WVZuXJl2rRpk7//+7/PsGHDkiSzZ8/O3XffnXfffTfDhg3Liy++mJNOOqlJ5w4AADQvRQPXpEmT0q9fv/Tr1y/dunXLkiVL9ht4msJZZ53V6H2/973vZeXKlUmS6dOnZ/To0TXbBg4cmPPOOy9jxozJypUrc9NNN+UnP/nJAc8XAABovop+h+vWW2/NsGHDjohHC1euXJkHH3wwSTJ06NA9wla10aNHZ+jQoUmSBx54oCacAQAA7ItVCv8/jz76aHbu3Jkkueqqq2rtV73Yx86dO/Poo48ejKkBAABHKIHr//PMM8/UtC+66KJa++2+7dlnny06JwAA4Mh20BbNOFgGDx6c3/3ud9mwYUO6dOmSM888M1/60pdy7bXX5thjj611v9deey1J0rlz53Tv3r3WfieeeGI6deqU9evX1+xTX8uWLdvv9o+vjAgAABzZml3geuKJJ2ra77//fubNm5d58+bljjvuyLRp0zJixIh97rd06dIkSc+ePesco1evXnnllVdq9qmvXr16Nag/AABwZGs2geszn/lMRo4cmf79+6dHjx7Zvn173njjjfz85z/P3Llzs3bt2nz1q1/Nr3/961xyySV77b9hw4YkSYcOHeocq3379kmSDz/8sGk/BAAA0Kw0i8A1ceLE3HLLLXv9/vzzz8+VV16Ze++9N3/7t3+bnTt35pprrsnixYtzzDHH7NF3y5YtSZLKyso6xzv66KOTJJs3b27QPOu6I7ZixYr079+/QTUBAIDDV7MIXF26dNnv9muvvTYvvPBCpkyZknfffTePPPJIxo0bt0eftm3bZtOmTdm2bVud423dujVJ9gptdanP44oAAEDz0WJWKbz22mtr2vPmzdtre8eOHZPU7zHBjRs3Jqnf44cAAEDL1WIC15lnnlnTXr58+V7bq+8+1bWSYPL/Hg20CAYAALA/LSZwVVVV7Xd7dSBbt25d3nvvvVr7rVixIuvXr0+S9O3bt+kmCAAANDstJnC9+uqrNe0ePXrstf3CCy+sae/rkcN9bRswYEATzQ4AAGiOWkzguvfee2vaF1100V7bhw8fnlatPvrruP/++2utM23atCRJq1atMnz48KadJAAA0Kwc9oFr2rRpqaioSEVFxT6Xfl+0aFEWL1683xr33ntvpk6dmiTp3r17Ro0atVef7t2716xc+Pjjj+eXv/zlXn0efvjhPP7440mSK664It27d2/oxwEAAFqQosvCP/vss3uEoVWrVtW0Fy9eXHO3qNr48eMbPMaLL76Ya665JoMGDcoll1ySz3zmM+natWt27NiR119/PQ8++GD+9V//NUnSunXr3HvvvTUvLv6422+/PY899ljef//9jB07Ni+88EKGDRuWJJk9e3buuuuuJMkJJ5yQ2267rcFzBQAAWpaigWvKlCn56U9/us9tzz33XJ577rk9fteYwJUkO3fuzBNPPJEnnnii1j5du3bN1KlT9/sYYK9evfLrX/86I0eOzHvvvZc77rgjd9xxxx59unfvnlmzZnmnFgAAUKcj/sXHX/7ylzN16tTMnz8/v//977Ny5cqsXr06VVVVOe6443L22WfnS1/6UsaPH59OnTrVWe/888/PokWLcs8992TWrFlZsmRJkqR3794ZMWJEJk6cmK5duxb+VAAAQHNQUVXXeukcNMuWLat5t9fSpUvdRQMAgIOk1LX4Yb9oBgAAwJFK4AIAAChE4AIAAChE4AIAAChE4AIAAChE4AIAAChE4AIAAChE4AIAAChE4AIAAChE4AIAAChE4AIAAChE4AIAAChE4AIAAChE4AIAAChE4AIAAChE4AIAAChE4AIAAChE4AIAAChE4AIAAChE4AIAAChE4AIAAChE4AIAAChE4AIAAChE4AIAAChE4AIAAChE4AIAAChE4AIAAChE4AIAAChE4AIAAChE4AIAAChE4AIAAChE4AIAAChE4AIAAChE4AIAAChE4AIAAChE4AIAAChE4AIAAChE4AIAAChE4AIAAChE4AIAAChE4AIAAChE4AIAAChE4AIAAChE4AIAAChE4AIAAChE4AIAAChE4AIAAChE4AIAAChE4AIAAChE4AIAAChE4AIAAChE4AIAAChE4AIAAChE4AIAAChE4AIAAChE4AIAAChE4AIAAChE4AIAAChE4AIAAChE4AIAAChE4AIAAChE4AIAACikaOD605/+lNmzZ2fSpEm55JJLcvzxx6eioiIVFRUZP358k42zfv36zJgxI3/zN3+Tz33uc+nSpUsqKytzwgkn5OKLL86dd96ZtWvX1lnn5JNPrpnf/n5OPvnkJps7AADQfLUpWbxbt24lyydJ/s//+T8ZNWpUtm7dute2VatWZd68eZk3b17uvPPO/OIXv8igQYOKzwkAACApHLh216tXr/Tt2zdz585t0rqrV6/O1q1b06pVqwwePDhf+tKXcvbZZ6dLly5ZtmxZfv7zn2fmzJlZuXJlhg0blueeey5//ud/vt+aI0aMyG233Vbr9srKyib9DAAAQPNUNHBNmjQp/fr1S79+/dKtW7csWbIkvXv3btIxjjrqqFx77bW58cYb88lPfnKPbeecc04uu+yyDBgwIN/61reyadOmXH/99XnyySf3W7NLly4566yzmnSeAABAy1M0cN16660lyydJvva1r+VrX/vafvv8l//yX/LAAw/khRdeyFNPPZXVq1ena9euxecGAAC0bC1mlcKLL744SbJr1668/fbbh3YyAABAi9BiAtfui2q0atViPjYAAHAIHbRFMw61efPmJUnatGmTPn367Lfv008/nc9+9rN58803U1VVlW7duqV///4ZO3ZsRowYkYqKikbNYdmyZfvdvmLFikbVBQAADk8tInDNmTMnL7/8cpJk6NCh6dSp0377f/yRwyVLlmTJkiV56KGHMmDAgMycOTMnnXRSg+fRq1evBu8DAAAcuZp94Prggw9y3XXXJUlat26d//7f/3utfSsrKzN8+PAMGTIkZ511Vjp37py1a9dm/vz5+dGPfpSlS5fmueeey+DBgzN//vx07tz5YH0MAADgCNSsA9fOnTszbty4/Od//meS5L/+1/+ac845p9b+CxYsSJcuXfb6/cUXX5wJEybk8ssvz9y5c/Paa6/l1ltvzd13392g+SxdunS/21esWJH+/fs3qCYAAHD4ataB6+/+7u/y2GOPJUkuvfTS3HTTTfvtv6+wVa1jx4556KGHcuqpp2b16tW57777Mnny5Aa9BLlnz5717gsAABz5mu1yfd/97ndz3333JUkuvPDCPPzww2nduvUB1ezcuXO+/vWvJ0k2btyYF1544YDnCQAANF/NMnDdcccdmTx5cpLkc5/7XGbPnp1jjjmmSWqfeeaZNe3ly5c3SU0AAKB5anaB64c//GH+8R//MUnSt2/fPP744026uEVVVVWT1QIAAJq3ZhW4fvazn2XChAlJklNOOSVPPPFEjj/++CYd49VXX61p9+jRo0lrAwAAzUuzCVyPPPJIrrrqqlRVVaVnz5558sknmzwQrVu3LjNnzkyStGvXLuedd16T1gcAAJqXwz5wTZs2LRUVFamoqMgtt9yyzz5z587N2LFjs3PnznziE5/IE088kZNPPrlB4zz22GPZvHlzrds3bNiQMWPGZPXq1UmSq6++OkcffXSDxgAAAFqWosvCP/vss1m8eHHNn1etWlXTXrx4caZNm7ZH//Hjxzd4jOeffz6jRo3Ktm3bctRRR+Wf/umfsn379vzhD3+odZ+ePXvu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6wFw+DniHyns2LFjTbuuR/w2btxY0/74o4PVderzmGB1nfo8fghA83Fil2PSvdPRdXesT63ObX1/C6AFOOID1+53jepaBXD3R/o+voBFdZ26auxexyIYAC3P1QN7N0mday5smjoAHN6O+MC1+0qDr7/++n77Vm9v06ZN+vTps88669aty3vvvVdrjRUrVmT9+vVJkr59+zZqzgAcua4e0DuVrQ/sP5+VbVrlqgEnN82EADisHfGBq1+/fjULXcybN6/Wftu2bcvzzz+/1z7VLrzwwpr2/ursvm3AgAGNmjMAR65WrVrl+5d/9oBqfP+rn02rVkf8f4IBqIcj/mzfsWPH/OVf/mWS5Iknnqj1kcBHHnmk5s7UqFGj9to+fPjwmv/43X///bWON23atCQf/Qd3+PDhBzJ1AI5QI885KTd86fRG7XvDl07PyHNOauIZAXC4OuwD17Rp01JRUZGKiorccsst++zzne98J0myY8eOXHfdddm5c+ce21etWpV/+Id/SJJ06dIl11xzzV41unfvnnHjxiVJHn/88fzyl7/cq8/DDz+cxx9/PElyxRVXpHv37o3+XAAc2f7u4j75wdf+vN6PF1a2aZUffO3P83cX96m7MwDNRtFl4Z999tksXry45s+rVq2qaS9evLjmblG18ePHN2qcL37xi/n617+eGTNm5NFHH83gwYMzceLE9OjRI4sWLcrtt9+ed955J0kyefLkHHvssfusc/vtt+exxx7L+++/n7Fjx+aFF17IsGHDkiSzZ8/OXXfdlSQ54YQTcttttzVqrgA0HyPPOSnDzz4x9z+3JD9+5q28t37rXn1O7Nw211zYO1cNONljhAAtUEVVVVVVqeLjx4/PT3/603r339dUpk2blquuuipJcvPNN9d6l2vz5s25/PLL85vf/Gaf21u1apWbbrqp1v2r/du//VtGjhxZ68IZ3bt3z6xZs3L++efvt05jLFu2rGblw6VLl3pvF8ARZsXazXl1xfqs3rgtXdtX5swTO1n6HeAIUepa/Ih/8XG1Y445JnPmzMn06dMzbdq0vPTSS1m7dm26deuWgQMHZsKECbngggvqrHP++edn0aJFueeeezJr1qwsWbIkSdK7d++MGDEiEydOTNeuXQt/GgCORCd2OUbAAmAPRe9w0TDucAEAwKFR6lrcw+QAAACFCFwAAACFCFwAAACFCFwAAACFCFwAAACFCFwAAACFCFwAAACFCFwAAACFCFwAAACFCFwAAACFCFwAAACFCFwAAACFCFwAAACFCFwAAACFCFwAAACFCFwAAACFCFwAAACFCFwAAACFCFwAAACFCFwAAACFCFwAAACFCFwAAACFCFwAAACFCFwAAACFCFwAAACFCFwAAACFCFwAAACFCFwAAACFCFwAAACFCFwAAACFCFwAAACFCFwAAACFCFwAAACFCFwAAACFCFwAAACFCFwAAACFCFwAAACFCFwAAACFCFwAAACFCFwAAACFCFwAAACFCFwAAACFCFwAAACFCFwAAACFCFwAAACFCFwAAACFCFwAAACFCFwAAACFCFwAAACFCFwAAACFCFwAAACFCFwAAACFCFwAAACFCFwAAACFCFwAAACFCFwAAACFCFwAAACFCFwAAACFCFwAAACFCFwAAACFCFwAAACFCFwAAACFHLTA9c477+Q73/lO+vbtm/bt2+e4445L//79c+edd2bTpk2NrvvUU0+loqKiQT8XX3zxPmudfPLJ9dr/5JNPbvR8AQCAlqPNwRhkzpw5GTduXNatW1fzu02bNmXhwoVZuHBhpkyZkt/85jc55ZRTDsZ0cvrppx+UcQAAgJateOB66aWXMmbMmGzatCkdOnTId7/73QwaNCibN2/OjBkz8uMf/zhvvPFGLr300ixcuDAdOnRoUP1+/fpl0aJFdfabMGFC5s2blyT55je/ud++I0aMyG233Vbr9srKygbNEQAAaJmKB66JEydm06ZNadOmTebOnZsLLrigZtsXv/jFfPrTn84NN9yQ119/PXfffXcmTZrUoPrt27fPWWedtd8+a9euzfPPP58k6dOnT/7iL/5iv/27dOlSZ00AAIC6FP0O18KFC/PUU08lSa6++uo9wla166+/Pn379k2S/OAHP8j27dubfB4zZ87M1q1bkyRXXHFFk9cHAADYl6KBa9asWTXtq666at8TaNUqV155ZZJkzZo1NQGtKT3wwANJkoqKCoELAAA4aIoGrmeeeSbJR4/9nXvuubX2u+iii2razz77bJPO4c0338xvf/vbJMnAgQPTu3fvJq0PAABQm6Lf4XrttdeSfPS9qTZtah/qjDPO2GufplJ9dyupe7GMak8//XQ++9nP5s0330xVVVW6deuW/v37Z+zYsRkxYkQqKioaNZdly5btd/uKFSsaVRcAADg8FQtcW7ZsyapVq5IkPXv23G/fY489Nu3bt8/GjRuzdOnSJp3Hgw8+mCQ55phjcvnll9drn7fffnuPPy9ZsiRLlizJQw89lAEDBmTmzJk56aSTGjyXXr16NXgfAADgyFUscG3YsKGmXZ+l3qsD14cffthkc3jmmWfy1ltvJUlGjRqVTp067bd/ZWVlhg8fniFDhuSss85K586ds3bt2syfPz8/+tGPsnTp0jz33HMZPHhw5s+fn86dOzfZXAEAgOan6B2uavV5b9XRRx+dJNm8eXOTzeFnP/tZTbt6YY79WbBgQbp06bLX7y+++OJMmDAhl19+eebOnZvXXnstt956a+6+++4Gzaeuu3crVqxI//79G1QTAAA4fBULXG3btq1pb9u2rc7+1cu2H3PMMU0y/tatW/Pwww8nSXr06JG/+qu/qnOffYWtah07dsxDDz2UU089NatXr859992XyZMnN+glyHU9WgkAADQvxVYp7NixY027Po8Jbty4MUn9Hj+sj1/96ldZu3ZtkmTcuHFp3br1Adfs3Llzvv71ryf5aL4vvPDCAdcEAACar2KBq23btjn++OOT1L0635o1a2oCV1MtLLH76oT1eZywvs4888ya9vLly5usLgAA0PwUfQ9X3759kySLFy/Ojh07au33+uuv77XPgfjTn/6Uxx9/PEnyuc99LmedddYB16xWVVXVZLUAAIDmrWjguvDCC5N89Pjdiy++WGu/efPm1bQHDBhwwONOnz69JuA15d2tJHn11Vdr2j169GjS2gAAQPNSNHCNHDmypn3//ffvs8+uXbtqHv/r0qVLBg0adMDjVtdr06ZN/vqv//qA61Vbt25dZs6cmSRp165dzjvvvCarDQAAND9FA1f//v0zcODAJMnUqVMzf/78vfrcddddee2115Ik3/72t3PUUUftsX3atGmpqKhIRUVFbrnlljrHfOWVV/L73/8+SXLJJZfkhBNOqNdcH3vssf0uSb9hw4aMGTMmq1evTpJcffXVNUvZAwAA7EuxZeGr3XPPPRkwYEA2b96cIUOG5MYbb8ygQYOyefPmzJgxI/fdd1+S5LTTTsv1119/wOP99Kc/rWl/85vfrPd+kydPzrhx4/KVr3wlF154YU499dR06NBhrxcfJ8npp59er/AHAAC0bMUD1znnnJOZM2fmG9/4RtavX58bb7xxrz6nnXZa5syZs8dS8o2xa9euTJ8+PUly7LHHZtiwYQ3a/4MPPsiUKVMyZcqUWvt84QtfyPTp03Pccccd0FwBAIDmr3jgSpLLLrssL7/8cu65557MmTMny5YtS2VlZfr06ZPRo0dnwoQJadeu3QGP8+STT9Ys1f61r32tQY/83XnnnXnyySczf/78vPHGG1m1alXWrl2bdu3apUePHjn//PMzduzYDBkyJBUVFQc8VwAAoPmrqLLO+WFj2bJlNe8hW7p0aXr27HmIZwQAAC1DqWvxootmAAAAtGQCFwAAQCECFwAAQCECFwAAQCECFwAAQCECFwAAQCECFwAAQCECFwAAQCECFwAAQCECFwAAQCECFwAAQCECFwAAQCECFwAAQCECFwAAQCECFwAAQCECFwAAQCECFwAAQCECFwAAQCECFwAAQCECFwAAQCECFwAAQCECFwAAQCECFwAAQCECFwAAQCECFwAAQCECFwAAQCECFwAAQCECFwAAQCECFwAAQCECFwAAQCECFwAAQCECFwAAQCECFwAAQCECFwAAQCECFwAAQCECFwAAQCECFwAAQCECFwAAQCECFwAAQCECFwAAQCECFwAAQCECFwAAQCECFwAAQCECFwAAQCECFwAAQCECFwAAQCECFwAAQCECFwAAQCECFwAAQCECFwAAQCECFwAAQCECFwAAQCECFwAAQCECFwAAQCECFwAAQCECFwAAQCECFwAAQCECFwAAQCECFwAAQCECFwAAQCECFwAAQCECFwAAQCEHLXC98847+c53vpO+ffumffv2Oe6449K/f//ceeed2bRp0wHVvuWWW1JRUVGvn6eeeqrOeqtXr87NN9+cs88+O507d06nTp1y9tln5+abb87q1asPaK4AAEDL0eZgDDJnzpyMGzcu69atq/ndpk2bsnDhwixcuDBTpkzJb37zm5xyyikHYzr7tXDhwowYMSIrVqzY4/cvv/xyXn755UyZMiW/+tWvct555x2iGQIAAEeK4oHrpZdeypgxY7Jp06Z06NAh3/3udzNo0KBs3rw5M2bMyI9//OO88cYbufTSS7Nw4cJ06NDhgMZbtGjRfrf37t271m3Lly/PZZddlpUrV6ZNmzb5+7//+wwbNixJMnv27Nx999159913M2zYsLz44os56aSTDmiuAABA81Y8cE2cODGbNm1KmzZtMnfu3FxwwQU12774xS/m05/+dG644Ya8/vrrufvuuzNp0qQDGu+ss85q9L7f+973snLlyiTJ9OnTM3r06JptAwcOzHnnnZcxY8Zk5cqVuemmm/KTn/zkgOYKAAA0b0W/w7Vw4cKa70xdffXVe4Statdff3369u2bJPnBD36Q7du3l5xSrVauXJkHH3wwSTJ06NA9wla10aNHZ+jQoUmSBx54oCacAQAA7EvRwDVr1qya9lVXXbXvCbRqlSuvvDJJsmbNmnotalHCo48+mp07dyapfa5JMn78+CTJzp078+ijjx6MqQEAAEeoooHrmWeeSZK0b98+5557bq39Lrroopr2s88+W3JKtaqea7LnfD7ucJgrAABwZCj6Ha7XXnstSdKnT5+0aVP7UGecccZe+zTW4MGD87vf/S4bNmxIly5dcuaZZ+ZLX/pSrr322hx77LF1zrVz587p3r17rf1OPPHEdOrUKevXr2/wXJctW7bf7R9fGREAADiyFQtcW7ZsyapVq5IkPXv23G/fY489Nu3bt8/GjRuzdOnSAxr3iSeeqGm///77mTdvXubNm5c77rgj06ZNy4gRI/a5X/W4dc01SXr16pVXXnmlwXPt1atXg/oDAABHtmKBa8OGDTXt+iz1Xh24Pvzww0aN95nPfCYjR45M//7906NHj2zfvj1vvPFGfv7zn2fu3LlZu3ZtvvrVr+bXv/51LrnkklrnW9+5Jmn0XAEAgJah6B2uapWVlXX2P/roo5MkmzdvbvBYEydOzC233LLX788///xceeWVuffee/O3f/u32blzZ6655posXrw4xxxzzD7nW3Kudd0RW7FiRfr379+gmgAAwOGrWOBq27ZtTXvbtm119t+6dWuS7BWE6qNLly773X7ttdfmhRdeyJQpU/Luu+/mkUceybhx4/aa76ZNm4rOtT6PKwIAAM1HsVUKO3bsWNOuz6N3GzduTFK/R/oa49prr61pz5s3b6/t1fM9HOYKAAA0D8UCV9u2bXP88ccnqXt1vjVr1tSEmFILS5x55pk17eXLl++1vfruU11zTf7fo4EWwQAAAPan6Hu4+vbtmyRZvHhxduzYUWu/119/fa99mlpVVdV+t1cHsnXr1uW9996rtd+KFSuyfv36JOXmCgAANA9FA9eFF16Y5KNH8F588cVa++3+iN+AAQOKzOXVV1+taffo0WOv7dVz/fh8Pu5gzBUAAGgeigaukSNH1rTvv//+ffbZtWtXHnjggSQfLX4xaNCgInO59957a9oXXXTRXtuHDx+eVq0++uuoba5JMm3atCRJq1atMnz48KadJAAA0KwUDVz9+/fPwIEDkyRTp07N/Pnz9+pz11135bXXXkuSfPvb385RRx21x/Zp06aloqIiFRUV+1z6fdGiRVm8ePF+53Hvvfdm6tSpSZLu3btn1KhRe/Xp3r17zcqFjz/+eH75y1/u1efhhx/O448/niS54oor0r179/2OCwAAtGzFloWvds8992TAgAHZvHlzhgwZkhtvvDGDBg3K5s2bM2PGjNx3331JktNOOy3XX399g+u/+OKLueaaazJo0KBccskl+cxnPpOuXbtmx44def311/Pggw/mX//1X5MkrVu3zr333lvz4uKPu/322/PYY4/l/fffz9ixY/PCCy9k2LBhSZLZs2fnrrvuSpKccMIJue222xrz1wEAALQgxQPXOeeck5kzZ+Yb3/hG1q9fnxtvvHGvPqeddlrmzJmzx1LyDbFz58488cQTeeKJJ2rt07Vr10ydOnW/jwH26tUrv/71rzNy5Mi89957ueOOO3LHHXfs0ad79+6ZNWuWd2oBAAB1Kh64kuSyyy7Lyy+/nHvuuSdz5szJsmXLUllZmT59+mT06NGZMGFC2rVr16jaX/7yl2seV/z973+flStXZvXq1amqqspxxx2Xs88+O1/60pcyfvz4dOrUqc56559/fhYtWpR77rkns2bNypIlS5IkvXv3zogRIzJx4sR07dq1UXMFAABaloqqutZL56BZtmxZzbu9li5d6i4aAAAcJKWuxYsumgEAANCSCVwAAACFCFwAAACFCFwAAACFCFwAAACFCFwAAACFCFwAAACFCFwAAACFCFwAAACFCFwAAACFCFwAAACFCFwAAACFCFwAAACFCFwAAACFCFwAAACFCFwAAACFCFwAAACFCFwAAACFCFwAAACFCFwAAACFCFwAAACFCFwAAACFCFwAAACFCFwAAACFCFwAAACFCFwAAACFCFwAAACFCFwAAACFCFwAAACFCFwAAACFCFwAAACFCFwAAACFCFwAAACFCFwAAACFCFwAAACFCFwAAACFCFwAAACFCFwAAACFCFwAAACFCFwAAACF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Xmv4AwAAqFY8cJ1zzjmZOXNmvvGNb2T9+vW58cYb9+pz2mmnZc6cOXssJV9fjz32WDZt2pQk2b59e8aNG1fnPvfff3/Gjx+/1+8/+OCDTJkyJVOmTKl13y984QuZPn16jjvuuAbPFQAAaFmKB64kueyyy/Lyyy/nnnvuyZw5c7Js2bJUVlamT58+GT16dCZMmJB27dodjKnU6s4778yTTz6Z+fPn54033siqVauydu3atGvXLj169Mj555+fsWPHZsiQIamoqDikcwUAAI4MFVXWOT9sLFu2rOY9ZEuXLk3Pnj0P8YwAAKBlKHUtXnTRDAAAgJZM4AIAAChE4AIAAChE4AIAAChE4AIAAChE4AIAAChE4AIAAChE4AIAAChE4AIAAChE4AIAAChE4AIAAChE4AIAAChE4AIAAChE4AIAAChE4AIAAChE4AIAAChE4AIAAChE4AIAAChE4AIAAChE4AIAAChE4AIAAChE4AIAAChE4AIAAChE4AIAAChE4AIAAChE4AIAAChE4AIAAChE4AIAAChE4AIAAChE4AIAAChE4AIAAChE4AIAAChE4AIAAChE4AIAAChE4AIAAChE4AIAAChE4AIAAChE4AIAAChE4AIAAChE4AIAAChE4AIAAChE4AIAAChE4AIAAChE4AIAAChE4AIAAChE4AIAAChE4AIAAChE4AIAAChE4AIAAChE4AIAAChE4AIAAChE4AIAAChE4AIAAChE4AIAAChE4AIAAChE4AIAAChE4AIAAChE4AIAAChE4AIAAChE4AIAAChE4AIAACikzaGeAIefDVu25711W7Jx2860r2yd7p3bpmPbow71tAAAaKaa8/XnQQtc77zzTv75n/85c+bMyTvvvJOjjz46ffr0yZgxY/J3f/d3adeuXZOMM2PGjNx///15+eWXs2bNmnTv3j0DBw7Mddddl89//vP1qrF69er88z//c2bNmpUlS5akqqoqvXv3zsiRI/Otb30rXbt2bZK5Hk6qqqoy/63V+dn8/8zcV1dm566qmm2tW1Vk6J91yzc+/6lccErXVFRUHMKZAgDQHLSU68+Kqqqqqrq7HZg5c+Zk3LhxWbdu3T63n3766fnNb36TU045pdFjbNmyJaNHj87s2bP3ub1Vq1a55ZZbctNNN+23zsKFCzNixIisWLFin9t79OiRX/3qVznvvPMaPdfaLFu2LL169UqSLF26ND179mzyMfblD8vX5e8f+vf8x8oP6+x7WrcOuXvMn+eskzofhJkBANAcHY7Xn6WuxYt/h+ull17KmDFjsm7dunTo0CG33357fvvb3+bJJ5/M3/zN3yRJ3njjjVx66aX58MO6/8Jrc/XVV9eErUGDBmXWrFlZsGBBpk6dmlNPPTW7du3KpEmTMmXKlFprLF++PJdddllWrFiRNm3a5IYbbsjTTz+dp59+OjfccEPatGmTd999N8OGDcvy5csbPdfDyTN/fD9j7p1fr4M9Sf5j5YcZc+/8PPPH9wvPDACA5qilXX8Wv8M1aNCgPPXUU2nTpk2efvrpXHDBBXts/5//83/mhhtuSJLceuutmTRpUoPHmDdvXi6++OIkyWWXXZZ/+Zd/SevWrWu2r1q1Kueee27eeeedHHvssXnrrbfSpUuXveqMHz8+P/3pT5MkDz30UEaPHr3H9ocffjhjxoxJklx11VX5yU9+0uC57s/BvsP1h+XrMube+dm0bWeD921X2ToPXXuBO10AANTb4Xz9eUTe4Vq4cGGeeuqpJB/dgfp42EqS66+/Pn379k2S/OAHP8j27dsbPM73v//9JEnr1q3zwx/+cI+wlSTHH3987rjjjiTJmjVrMnXq1L1qrFy5Mg8++GCSZOjQoXuFrSQZPXp0hg4dmiR54IEHsnLlygbP9XBRVVWVv3/o3xt1sCfJpm07c/1DL+UgPJEKAEAz0FKvP4sGrlmzZtW0r7rqqn1PoFWrXHnllUk+CkPVAa2+Pvzwwzz55JNJksGDB9eaRL/yla+kU6dOSZJHHnlkr+2PPvpodu7cud+5Jh/dBUuSnTt35tFHH23QXA8n899aXe/buLV5Y+WGPP/WB000IwAAmrOWev1ZNHA988wzSZL27dvn3HPPrbXfRRddVNN+9tlnGzTGggULsnXr1r3qfFxlZWXNKoULFizY605a9VzrqnMgcz2cPPj8fx5WdQAAaN5a6vVn0WXhX3vttSRJnz590qZN7UOdccYZe+3T0DE+Xqe2cebOnZsdO3bkj3/8Y84888y96nTu3Dndu3evtcaJJ56YTp06Zf369Q2e67Jly/a7vbaVEZvahi3b8/grTfM45GOvvJcNW7Y3m/ckAADQ9Fry9WexwLVly5asWrUqSer8wtmxxx6b9u3bZ+PGjVm6dGmDxtm9f13jVH8Jrnq/3QNXdZ36fDmuV69eeeWVVxo8193HP5TeW7dlj/ccHIidu6qycv2WI+aABwDg4GvJ15/FHincsGFDTbtDhw519m/fvn2SNHhp+IaMUz3GvsaprlNyroeLjY38omJtPtzatPUAAGheWvL1Z9E7XNUqKyvr7H/00UcnSTZv3lxsnOox9jVOdZ2Sc63rjtiKFSvSv3//BtVsjPaVrevu1AAdjm7aegAANC8t+fqzWOBq27ZtTXvbtm119q9e+OKYY44pNk71GPsap23bttm0aVPRuZZ+r1Z9de/cNq1bVTTJbd02rSrSrVPbujsCANBiteTrz2KPFHbs2LGmXZ9H7zZu3Jikfo/0NXac6jH2NU51nZJzPVx0bHtUhv5ZtyapNfTPuh8xz88CAHBotOTrz2KBq23btjn++OOT1L0635o1a2pCTEMXltj9rlFd4+z+SN/Hx6muU1eN3escLotgNMY3Pv+pw6oOAADNW0u9/iz6Hq6+ffsmSRYvXpwdO3bU2u/111/fa5/62n2lwd3r7G+cNm3apE+fPvuss27durz33nu11lixYkXWr1/fqLkeTi44pWtO63Zgd+hO79Yxnz/luCaaEQAAzVlLvf4sGrguvPDCJB89gvfiiy/W2m/evHk17QEDBjRojH79+tUsdLF7nY/btm1bnn/++b32+fhc66pzIHM9nFRUVOTuMX+edo38AmO7yta5a8zZqaioaOKZAQDQHLXU68+igWvkyJE17fvvv3+ffXbt2pUHHnggSdKlS5cMGjSoQWN07Ngxf/mXf5kkeeKJJ2p9JPCRRx6puTM1atSovbYPHz48rVq12u9ck2TatGlJklatWmX48OENmuvh5qyTOufeK85t8EHfrrJ17r3i3Jx1UudCMwMAoDlqidefRQNX//79M3DgwCTJ1KlTM3/+/L363HXXXXnttdeSJN/+9rdz1FF7fgFu2rRpqaioSEVFRW655ZZ9jvOd73wnSbJjx45cd9112blzz3X5V61alX/4h39I8lGou+aaa/aq0b1794wbNy5J8vjjj+eXv/zlXn0efvjhPP7440mSK664It27d6/1sx8pBn76hDx07QX1vr17ereOeejaCzLw0ycUnhkAAM1RS7v+LLYsfLV77rknAwYMyObNmzNkyJDceOONGTRoUDZv3pwZM2bkvvvuS5Kcdtppuf766xs1xhe/+MV8/etfz4wZM/Loo49m8ODBmThxYnr06JFFixbl9ttvzzvvvJMkmTx5co499th91rn99tvz2GOP5f3338/YsWPzwgsvZNiwYUmS2bNn56677kqSnHDCCbntttsaNdfD0Vkndc7jE7+Q59/6ID97fkkef2XlHkt2tmlVkaF/1j3f+Pyn8vlTjjvibuMCAHB4aUnXnxVVVVUHvhh+HX7961/nG9/4Rs0jfR932mmnZc6cOXstZJF8dIfrqquuSpLcfPPNtd7l2rx5cy6//PL85je/2ef2Vq1a5aabbqp1/2r/9m//lpEjR9a6cEb37t0za9asnH/++fut0xjLli2rWflw6dKlh+y9XRu2bM/K9Vvy4dad6XB063Tr1PaIWnoTAIAjy+Fw/VnqWrz4Ha4kueyyy/Lyyy/nnnvuyZw5c7Js2bJUVlamT58+GT16dCZMmJB27dod0BjHHHNM5syZk+nTp2fatGl56aWXsnbt2nTr1i0DBw7MhAkTcsEFF9RZ5/zzz8+iRYtyzz33ZNasWVmyZEmSpHfv3hkxYkQmTpyYrl27HtBcD3cd2x4lYAEAcNA05+vPg3KHi/o5XO5wAQBAS1PqWrzoohkAAAAtmcAFAABQiMAFAABQiMAFAABQiMAFAABQiMAFAABQiMAFAABQiMAFAABQiMAFAABQiMAFAABQiMAFAABQiMAFAABQiMAFAABQiMAFAABQiMAFAABQiMAFAABQiMAFAABQiMAFAABQiMAFAABQSJtDPQH+nx07dtS0V6xYcQhnAgAALcvu19+7X5cfKIHrMPL+++/XtPv3738IZwIAAC3X+++/n5NPPrlJanmkEAAAoJCKqqqqqkM9CT6yZcuWLFq0KElywgknpE2bQ3MDcsWKFTV32BYsWJATTzzxkMwD9sXxyeHM8cnhzPHJ4exwOD537NhR88TZZz7zmbRt27ZJ6nqk8DDStm3b9OvX71BPYw8nnnhievbseainAfvk+ORw5vjkcOb45HB2KI/PpnqMcHceKQQAAChE4AIAAChE4AIAAChE4AIAAChE4AIAAChE4AIAAChE4AIAACjEi48BAAAKcYcLAACgEIELAACgEIELAACgEIELAACgEIELAACgEIELAACgEIELAACgEIELAACgEIELAACgEIELAACgEIGrGXvnnXfyne98J3379k379u1z3HHHpX///rnzzjuzadOmJhtnxowZGTp0aE488cS0bds2J598cq644oo8//zzTTYGzU/J4/OWW25JRUVFvX6eeuqppvlAHPH+9Kc/Zfbs2Zk0aVIuueSSHH/88TXHyfjx44uM6fxJfR2s49P5k8b43e9+l//xP/5HLrnkkvTq1StHH310OnTokNNOOy3jx4/PM8880+RjHlHnzyqapdmzZ1d17ty5Ksk+f04//fSqN99884DG2Lx5c9WwYcNqHaNVq1ZV/+2//bcm+kQ0J6WPz5tvvrnW2h//+b//9/823QfjiLa/4+Sb3/xmk47l/ElDHazj0/mThvrCF75Qr+PliiuuqNq6desBj3cknj/bNDqpcdh66aWXMmbMmGzatCkdOnTId7/73QwaNCibN2/OjBkz8uMf/zhvvPFGLr300ixcuDAdOnRo1DhXX311Zs+enSQZNGhQvv3tb6dHjx5ZtGhR/sf/+B958803M2nSpJx44om55pprmvIjcgQ7WMdntUWLFu13e+/evQ+oPs1Tr1690rdv38ydO7dIfedPDkTp47Oa8yf1sXz58iRJjx49Mnr06AwcODCf/OQns3PnzsyfPz933XVXli9fnp/97GfZsWNHpk+ffkDjHZHnz0Od+Gh6F198cVWSqjZt2lT99re/3Wv797///Zp/Bbj11lsbNcZTTz1VU+Oyyy6r2rFjxx7b33///apPfvKTVUmqjj322Ko1a9Y0ahyan4NxfO7+L7RQX5MmTar69a9/XfXee+9VVVVVVb399ttF7iA4f9IYB+v4dP6koS699NKqmTNn7nUuq/b+++9XnXbaaTXH1dNPP93osY7U86f/NzUzCxYsqDkQr7322n322blzZ1Xfvn1rDsZt27Y1eJwvf/nLVUmqWrduXbV06dJ99vnFL35RM5c777yzwWPQ/Bys49MFA02h1AWt8ydNQeDiSPLrX/+65rj61re+1eg6R+r506IZzcysWbNq2lddddU++7Rq1SpXXnllkmTNmjUN/tLrhx9+mCeffDJJMnjw4PTs2XOf/b7yla+kU6dOSZJHHnmkQWPQPB2M4xMOZ86fQEt08cUX17TffPPNRtU4ks+fAlczU70KTPv27XPuuefW2u+iiy6qaT/77LMNGmPBggXZunXrXnU+rrKyMp///Odr9tm+fXuDxqH5ORjHJxzOnD+Blmjbtm017VatGhc/juTzp8DVzLz22mtJkj59+qRNm9rXRDnjjDP22qehY3y8zv7G2bFjR/74xz82aByan4NxfH7c4MGD07Vr11RWVuYTn/hELr744kyePDlr1qw5oLrQGM6fHEmcP2kq8+bNq2nXde6rzZF8/hS4mpEtW7Zk1apVSVLrbdZqxx57bNq3b58kWbp0aYPG2b1/XeP06tVrn/vR8hys4/PjnnjiiXzwwQfZvn173n///cybNy/f/e53c8opp+RXv/rVAdWGhnL+5Eji/ElT2LVrVyZPnlzz5zFjxjSqzpF8/rQsfDOyYcOGmnZ9ltJu3759Nm7cmA8//LDYONUXzUkaPA7Ny8E6Pqt95jOfyciRI9O/f//06NEj27dvzxtvvJGf//znmTt3btauXZuvfvWr+fWvf51LLrmkUWNAQzl/ciRw/qQp/dM//VMWLFiQJBk1alTOO++8RtU5ks+fAlczsmXLlpp2ZWVlnf2PPvroJMnmzZuLjVM9RmPGoXk5WMdnkkycODG33HLLXr8///zzc+WVV+bee+/N3/7t32bnzp255pprsnjx4hxzzDENHgcayvmTw53zJ01p3rx5+cd//MckySc+8Yn86Ec/anStI/n86ZHCZqRt27Y17d2/nFib6i8eNvRE2ZBxqsdozDg0Lwfr+EySLl267Hf7tddeW/MyxHffffewWcWI5s/5k8Od8ydN5ZVXXsmoUaOyY8eOHH300XnooYfSrVu3Rtc7ks+fAlcz0rFjx5p2fW6fbty4MUn9Hu9q7DjVYzRmHJqXg3V81te1115b0979y7xQkvMnzYHzJ3V5++23M2TIkKxZsyatW7fOL37xi/2uLFgfR/L5U+BqRtq2bZvjjz8+SbJs2bL99l2zZk3Nwbj7FwvrY/cvKtY1zu5fVGzoODQvB+v4rK8zzzyzpr18+fIiY8DHOX/SHDh/sj/vvvtu/uqv/irvvvtuKioq8pOf/CSjRo064LpH8vlT4Gpm+vbtmyRZvHhxduzYUWu/119/fa996mv3E+3udfY3Tps2bdKnT58GjUPzczCOz/qqqqoqUhf2x/mT5sD5k9qsWrUqgwcPzltvvZUk+V//63/lyiuvbJLaR/L5U+BqZi688MIkH91KffHFF2vtt/sjAAMGDGjQGP369av5suL+HiXYtm1bnn/++b32oeU6GMdnfb366qs17R49ehQZAz7O+ZPmwPmTfVm3bl2GDh1ac3xMnjw51113XZPVP5LPnwJXMzNy5Mia9v3337/PPrt27coDDzyQ5KMvxw4aNKhBY3Ts2DF/+Zd/meSjd3TUdlv3kUceyfr165OkSW4lc+Q7GMdnfd1777017QN9rhzqy/mT5sD5k4/btGlTLr300vzud79Lknzve9/LP/zDPzTpGEf0+bOKZmfgwIFVSaratGlT9dvf/nav7d///verklQlqbr55pv32n7//ffvd3tVVVXVk08+WdNn+PDhVTt27Nhj+/vvv1/1yU9+sipJVZcuXao++OCDpvhoNAOlj8+XX3656o9//ON+5/C///f/rqnRvXv3qg8//LCxH4dm7O233645Tr75zW/Wax/nTw6WEsen8yeNsXXr1qohQ4bUHBff/va3G1WnOZ8/vYerGbrnnnsyYMCAbN68OUOGDMmNN96YQYMGZfPmzZkxY0buu+++JMlpp52W66+/vlFjfPGLX8zXv/71zJgxI48++mgGDx6ciRMnpkePHlm0aFFuv/32vPPOO0k+uqV87LHHNtnn48hW+vh88cUXc80112TQoEG55JJL8pnPfCZdu3bNjh078vrrr+fBBx/Mv/7rvyZJWrdunXvvvXePFyTScj377LNZvHhxzZ9XrVpV0168eHGmTZu2R//x48c3ahznTxrjYByfzp80xtixYzN37twkH53frr766vzhD3+otX9lZWVOO+20Ro11xJ4/D3Xio4xHH320qlOnTjX/CvDxn9NOO63Wf8Wqz78wVFVVVW3atKnqy1/+cq1jtGrVar/703KVPD53376/n65du1bNmjWr8CflSPLNb36zXsdO9c++OH9SysE4Pp0/aYyGHJdJqj71qU/ts05zPn+6w9VMXXbZZXn55Zdzzz33ZM6cOVm2bFkqKyvTp0+fjB49OhMmTEi7du0OaIxjjjkmc+bMyfTp0zNt2rS89NJLWbt2bbp165aBAwdmwoQJueCCC5roE9GclDw+v/zlL2fq1KmZP39+fv/732flypVZvXp1qqqqctxxx+Xss8/Ol770pYwfPz6dOnVq4k8G9eP8yeHI+ZMjwZF4/qyoqrK2JwAAQAlWKQQAAChE4AIAAChE4AIAAChE4AIAAChE4AIAAChE4AIAAChE4AIAAChE4AIAAChE4AIAAChE4AIAAChE4AIAAChE4AIAAChE4AIAAChE4AIAAChE4AIAAChE4AIAAChE4AIAAChE4AIAAChE4AIAAChE4AIAAChE4AIAAChE4AIAAChE4AIAAChE4AIAACjk/w8a53ml2LgSMgAAAABJRU5ErkJggg==\n"
},
"metadata": {
"image/png": {
"width": 430,
"height": 413
}
}
}
]
},
{
"metadata": {
"ExecuteTime": {
"start_time": "2022-10-12T14:54:29.651106Z",
"end_time": "2022-10-12T14:54:30.584008Z"
},
"trusted": true
},
"cell_type": "code",
"source": "gdf.plot(kind=\"hexbin\")",
"execution_count": 4,
"outputs": [
{
"output_type": "error",
"ename": "ValueError",
"evalue": "hexbin requires an x and y column",
"traceback": [
"\u001b[0;31m---------------------------------------------------------------------------\u001b[0m",
"\u001b[0;31mValueError\u001b[0m Traceback (most recent call last)",
"Cell \u001b[0;32mIn [4], line 1\u001b[0m\n\u001b[0;32m----> 1\u001b[0m gdf\u001b[38;5;241m.\u001b[39mplot(kind\u001b[38;5;241m=\u001b[39m\u001b[38;5;124m\"\u001b[39m\u001b[38;5;124mhexbin\u001b[39m\u001b[38;5;124m\"\u001b[39m)\n",
"File \u001b[0;32m~/miniconda3/envs/py310_momepy/lib/python3.10/site-packages/geopandas/plotting.py:966\u001b[0m, in \u001b[0;36mGeoplotAccessor.__call__\u001b[0;34m(self, *args, **kwargs)\u001b[0m\n\u001b[1;32m 963\u001b[0m \u001b[38;5;28;01mreturn\u001b[39;00m plot_dataframe(data, \u001b[38;5;241m*\u001b[39margs, \u001b[38;5;241m*\u001b[39m\u001b[38;5;241m*\u001b[39mkwargs)\n\u001b[1;32m 964\u001b[0m \u001b[38;5;28;01mif\u001b[39;00m kind \u001b[38;5;129;01min\u001b[39;00m \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39m_pandas_kinds:\n\u001b[1;32m 965\u001b[0m \u001b[38;5;66;03m# Access pandas plots\u001b[39;00m\n\u001b[0;32m--> 966\u001b[0m \u001b[38;5;28;01mreturn\u001b[39;00m \u001b[43mPlotAccessor\u001b[49m\u001b[43m(\u001b[49m\u001b[43mdata\u001b[49m\u001b[43m)\u001b[49m\u001b[43m(\u001b[49m\u001b[43mkind\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[43mkind\u001b[49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[38;5;241;43m*\u001b[39;49m\u001b[38;5;241;43m*\u001b[39;49m\u001b[43mkwargs\u001b[49m\u001b[43m)\u001b[49m\n\u001b[1;32m 967\u001b[0m \u001b[38;5;28;01melse\u001b[39;00m:\n\u001b[1;32m 968\u001b[0m \u001b[38;5;66;03m# raise error\u001b[39;00m\n\u001b[1;32m 969\u001b[0m \u001b[38;5;28;01mraise\u001b[39;00m \u001b[38;5;167;01mValueError\u001b[39;00m(\u001b[38;5;124mf\u001b[39m\u001b[38;5;124m\"\u001b[39m\u001b[38;5;132;01m{\u001b[39;00mkind\u001b[38;5;132;01m}\u001b[39;00m\u001b[38;5;124m is not a valid plot kind\u001b[39m\u001b[38;5;124m\"\u001b[39m)\n",
"File \u001b[0;32m~/miniconda3/envs/py310_momepy/lib/python3.10/site-packages/pandas/plotting/_core.py:946\u001b[0m, in \u001b[0;36mPlotAccessor.__call__\u001b[0;34m(self, *args, **kwargs)\u001b[0m\n\u001b[1;32m 944\u001b[0m \u001b[38;5;28;01mif\u001b[39;00m kind \u001b[38;5;129;01min\u001b[39;00m \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39m_dataframe_kinds:\n\u001b[1;32m 945\u001b[0m \u001b[38;5;28;01mif\u001b[39;00m \u001b[38;5;28misinstance\u001b[39m(data, ABCDataFrame):\n\u001b[0;32m--> 946\u001b[0m \u001b[38;5;28;01mreturn\u001b[39;00m \u001b[43mplot_backend\u001b[49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mplot\u001b[49m\u001b[43m(\u001b[49m\u001b[43mdata\u001b[49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[43mx\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[43mx\u001b[49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[43my\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[43my\u001b[49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[43mkind\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[43mkind\u001b[49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[38;5;241;43m*\u001b[39;49m\u001b[38;5;241;43m*\u001b[39;49m\u001b[43mkwargs\u001b[49m\u001b[43m)\u001b[49m\n\u001b[1;32m 947\u001b[0m \u001b[38;5;28;01melse\u001b[39;00m:\n\u001b[1;32m 948\u001b[0m \u001b[38;5;28;01mraise\u001b[39;00m \u001b[38;5;167;01mValueError\u001b[39;00m(\u001b[38;5;124mf\u001b[39m\u001b[38;5;124m\"\u001b[39m\u001b[38;5;124mplot kind \u001b[39m\u001b[38;5;132;01m{\u001b[39;00mkind\u001b[38;5;132;01m}\u001b[39;00m\u001b[38;5;124m can only be used for data frames\u001b[39m\u001b[38;5;124m\"\u001b[39m)\n",
"File \u001b[0;32m~/miniconda3/envs/py310_momepy/lib/python3.10/site-packages/pandas/plotting/_matplotlib/__init__.py:70\u001b[0m, in \u001b[0;36mplot\u001b[0;34m(data, kind, **kwargs)\u001b[0m\n\u001b[1;32m 68\u001b[0m ax \u001b[38;5;241m=\u001b[39m plt\u001b[38;5;241m.\u001b[39mgca()\n\u001b[1;32m 69\u001b[0m kwargs[\u001b[38;5;124m\"\u001b[39m\u001b[38;5;124max\u001b[39m\u001b[38;5;124m\"\u001b[39m] \u001b[38;5;241m=\u001b[39m \u001b[38;5;28mgetattr\u001b[39m(ax, \u001b[38;5;124m\"\u001b[39m\u001b[38;5;124mleft_ax\u001b[39m\u001b[38;5;124m\"\u001b[39m, ax)\n\u001b[0;32m---> 70\u001b[0m plot_obj \u001b[38;5;241m=\u001b[39m \u001b[43mPLOT_CLASSES\u001b[49m\u001b[43m[\u001b[49m\u001b[43mkind\u001b[49m\u001b[43m]\u001b[49m\u001b[43m(\u001b[49m\u001b[43mdata\u001b[49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[38;5;241;43m*\u001b[39;49m\u001b[38;5;241;43m*\u001b[39;49m\u001b[43mkwargs\u001b[49m\u001b[43m)\u001b[49m\n\u001b[1;32m 71\u001b[0m plot_obj\u001b[38;5;241m.\u001b[39mgenerate()\n\u001b[1;32m 72\u001b[0m plot_obj\u001b[38;5;241m.\u001b[39mdraw()\n",
"File \u001b[0;32m~/miniconda3/envs/py310_momepy/lib/python3.10/site-packages/pandas/plotting/_matplotlib/core.py:1289\u001b[0m, in \u001b[0;36mHexBinPlot.__init__\u001b[0;34m(self, data, x, y, C, **kwargs)\u001b[0m\n\u001b[1;32m 1288\u001b[0m \u001b[38;5;28;01mdef\u001b[39;00m \u001b[38;5;21m__init__\u001b[39m(\u001b[38;5;28mself\u001b[39m, data, x, y, C\u001b[38;5;241m=\u001b[39m\u001b[38;5;28;01mNone\u001b[39;00m, \u001b[38;5;241m*\u001b[39m\u001b[38;5;241m*\u001b[39mkwargs) \u001b[38;5;241m-\u001b[39m\u001b[38;5;241m>\u001b[39m \u001b[38;5;28;01mNone\u001b[39;00m:\n\u001b[0;32m-> 1289\u001b[0m \u001b[38;5;28;43msuper\u001b[39;49m\u001b[43m(\u001b[49m\u001b[43m)\u001b[49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[38;5;21;43m__init__\u001b[39;49m\u001b[43m(\u001b[49m\u001b[43mdata\u001b[49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[43mx\u001b[49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[43my\u001b[49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[38;5;241;43m*\u001b[39;49m\u001b[38;5;241;43m*\u001b[39;49m\u001b[43mkwargs\u001b[49m\u001b[43m)\u001b[49m\n\u001b[1;32m 1290\u001b[0m \u001b[38;5;28;01mif\u001b[39;00m is_integer(C) \u001b[38;5;129;01mand\u001b[39;00m \u001b[38;5;129;01mnot\u001b[39;00m \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39mdata\u001b[38;5;241m.\u001b[39mcolumns\u001b[38;5;241m.\u001b[39mholds_integer():\n\u001b[1;32m 1291\u001b[0m C \u001b[38;5;241m=\u001b[39m \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39mdata\u001b[38;5;241m.\u001b[39mcolumns[C]\n",
"File \u001b[0;32m~/miniconda3/envs/py310_momepy/lib/python3.10/site-packages/pandas/plotting/_matplotlib/core.py:1138\u001b[0m, in \u001b[0;36mPlanePlot.__init__\u001b[0;34m(self, data, x, y, **kwargs)\u001b[0m\n\u001b[1;32m 1136\u001b[0m MPLPlot\u001b[38;5;241m.\u001b[39m\u001b[38;5;21m__init__\u001b[39m(\u001b[38;5;28mself\u001b[39m, data, \u001b[38;5;241m*\u001b[39m\u001b[38;5;241m*\u001b[39mkwargs)\n\u001b[1;32m 1137\u001b[0m \u001b[38;5;28;01mif\u001b[39;00m x \u001b[38;5;129;01mis\u001b[39;00m \u001b[38;5;28;01mNone\u001b[39;00m \u001b[38;5;129;01mor\u001b[39;00m y \u001b[38;5;129;01mis\u001b[39;00m \u001b[38;5;28;01mNone\u001b[39;00m:\n\u001b[0;32m-> 1138\u001b[0m \u001b[38;5;28;01mraise\u001b[39;00m \u001b[38;5;167;01mValueError\u001b[39;00m(\u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39m_kind \u001b[38;5;241m+\u001b[39m \u001b[38;5;124m\"\u001b[39m\u001b[38;5;124m requires an x and y column\u001b[39m\u001b[38;5;124m\"\u001b[39m)\n\u001b[1;32m 1139\u001b[0m \u001b[38;5;28;01mif\u001b[39;00m is_integer(x) \u001b[38;5;129;01mand\u001b[39;00m \u001b[38;5;129;01mnot\u001b[39;00m \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39mdata\u001b[38;5;241m.\u001b[39mcolumns\u001b[38;5;241m.\u001b[39mholds_integer():\n\u001b[1;32m 1140\u001b[0m x \u001b[38;5;241m=\u001b[39m \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39mdata\u001b[38;5;241m.\u001b[39mcolumns[x]\n",
"\u001b[0;31mValueError\u001b[0m: hexbin requires an x and y column"
]
}
]
},
{
"metadata": {},
"cell_type": "markdown",
"source": "---------------------------------------"
},
{
"metadata": {
"ExecuteTime": {
"start_time": "2022-10-12T14:54:42.924008Z",
"end_time": "2022-10-12T14:54:42.936402Z"
},
"trusted": true
},
"cell_type": "code",
"source": "geometries = [Polygon([(0, 0), (1, 0), (1, 1)]), Point(1, 3)]\nx = [1, 2]\ny = [10, 20]\ngdf = geopandas.GeoDataFrame(\n {\"geometry\": geometries, \"x\": x, \"y\": y}, crs=\"EPSG:4326\"\n)\ndf = pandas.DataFrame({\"x\": x, \"y\": y})",
"execution_count": 5,
"outputs": []
},
{
"metadata": {
"ExecuteTime": {
"start_time": "2022-10-12T14:54:44.028476Z",
"end_time": "2022-10-12T14:54:44.043112Z"
},
"trusted": true
},
"cell_type": "code",
"source": "gdf",
"execution_count": 6,
"outputs": [
{
"output_type": "execute_result",
"execution_count": 6,
"data": {
"text/plain": " geometry x y\n0 POLYGON ((0.00000 0.00000, 1.00000 0.00000, 1.... 1 10\n1 POINT (1.00000 3.00000) 2 20",
"text/html": "<div>\n<style scoped>\n .dataframe tbody tr th:only-of-type {\n vertical-align: middle;\n }\n\n .dataframe tbody tr th {\n vertical-align: top;\n }\n\n .dataframe thead th {\n text-align: right;\n }\n</style>\n<table border=\"1\" class=\"dataframe\">\n <thead>\n <tr style=\"text-align: right;\">\n <th></th>\n <th>geometry</th>\n <th>x</th>\n <th>y</th>\n </tr>\n </thead>\n <tbody>\n <tr>\n <th>0</th>\n <td>POLYGON ((0.00000 0.00000, 1.00000 0.00000, 1....</td>\n <td>1</td>\n <td>10</td>\n </tr>\n <tr>\n <th>1</th>\n <td>POINT (1.00000 3.00000)</td>\n <td>2</td>\n <td>20</td>\n </tr>\n </tbody>\n</table>\n</div>"
},
"metadata": {}
}
]
},
{
"metadata": {
"ExecuteTime": {
"start_time": "2022-10-12T14:54:45.364327Z",
"end_time": "2022-10-12T14:54:45.421711Z"
},
"trusted": true
},
"cell_type": "code",
"source": "gdf.plot(kind=\"hexbin\", gridsize=10)",
"execution_count": 7,
"outputs": [
{
"output_type": "error",
"ename": "ValueError",
"evalue": "hexbin requires an x and y column",
"traceback": [
"\u001b[0;31m---------------------------------------------------------------------------\u001b[0m",
"\u001b[0;31mValueError\u001b[0m Traceback (most recent call last)",
"Cell \u001b[0;32mIn [7], line 1\u001b[0m\n\u001b[0;32m----> 1\u001b[0m gdf\u001b[38;5;241m.\u001b[39mplot(kind\u001b[38;5;241m=\u001b[39m\u001b[38;5;124m\"\u001b[39m\u001b[38;5;124mhexbin\u001b[39m\u001b[38;5;124m\"\u001b[39m, gridsize\u001b[38;5;241m=\u001b[39m\u001b[38;5;241m10\u001b[39m)\n",
"File \u001b[0;32m~/miniconda3/envs/py310_momepy/lib/python3.10/site-packages/geopandas/plotting.py:966\u001b[0m, in \u001b[0;36mGeoplotAccessor.__call__\u001b[0;34m(self, *args, **kwargs)\u001b[0m\n\u001b[1;32m 963\u001b[0m \u001b[38;5;28;01mreturn\u001b[39;00m plot_dataframe(data, \u001b[38;5;241m*\u001b[39margs, \u001b[38;5;241m*\u001b[39m\u001b[38;5;241m*\u001b[39mkwargs)\n\u001b[1;32m 964\u001b[0m \u001b[38;5;28;01mif\u001b[39;00m kind \u001b[38;5;129;01min\u001b[39;00m \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39m_pandas_kinds:\n\u001b[1;32m 965\u001b[0m \u001b[38;5;66;03m# Access pandas plots\u001b[39;00m\n\u001b[0;32m--> 966\u001b[0m \u001b[38;5;28;01mreturn\u001b[39;00m \u001b[43mPlotAccessor\u001b[49m\u001b[43m(\u001b[49m\u001b[43mdata\u001b[49m\u001b[43m)\u001b[49m\u001b[43m(\u001b[49m\u001b[43mkind\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[43mkind\u001b[49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[38;5;241;43m*\u001b[39;49m\u001b[38;5;241;43m*\u001b[39;49m\u001b[43mkwargs\u001b[49m\u001b[43m)\u001b[49m\n\u001b[1;32m 967\u001b[0m \u001b[38;5;28;01melse\u001b[39;00m:\n\u001b[1;32m 968\u001b[0m \u001b[38;5;66;03m# raise error\u001b[39;00m\n\u001b[1;32m 969\u001b[0m \u001b[38;5;28;01mraise\u001b[39;00m \u001b[38;5;167;01mValueError\u001b[39;00m(\u001b[38;5;124mf\u001b[39m\u001b[38;5;124m\"\u001b[39m\u001b[38;5;132;01m{\u001b[39;00mkind\u001b[38;5;132;01m}\u001b[39;00m\u001b[38;5;124m is not a valid plot kind\u001b[39m\u001b[38;5;124m\"\u001b[39m)\n",
"File \u001b[0;32m~/miniconda3/envs/py310_momepy/lib/python3.10/site-packages/pandas/plotting/_core.py:946\u001b[0m, in \u001b[0;36mPlotAccessor.__call__\u001b[0;34m(self, *args, **kwargs)\u001b[0m\n\u001b[1;32m 944\u001b[0m \u001b[38;5;28;01mif\u001b[39;00m kind \u001b[38;5;129;01min\u001b[39;00m \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39m_dataframe_kinds:\n\u001b[1;32m 945\u001b[0m \u001b[38;5;28;01mif\u001b[39;00m \u001b[38;5;28misinstance\u001b[39m(data, ABCDataFrame):\n\u001b[0;32m--> 946\u001b[0m \u001b[38;5;28;01mreturn\u001b[39;00m \u001b[43mplot_backend\u001b[49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mplot\u001b[49m\u001b[43m(\u001b[49m\u001b[43mdata\u001b[49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[43mx\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[43mx\u001b[49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[43my\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[43my\u001b[49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[43mkind\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[43mkind\u001b[49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[38;5;241;43m*\u001b[39;49m\u001b[38;5;241;43m*\u001b[39;49m\u001b[43mkwargs\u001b[49m\u001b[43m)\u001b[49m\n\u001b[1;32m 947\u001b[0m \u001b[38;5;28;01melse\u001b[39;00m:\n\u001b[1;32m 948\u001b[0m \u001b[38;5;28;01mraise\u001b[39;00m \u001b[38;5;167;01mValueError\u001b[39;00m(\u001b[38;5;124mf\u001b[39m\u001b[38;5;124m\"\u001b[39m\u001b[38;5;124mplot kind \u001b[39m\u001b[38;5;132;01m{\u001b[39;00mkind\u001b[38;5;132;01m}\u001b[39;00m\u001b[38;5;124m can only be used for data frames\u001b[39m\u001b[38;5;124m\"\u001b[39m)\n",
"File \u001b[0;32m~/miniconda3/envs/py310_momepy/lib/python3.10/site-packages/pandas/plotting/_matplotlib/__init__.py:70\u001b[0m, in \u001b[0;36mplot\u001b[0;34m(data, kind, **kwargs)\u001b[0m\n\u001b[1;32m 68\u001b[0m ax \u001b[38;5;241m=\u001b[39m plt\u001b[38;5;241m.\u001b[39mgca()\n\u001b[1;32m 69\u001b[0m kwargs[\u001b[38;5;124m\"\u001b[39m\u001b[38;5;124max\u001b[39m\u001b[38;5;124m\"\u001b[39m] \u001b[38;5;241m=\u001b[39m \u001b[38;5;28mgetattr\u001b[39m(ax, \u001b[38;5;124m\"\u001b[39m\u001b[38;5;124mleft_ax\u001b[39m\u001b[38;5;124m\"\u001b[39m, ax)\n\u001b[0;32m---> 70\u001b[0m plot_obj \u001b[38;5;241m=\u001b[39m \u001b[43mPLOT_CLASSES\u001b[49m\u001b[43m[\u001b[49m\u001b[43mkind\u001b[49m\u001b[43m]\u001b[49m\u001b[43m(\u001b[49m\u001b[43mdata\u001b[49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[38;5;241;43m*\u001b[39;49m\u001b[38;5;241;43m*\u001b[39;49m\u001b[43mkwargs\u001b[49m\u001b[43m)\u001b[49m\n\u001b[1;32m 71\u001b[0m plot_obj\u001b[38;5;241m.\u001b[39mgenerate()\n\u001b[1;32m 72\u001b[0m plot_obj\u001b[38;5;241m.\u001b[39mdraw()\n",
"File \u001b[0;32m~/miniconda3/envs/py310_momepy/lib/python3.10/site-packages/pandas/plotting/_matplotlib/core.py:1289\u001b[0m, in \u001b[0;36mHexBinPlot.__init__\u001b[0;34m(self, data, x, y, C, **kwargs)\u001b[0m\n\u001b[1;32m 1288\u001b[0m \u001b[38;5;28;01mdef\u001b[39;00m \u001b[38;5;21m__init__\u001b[39m(\u001b[38;5;28mself\u001b[39m, data, x, y, C\u001b[38;5;241m=\u001b[39m\u001b[38;5;28;01mNone\u001b[39;00m, \u001b[38;5;241m*\u001b[39m\u001b[38;5;241m*\u001b[39mkwargs) \u001b[38;5;241m-\u001b[39m\u001b[38;5;241m>\u001b[39m \u001b[38;5;28;01mNone\u001b[39;00m:\n\u001b[0;32m-> 1289\u001b[0m \u001b[38;5;28;43msuper\u001b[39;49m\u001b[43m(\u001b[49m\u001b[43m)\u001b[49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[38;5;21;43m__init__\u001b[39;49m\u001b[43m(\u001b[49m\u001b[43mdata\u001b[49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[43mx\u001b[49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[43my\u001b[49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[38;5;241;43m*\u001b[39;49m\u001b[38;5;241;43m*\u001b[39;49m\u001b[43mkwargs\u001b[49m\u001b[43m)\u001b[49m\n\u001b[1;32m 1290\u001b[0m \u001b[38;5;28;01mif\u001b[39;00m is_integer(C) \u001b[38;5;129;01mand\u001b[39;00m \u001b[38;5;129;01mnot\u001b[39;00m \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39mdata\u001b[38;5;241m.\u001b[39mcolumns\u001b[38;5;241m.\u001b[39mholds_integer():\n\u001b[1;32m 1291\u001b[0m C \u001b[38;5;241m=\u001b[39m \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39mdata\u001b[38;5;241m.\u001b[39mcolumns[C]\n",
"File \u001b[0;32m~/miniconda3/envs/py310_momepy/lib/python3.10/site-packages/pandas/plotting/_matplotlib/core.py:1138\u001b[0m, in \u001b[0;36mPlanePlot.__init__\u001b[0;34m(self, data, x, y, **kwargs)\u001b[0m\n\u001b[1;32m 1136\u001b[0m MPLPlot\u001b[38;5;241m.\u001b[39m\u001b[38;5;21m__init__\u001b[39m(\u001b[38;5;28mself\u001b[39m, data, \u001b[38;5;241m*\u001b[39m\u001b[38;5;241m*\u001b[39mkwargs)\n\u001b[1;32m 1137\u001b[0m \u001b[38;5;28;01mif\u001b[39;00m x \u001b[38;5;129;01mis\u001b[39;00m \u001b[38;5;28;01mNone\u001b[39;00m \u001b[38;5;129;01mor\u001b[39;00m y \u001b[38;5;129;01mis\u001b[39;00m \u001b[38;5;28;01mNone\u001b[39;00m:\n\u001b[0;32m-> 1138\u001b[0m \u001b[38;5;28;01mraise\u001b[39;00m \u001b[38;5;167;01mValueError\u001b[39;00m(\u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39m_kind \u001b[38;5;241m+\u001b[39m \u001b[38;5;124m\"\u001b[39m\u001b[38;5;124m requires an x and y column\u001b[39m\u001b[38;5;124m\"\u001b[39m)\n\u001b[1;32m 1139\u001b[0m \u001b[38;5;28;01mif\u001b[39;00m is_integer(x) \u001b[38;5;129;01mand\u001b[39;00m \u001b[38;5;129;01mnot\u001b[39;00m \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39mdata\u001b[38;5;241m.\u001b[39mcolumns\u001b[38;5;241m.\u001b[39mholds_integer():\n\u001b[1;32m 1140\u001b[0m x \u001b[38;5;241m=\u001b[39m \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39mdata\u001b[38;5;241m.\u001b[39mcolumns[x]\n",
"\u001b[0;31mValueError\u001b[0m: hexbin requires an x and y column"
]
}
]
}
],
"metadata": {
"kernelspec": {
"name": "conda-env-py310_momepy-py",
"display_name": "Python [conda env:py310_momepy]",
"language": "python"
},
"language_info": {
"name": "python",
"version": "3.10.6",
"mimetype": "text/x-python",
"codemirror_mode": {
"name": "ipython",
"version": 3
},
"pygments_lexer": "ipython3",
"nbconvert_exporter": "python",
"file_extension": ".py"
},
"gist": {
"id": "5639e9b475a78e1d67dc6a19ad0bcda0",
"data": {
"description": "hexbin_plot_error",
"public": true
}
},
"_draft": {
"nbviewer_url": "https://gist.github.com/5639e9b475a78e1d67dc6a19ad0bcda0"
}
},
"nbformat": 4,
"nbformat_minor": 5
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment