{ "cells": [ { "cell_type": "markdown", "id": "2a687cb1-1274-4c3e-94b6-8220c6509e96", "metadata": {}, "source": [ "# Plotting" ] }, { "cell_type": "code", "execution_count": 1, "id": "0c88bb56-3951-4c84-b7b7-b30757b7d0fe", "metadata": { "execution": { "iopub.execute_input": "2022-09-15T05:09:12.596965Z", "iopub.status.busy": "2022-09-15T05:09:12.596749Z", "iopub.status.idle": "2022-09-15T05:09:13.947892Z", "shell.execute_reply": "2022-09-15T05:09:13.947404Z" } }, "outputs": [], "source": [ "import starepandas\n", "import pandas\n", "import geopandas" ] }, { "cell_type": "code", "execution_count": 2, "id": "39874b42-065b-4d19-bc73-5225c45ebd0a", "metadata": { "execution": { "iopub.execute_input": "2022-09-15T05:09:13.951265Z", "iopub.status.busy": "2022-09-15T05:09:13.950804Z", "iopub.status.idle": "2022-09-15T05:09:13.958814Z", "shell.execute_reply": "2022-09-15T05:09:13.958313Z" } }, "outputs": [ { "data": { "text/plain": [ "'0.6.0+2.g3287417.dirty'" ] }, "execution_count": 2, "metadata": {}, "output_type": "execute_result" } ], "source": [ "starepandas.__version__" ] }, { "cell_type": "code", "execution_count": 3, "id": "513dce01-bc80-4450-a281-cebbd69392ef", "metadata": { "execution": { "iopub.execute_input": "2022-09-15T05:09:13.961354Z", "iopub.status.busy": "2022-09-15T05:09:13.961103Z", "iopub.status.idle": "2022-09-15T05:09:13.964693Z", "shell.execute_reply": "2022-09-15T05:09:13.964109Z" } }, "outputs": [], "source": [ "cities = ['Buenos Aires', 'Brasilia', 'Santiago', 'Bogota', 'Caracas']\n", "countries = ['Argentina', 'Brazil', 'Chile', 'Colombia', 'Venezuela']\n", "latitudes = [-34.58, -15.78, -33.45, 4.60, 10.48]\n", "longitudes = [-58.66, -47.91, -70.66, -74.08, -66.86]\n", "data = {'City': cities, 'Country': countries,\n", " 'Latitude': latitudes, 'Longitude': longitudes}" ] }, { "cell_type": "code", "execution_count": 4, "id": "f9086c7a-d3a2-4e36-9d08-fdfb3cc794c0", "metadata": { "execution": { "iopub.execute_input": "2022-09-15T05:09:13.966990Z", "iopub.status.busy": "2022-09-15T05:09:13.966723Z", "iopub.status.idle": "2022-09-15T05:09:13.980803Z", "shell.execute_reply": "2022-09-15T05:09:13.980260Z" } }, "outputs": [], "source": [ "df = pandas.DataFrame(data)\n", "geom = geopandas.points_from_xy(df.Longitude, df.Latitude)\n", "gdf = geopandas.GeoDataFrame(df, geometry=geom)\n", "\n", "stare = starepandas.sids_from_gdf(gdf, level=5)\n", "sdf = starepandas.STAREDataFrame(gdf)\n", "sdf.set_sids(stare, inplace=True)\n", "\n", "trixels = sdf.make_trixels()\n", "trixel_df = sdf.set_trixels(trixels, inplace=False)" ] }, { "cell_type": "code", "execution_count": 5, "id": "fa5a0676-f8f4-4718-b0bc-dc4a687a66a2", "metadata": { "execution": { "iopub.execute_input": "2022-09-15T05:09:13.983403Z", "iopub.status.busy": "2022-09-15T05:09:13.983028Z", "iopub.status.idle": "2022-09-15T05:09:14.458935Z", "shell.execute_reply": "2022-09-15T05:09:14.458253Z" } }, "outputs": [ { "data": { "text/plain": [ "" ] }, "execution_count": 5, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "trixel_df.plot(trixels=False, boundary=False)" ] }, { "cell_type": "code", "execution_count": 6, "id": "c90aa74d-2575-448b-946a-07d240e609c6", "metadata": { "execution": { "iopub.execute_input": "2022-09-15T05:09:14.461739Z", "iopub.status.busy": "2022-09-15T05:09:14.461498Z", "iopub.status.idle": "2022-09-15T05:09:14.468045Z", "shell.execute_reply": "2022-09-15T05:09:14.467613Z" } }, "outputs": [ { "data": { "text/plain": [ "0 POINT (-58.66000 -34.58000)\n", "1 POINT (-47.91000 -15.78000)\n", "2 POINT (-70.66000 -33.45000)\n", "3 POINT (-74.08000 4.60000)\n", "4 POINT (-66.86000 10.48000)\n", "Name: geometry, dtype: geometry" ] }, "execution_count": 6, "metadata": {}, "output_type": "execute_result" } ], "source": [ "trixel_df[trixel_df._geometry_column_name]" ] }, { "cell_type": "code", "execution_count": 7, "id": "9a5a0420-61e5-467f-b272-62d74f98ba88", "metadata": { "execution": { "iopub.execute_input": "2022-09-15T05:09:14.469867Z", "iopub.status.busy": "2022-09-15T05:09:14.469656Z", "iopub.status.idle": "2022-09-15T05:09:14.472892Z", "shell.execute_reply": "2022-09-15T05:09:14.472462Z" } }, "outputs": [ { "data": { "text/plain": [ "'geometry'" ] }, "execution_count": 7, "metadata": {}, "output_type": "execute_result" } ], "source": [ "trixel_df._geometry_column_name" ] }, { "cell_type": "code", "execution_count": 8, "id": "ba94d9b4-8422-4dc2-b693-2588da5aea68", "metadata": { "execution": { "iopub.execute_input": "2022-09-15T05:09:14.474734Z", "iopub.status.busy": "2022-09-15T05:09:14.474526Z", "iopub.status.idle": "2022-09-15T05:09:14.477324Z", "shell.execute_reply": "2022-09-15T05:09:14.476884Z" } }, "outputs": [], "source": [ "import shapely\n", "polygon = shapely.geometry.Polygon([(0, 0), (1, 1), (1, 0)])" ] }, { "cell_type": "code", "execution_count": 9, "id": "e8f33b9c-05ee-489e-971b-5e588ac57c4f", "metadata": { "execution": { "iopub.execute_input": "2022-09-15T05:09:14.479033Z", "iopub.status.busy": "2022-09-15T05:09:14.478841Z", "iopub.status.idle": "2022-09-15T05:09:14.487449Z", "shell.execute_reply": "2022-09-15T05:09:14.486892Z" } }, "outputs": [ { "data": { "text/plain": [ "array([4430697608402436102, 4430838345890791430, 4430979083379146758])" ] }, "execution_count": 9, "metadata": {}, "output_type": "execute_result" } ], "source": [ "starepandas.sids_from_ring(polygon.exterior, force_ccw=True, level=6)" ] }, { "cell_type": "code", "execution_count": 10, "id": "220e28b9-a300-4930-9d41-66c2a889eba8", "metadata": { "execution": { "iopub.execute_input": "2022-09-15T05:09:14.489770Z", "iopub.status.busy": "2022-09-15T05:09:14.489454Z", "iopub.status.idle": "2022-09-15T05:09:14.494664Z", "shell.execute_reply": "2022-09-15T05:09:14.494315Z" } }, "outputs": [ { "data": { "image/svg+xml": [ "" ], "text/plain": [ "" ] }, "execution_count": 10, "metadata": {}, "output_type": "execute_result" } ], "source": [ "polygon.exterior" ] }, { "cell_type": "code", "execution_count": 11, "id": "03071cc2-0d4a-41c3-b2ba-97ae966e942b", "metadata": { "execution": { "iopub.execute_input": "2022-09-15T05:09:14.496584Z", "iopub.status.busy": "2022-09-15T05:09:14.496366Z", "iopub.status.idle": "2022-09-15T05:09:14.500551Z", "shell.execute_reply": "2022-09-15T05:09:14.499995Z" } }, "outputs": [ { "data": { "image/svg+xml": [ "" ], "text/plain": [ "" ] }, "execution_count": 11, "metadata": {}, "output_type": "execute_result" } ], "source": [ "shapely.geometry.LinearRing(polygon.exterior.coords[::-1])" ] }, { "cell_type": "code", "execution_count": null, "id": "951d4a3a-7528-455f-8132-c630a19052a1", "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.10.4" } }, "nbformat": 4, "nbformat_minor": 5 }