{ "cells": [ { "cell_type": "markdown", "id": "6e263166-aad2-42eb-9a15-9ea1bcca5d8b", "metadata": {}, "source": [ "## Using shapefiles" ] }, { "cell_type": "raw", "id": "42cc4d64-7eba-40d0-ad71-423bb7b70793", "metadata": { "editable": true, "raw_mimetype": "text/restructuredtext", "slideshow": { "slide_type": "" }, "tags": [], "vscode": { "languageId": "raw" } }, "source": [ "The code below reads shapefile data as a :ref:`data-sources-file` source using :func:`from_source()`. Internally the data is represented as a geopandas dataframe. To make this example work geopandas **needs** to be installed." ] }, { "cell_type": "code", "execution_count": 1, "id": "4825665a-8fc1-4c24-b0fb-3c485bd462c5", "metadata": { "editable": true, "slideshow": { "slide_type": "" }, "tags": [] }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "\u001b[33mWARNING: Error parsing requirements for nbsphinx: [Errno 2] No such file or directory: '/opt/homebrew/Caskroom/miniforge/base/envs/dev_ecc/lib/python3.10/site-packages/nbsphinx-0.9.3.dist-info/METADATA'\u001b[0m\u001b[33m\n", "\u001b[0m" ] } ], "source": [ "!pip install geopandas --quiet" ] }, { "cell_type": "code", "execution_count": 2, "id": "1ece2495-52e2-4678-8e9f-1a1d086a5975", "metadata": {}, "outputs": [ { "data": { "application/vnd.jupyter.widget-view+json": { "model_id": "", "version_major": 2, "version_minor": 0 }, "text/plain": [ " 0%| | 0/8 [00:00, ?it/s]" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stderr", "output_type": "stream", "text": [ "WARNING:earthkit.data.readers.archive:Ignoring archive member 'major_basins/' because it is not a directory or a file\n" ] } ], "source": [ "import earthkit.data as ekd\n", "ekd.download_example_file(\"major_basins.zip\")\n", "ds = ekd.from_source(\"file\", \"./major_basins.zip\")" ] }, { "cell_type": "markdown", "id": "88e33f98-b90c-4fc3-9e2f-dbd91475d03a", "metadata": {}, "source": [ "The data contains 254 features in total." ] }, { "cell_type": "code", "execution_count": 3, "id": "cfc6a578-210d-4f27-ba63-37348110ef71", "metadata": {}, "outputs": [ { "name": "stderr", "output_type": "stream", "text": [ "WARNING:fiona._env:/var/folders/93/w0p869rx17q98wxk83gn9ys40000gn/T/earthkit-data-cgr/file-48ce4ac918e854d69bd7776b38e05c25eb66b4235111d1fa9cf48f78e4294d94.d/major_basins/Major_Basins_of_the_World.shp contains polygon(s) with rings with invalid winding order. Autocorrecting them, but that shapefile should be corrected using ogr2ogr for example.\n" ] }, { "data": { "text/plain": [ "254" ] }, "execution_count": 3, "metadata": {}, "output_type": "execute_result" } ], "source": [ "len(ds)" ] }, { "cell_type": "code", "execution_count": 4, "id": "4cfcc157-6a9a-45d3-b6b8-a975428af7a2", "metadata": {}, "outputs": [ { "data": { "text/html": [ "
| \n", " | BASWC4_ID | \n", "ID | \n", "N | \n", "NAME | \n", "CONT | \n", "NN | \n", "FISH_ | \n", "ACRES | \n", "SOURCETHM | \n", "NO_COUNTRI | \n", "Q3 | \n", "CHECKED | \n", "LAEA_HA | \n", "LAEA_ACRES | \n", "LAEA_PRMTR | \n", "geometry | \n", "
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 0 | \n", "2 | \n", "408 | \n", "11 | \n", "Indigirka | \n", "2 | \n", "2011 | \n", "0 | \n", "0.002 | \n", "geoff2.dbf | \n", "0 | \n", "None | \n", "-1 | \n", "0.000000e+00 | \n", "0.0 | \n", "0.0 | \n", "POLYGON ((139.68730 63.93320, 139.82028 64.030... | \n", "
| 1 | \n", "3 | \n", "436 | \n", "14 | \n", "Kolyma | \n", "2 | \n", "2014 | \n", "29 | \n", "0.003 | \n", "geoff2.dbf | \n", "0 | \n", "None | \n", "-1 | \n", "0.000000e+00 | \n", "0.0 | \n", "0.0 | \n", "POLYGON ((153.32126 70.87090, 153.33440 70.873... | \n", "
| 2 | \n", "4 | \n", "38 | \n", "36 | \n", "Yenisey | \n", "2 | \n", "2036 | \n", "42 | \n", "0.007 | \n", "final_draft22.db | \n", "0 | \n", "International catchments | \n", "-1 | \n", "1.916399e+08 | \n", "473542164.8 | \n", "10368035.7 | \n", "POLYGON ((84.03548 62.48704, 84.03149 62.49136... | \n", "
| 3 | \n", "5 | \n", "148 | \n", "78 | \n", "Tana | \n", "0 | \n", "0 | \n", "0 | \n", "0.000 | \n", "final_draft22.db | \n", "0 | \n", "International catchments | \n", "-1 | \n", "1.698563e+06 | \n", "4197148.9 | \n", "750506.4 | \n", "POLYGON ((25.51510 68.64600, 25.40198 68.62086... | \n", "
| 4 | \n", "6 | \n", "104 | \n", "11 | \n", "Mackenzie | \n", "5 | \n", "5011 | \n", "53 | \n", "0.006 | \n", "final_draft22.db | \n", "0 | \n", "None | \n", "5 | \n", "0.000000e+00 | \n", "0.0 | \n", "0.0 | \n", "POLYGON ((-136.92070 68.20810, -136.88443 68.2... | \n", "
| ... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "
| 249 | \n", "251 | \n", "0 | \n", "0 | \n", "Void | \n", "0 | \n", "0 | \n", "0 | \n", "0.000 | \n", "None | \n", "0 | \n", "International catchments | \n", "5 | \n", "7.292745e+06 | \n", "18020373.2 | \n", "1867904.1 | \n", "POLYGON ((33.95228 -6.69550, 33.95243 -6.70446... | \n", "
| 250 | \n", "279 | \n", "0 | \n", "0 | \n", "Mangoky | \n", "0 | \n", "0 | \n", "0 | \n", "0.000 | \n", "None | \n", "0 | \n", "None | \n", "5 | \n", "4.310280e+06 | \n", "10650702.0 | \n", "2127189.5 | \n", "POLYGON ((46.82328 -21.32725, 46.82447 -21.336... | \n", "
| 251 | \n", "1 | \n", "39 | \n", "16 | \n", "Lena | \n", "2 | \n", "2016 | \n", "43 | \n", "0.009 | \n", "final_draft22.db | \n", "0 | \n", "None | \n", "-1 | \n", "1.016640e+08 | \n", "251211777.3 | \n", "13423660.9 | \n", "POLYGON ((102.72000 65.76000, 102.85008 65.906... | \n", "
| 252 | \n", "10 | \n", "37 | \n", "24 | \n", "Ob | \n", "2 | \n", "2024 | \n", "43 | \n", "0.010 | \n", "final_draft22.db | \n", "0 | \n", "International catchments | \n", "-1 | \n", "3.070918e+08 | \n", "758823924.1 | \n", "13761196.3 | \n", "POLYGON ((84.03548 62.48704, 84.06540 62.45478... | \n", "
| 253 | \n", "59 | \n", "214 | \n", "108 | \n", "Connecticut | \n", "0 | \n", "0 | \n", "0 | \n", "0.000 | \n", "final_draft22.db | \n", "0 | \n", "International catchments | \n", "5 | \n", "2.775322e+06 | \n", "6857819.8 | \n", "1427586.8 | \n", "POLYGON ((-71.16196 45.24421, -71.12241 45.182... | \n", "
254 rows × 16 columns
\n", "