{ "cells": [ { "cell_type": "code", "execution_count": 1, "metadata": {}, "outputs": [], "source": [ "!pip3 -q install git+http://github.com/SebMilardo/pychoropleth" ] }, { "cell_type": "code", "execution_count": 2, "metadata": {}, "outputs": [], "source": [ "from pychoropleth import choropleth, create_grid, add_cell_id, bounds_to_polygon\n", "import pandas as pd\n", "import numpy as np\n", "import random" ] }, { "cell_type": "code", "execution_count": 3, "metadata": {}, "outputs": [], "source": [ "# create some random data\n", "random.seed(27)\n", "size = (10000,)\n", "lon = np.random.normal(loc=15.11, scale=0.01, size=size)\n", "lat = np.random.normal(loc=37.095, scale=0.1, size=size)\n", "data = np.random.uniform(low=0, high=100, size=size)\n", "df = pd.DataFrame(zip(lat,lon,data), columns=[\"latitude\",\"longitude\",\"data\"])" ] }, { "cell_type": "code", "execution_count": 4, "metadata": {}, "outputs": [ { "data": { "text/html": [ "\n", " \n", " " ], "text/plain": [ "" ] }, "execution_count": 4, "metadata": {}, "output_type": "execute_result" } ], "source": [ "bounds = bounds_to_polygon([15.0, 37.0,15.12, 37.11])\n", "choropleth(df, grid_size=200, vmax=5, cmap=\"plasma\", bounds=bounds, latitude=\"latitude\", \n", " longitude=\"longitude\", tiles='cartodb_positron', column=\"data\", crs=None, figsize=[10,10])" ] }, { "cell_type": "code", "execution_count": 5, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
latitudelongitudedatageometry
cell_id
(0, 15)111POLYGON ((15.07514757880569 36.86284762884605,...
(0, 18)111POLYGON ((15.07517407795653 36.88989145904608,...
(0, 19)111POLYGON ((15.07518291886726 36.89890604169442,...
(0, 24)222POLYGON ((15.07522718245621 36.94397874924348,...
(0, 25)222POLYGON ((15.07523604699382 36.95299324960619,...
...............
(6, 46)111POLYGON ((15.14298293170501 37.14223234470549,...
(6, 51)111POLYGON ((15.14306785801639 37.18730309746841,...
(6, 52)111POLYGON ((15.1430848659688 37.19631720676224, ...
(6, 54)111POLYGON ((15.14311890459198 37.21434538408163,...
(6, 58)111POLYGON ((15.14318707281081 37.25040157361436,...
\n", "

366 rows × 4 columns

\n", "
" ], "text/plain": [ " latitude longitude data \\\n", "cell_id \n", "(0, 15) 1 1 1 \n", "(0, 18) 1 1 1 \n", "(0, 19) 1 1 1 \n", "(0, 24) 2 2 2 \n", "(0, 25) 2 2 2 \n", "... ... ... ... \n", "(6, 46) 1 1 1 \n", "(6, 51) 1 1 1 \n", "(6, 52) 1 1 1 \n", "(6, 54) 1 1 1 \n", "(6, 58) 1 1 1 \n", "\n", " geometry \n", "cell_id \n", "(0, 15) POLYGON ((15.07514757880569 36.86284762884605,... \n", "(0, 18) POLYGON ((15.07517407795653 36.88989145904608,... \n", "(0, 19) POLYGON ((15.07518291886726 36.89890604169442,... \n", "(0, 24) POLYGON ((15.07522718245621 36.94397874924348,... \n", "(0, 25) POLYGON ((15.07523604699382 36.95299324960619,... \n", "... ... \n", "(6, 46) POLYGON ((15.14298293170501 37.14223234470549,... \n", "(6, 51) POLYGON ((15.14306785801639 37.18730309746841,... \n", "(6, 52) POLYGON ((15.1430848659688 37.19631720676224, ... \n", "(6, 54) POLYGON ((15.14311890459198 37.21434538408163,... \n", "(6, 58) POLYGON ((15.14318707281081 37.25040157361436,... \n", "\n", "[366 rows x 4 columns]" ] }, "execution_count": 5, "metadata": {}, "output_type": "execute_result" } ], "source": [ "create_grid(df, grid_size=1000)" ] }, { "cell_type": "code", "execution_count": 6, "metadata": {}, "outputs": [], "source": [ "a,b, = add_cell_id(df,10)" ] }, { "cell_type": "code", "execution_count": 7, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
latitudelongitudedatageometrycell_id
037.02600415.0952367.825212POINT (15.09523638316216 37.02600398150317)(177, 3310)
137.07286215.12731866.173434POINT (15.12731811121879 37.07286169126254)(461, 3830)
237.04164515.12510061.445199POINT (15.12510007143286 37.04164518165946)(442, 3483)
337.04350515.1118845.569417POINT (15.11188445414189 37.04350543862972)(325, 3504)
436.95536215.10713623.307228POINT (15.1071356126598 36.95536196068289)(283, 2526)
..................
999537.10610015.10107819.076205POINT (15.10107755432147 37.10610026710734)(228, 4198)
999637.21561615.09415824.962796POINT (15.09415782743207 37.21561592522335)(165, 5413)
999737.27891215.10632050.637496POINT (15.10631993048477 37.2789118646031)(272, 6115)
999837.17772915.1064384.966513POINT (15.10643803659985 37.17772885943006)(275, 4993)
999937.01231115.13342769.098989POINT (15.13342737029825 37.01231068449707)(517, 3158)
\n", "

10000 rows × 5 columns

\n", "
" ], "text/plain": [ " latitude longitude data \\\n", "0 37.026004 15.095236 7.825212 \n", "1 37.072862 15.127318 66.173434 \n", "2 37.041645 15.125100 61.445199 \n", "3 37.043505 15.111884 5.569417 \n", "4 36.955362 15.107136 23.307228 \n", "... ... ... ... \n", "9995 37.106100 15.101078 19.076205 \n", "9996 37.215616 15.094158 24.962796 \n", "9997 37.278912 15.106320 50.637496 \n", "9998 37.177729 15.106438 4.966513 \n", "9999 37.012311 15.133427 69.098989 \n", "\n", " geometry cell_id \n", "0 POINT (15.09523638316216 37.02600398150317) (177, 3310) \n", "1 POINT (15.12731811121879 37.07286169126254) (461, 3830) \n", "2 POINT (15.12510007143286 37.04164518165946) (442, 3483) \n", "3 POINT (15.11188445414189 37.04350543862972) (325, 3504) \n", "4 POINT (15.1071356126598 36.95536196068289) (283, 2526) \n", "... ... ... \n", "9995 POINT (15.10107755432147 37.10610026710734) (228, 4198) \n", "9996 POINT (15.09415782743207 37.21561592522335) (165, 5413) \n", "9997 POINT (15.10631993048477 37.2789118646031) (272, 6115) \n", "9998 POINT (15.10643803659985 37.17772885943006) (275, 4993) \n", "9999 POINT (15.13342737029825 37.01231068449707) (517, 3158) \n", "\n", "[10000 rows x 5 columns]" ] }, "execution_count": 7, "metadata": {}, "output_type": "execute_result" } ], "source": [ "b" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [] } ], "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.7.3" } }, "nbformat": 4, "nbformat_minor": 2 }