-
Geoconda
Geoconda
Geoconda on kokoelma Python-paketteja, jotka helpottavat Python-skriptien kehittämistä geoinformatiikan sovelluksiin. Se sisältää seuraavat Python-paketit:
- access - resurssien spatiaalisen saavutettavuuden laskentaan. UUSI 2025
- async-tiff - nopea TIFF-tiedostojen lukija. UUSI 2026
- boto3 - tiedostojen käsittelyyn S3-tallennuksessa, esimerkiksi Altaassa. Allas S3 -esimerkki CSC:n geocomputing-GitHubissa.
- cartopy - karttojen piirtämiseen.
- cdsapi - pääsy Copernicus Climate Data Storeen. UUSI 2026
- cfgrib - GRIB-tiedostojen mapittamiseen NetCDF Common Data Modeliin
- contextily - karttatiilien hakemiseen internetistä. UUSI 2025
- copc-lib - luku- ja kirjoitusrajapinta Cloud Optimized Point Clouds (COPC) -aineistoille. Vain geoconda 3.10.9:ssä ja 3.14.3:ssa.
- dask - tarjoaa edistynyttä rinnakkaisuutta analytiikkaan mahdollistaen suorituskyvyn suuressa mittakaavassa, mukaan lukien dask-geopandas, Dask-ML ja Dask JupyterLab extension.
- Dask-rinnakkaistusesimerkki CSC:n geocomputing-GitHubissa.
- STAC-esimerkki CSC:n geocomputing-GitHubissa.
- dask-image - kuvankäsittelyä Dask Arraysilla. UUSI 2025
- datashader - big datan renderöintiin. UUSI 2026
- descartes - Shapely- tai GeoJSON-tyyppisten geometristen objektien käyttöön matplotlib-polkuina ja -paikkoina. Ei versiossa 3.14.3.
- duckdb - analyyttisten SQL-kyselyiden nopeaan suorittamiseen. UUSI 2025
- esda - eksploratiiviseen spatiaaliseen data-analyysiin. UUSI 2025
- fiona - spatiaalisten datatiedostojen lukemiseen ja kirjoittamiseen.
- geoalchemy2 - tarjoaa SQLAlchemy-laajennuksia spatiaalisten tietokantojen, ensisijaisesti PostGISin, kanssa työskentelyyn.
- geocube - geopandas-vektoridatan muuntamiseen rasteroiduksi xarray-dataksi. UUSI 2025
- geodatasets - spatiaalisen data esimerkkitiedostojen lataamiseen ja välimuistiin tallentamiseen. UUSI 2025
- geopandas - GeoPandas laajentaa pandas-kirjaston käyttämiä tietotyyppejä.
- geoparquet-io - nopea GeoParquet-tiedostojen lukija. UUSI 2026
- geoplot - paikkatietojen visualisointikirjasto. Vain versiossa 3.12.10
- geopy - asiakasohjelma useille suosituille geokoodauksen verkkopalveluille.
- geoviews - maantieteellisiin visualisointeihin HoloViewsille. UUSI 2026
- geo2ml - spatiaalisen datan valmisteluun koneoppimista varten. Ei versiossa 3.14.3.
- Google Earth Engine API - katso, miten GEE-tunnistautuminen otetaan käyttöön Puhdissa.
- holoviews - suurten aineistojen visualisointiin. UUSI 2026
- h3pandas - heksagonaaliseen paikkatietoindeksointijärjestelmään Pandasin ja GeoPandasin kanssa.
- h3-py - Python-sidokset H3:lle, joka on hierarkkinen heksagonaalinen paikkatietoindeksointijärjestelmä. UUSI 2025
- h5py - HDF5-tiedostoille. UUSI 2026
- icechunk - pilvinatiivi transaktionaalinen tensoritallennusmoottori. UUSI 2026
- igraph - nopeaan reititykseen. Reititysesimerkkejä CSC:n geocomputing-GitHubissa
- laspy - .LAS LIDAR -tiedostojen lukemiseen, muokkaamiseen ja luomiseen.
- leafmap - paikkatietoanalyysiin ja interaktiiviseen kartoitukseen Jupyter-ympäristössä.
- lidar - pinnan painanteiden sisäkkäisen hierarkian rajaamiseen digitaalisissa korkeusmalleissa (DEM).
- lonboard - nopeaan, interaktiiviseen paikkatietovisualisointiin Jupyterissä. UUSI 2026
- metpy - säätiedon lukemiseen, visualisointiin ja laskentaan.
- movingpandas - trajektoridatalle
- networkx - monimutkaisten verkostojen rakenteen, dynamiikan ja toimintojen luomiseen, käsittelyyn ja tutkimiseen. Reititysesimerkkejä CSC:n geocomputing-GitHubissa
- papermill - Jupyter Notebookien parametrisoimiseen ja suorittamiseen. UUSI 2026
- pot - optimointiongelmien ratkaisijoita, jotka liittyvät optimaaliseen kuljetukseen signaali-, kuvankäsittely- ja koneoppimissovelluksissa. UUSI 2026
- pyproj - suorittaa kartografisia muunnoksia ja geodeettisia laskentoja.
- pyogrio - vektorimuotoinen spatiaalisten vektoritiedostomuotojen I/O käyttäen GDAL/OGR:ää.
- obstore - nopeaan pääsyyn S3:een, Google Cloud Storageen ja Azure Storageen. UUSI 2026
- odc-stac - STAC-data xarrayksi, STAC-esimerkki CSC:n geocomputing-GitHubissa. UUSI 2026
- openeo - yhteyden muodostamiseen Maan havainnointiin tarkoitettuihin pilvitaustajärjestelmiin yksinkertaisella ja yhtenäisellä tavalla.
- open3d - 3D-datan käsittelyyn
- osmnx - spatiaalisten geometrioiden lataamiseen sekä katuverkkojen muodostamiseen, projisointiin, visualisointiin ja analysointiin OpenStreetMapin API-rajapinnoista. Reititysesimerkkejä CSC:n geocomputing-GitHubissa Ei geoconda-3.11.9:ssä.
- owslib - datan hakemiseen Open Geospatial Consortiumin (OGC) verkkopalveluista
- pandana - verkostoanalyysiin. Vain versiossa 3.12.10
- pcraster - spatiotemporaaliseen ympäristömallinnukseen.
- psycopg2 - PostgreSQL-tietokantasovitin Pythonille.
- pyrosm - OpenStreetMap-datan tuomiseen Geopandas GeoDataFrameihin. Vain versiossa 3.12.10
- python-pdal - PDAL Python -laajennus lidar-datalle
- Py6S - Python-rajapinta Second Simulation of the Satellite Signal in the Solar Spectrum (6S) -ilmakehän säteilynsiirtomalliin. Ei versiossa 3.14.3.
- pysal - spatiaalisen analyysin toimintoja.
- pdal - lidar-datalle
- pyntcloud - 3D-pistepilvien käsittelyyn. Ei versiossa 3.14.3.
- pysheds - valuma-alueiden rajaukseen. UUSI 2025
- pystac-client - STAC-katalogien ja API-rajapintojen kanssa työskentelyyn. STAC-esimerkki CSC:n geocomputing-GitHubissa.
- python-cdo - skriptausrajapinta CDO:lle (Climate Data Operators).
- rasterio - pääsy paikkatietorasteridataan.
- rasterstats - paikkatietorasteriaineistojen yhteenvedon tekemiseen vektorigeometrioiden perusteella. Se sisältää funktioita vyöhyketilastoihin ja interpoloituihin pistekyselyihin. rasterstats-esimerkki CSC:n geocomputing-GitHubissa
- rio-cogeo - Cloud Optimized GeoTIFF (COG) -tiedostojen luontiin. UUSI 2025
- rtree - spatiaaliseen indeksointiin ja hakuun.
- r5py - nopeaan realistiseen reititykseen multimodaalisissa liikenneverkoissa, katso alta miten muisti asetetaan oikein r5py:tä varten.
- shap - minkä tahansa koneoppimismallin tulosten selittämiseen. UUSI 2026
- sentinelhub - uusien Sentinel Hub -palveluiden käyttöön.
- sentinelsat - Sentinel-kuvien lataamiseen, sentinelsat-esimerkki CSC:n geocomputing-GitHubissa. Ei versiossa 3.14.3.
- shapely - geometristen objektien käsittelyyn ja analysointiin karteesisessa tasossa.
- scikit-gstat - variogrammianalyysiin. UUSI 2026
- scikit-learn - koneoppimista Pythonille. Paikkatietokoneoppimisen scikit-learn (shallow learning) -harjoitukset
- skimage - kuvankäsittelyalgoritmeja.
- scipy - sisältää pandasin, numpyn, matplotlibin jne.
- sparse - harvoille taulukoille. UUSI 2026
- spectral - hyperspektrikuvadatan käsittelyyn. UUSI 2026
- stackstac - STAC-data xarrayksi, STAC-esimerkki CSC:n geocomputing-GitHubissa. Tätä ei ole päivitetty viime aikoina, käytä mieluummin
odc-stac. - swiftclient, keystoneclient - tiedostojen käsittelyyn SWIFT-tallennuksessa, esimerkiksi Altaassa. Allas Swift -esimerkki CSC:n geocomputing-GitHubissa.
- urbanaccess - GTFS-joukkoliikenne- ja OpenStreetMap-jalankulkuverkkojen laskentaan saavutettavuusanalyysiä varten. Vain versiossa 3.12.10
- whiteboxtools - laaja-alaiseen paikkatietodatan käsittelyyn, monet työkalut toimivat rinnakkain, katso lisätietoja CSC:n whiteboxtools-sivulta. Versio 3.14.3 sisältää myös Whitebox Workflows for Pythonin.
- xarray - moniulotteiselle rasteridatalle, sisältäen rioxarray. STAC-esimerkki CSC:n geocomputing-GitHubissa.
- cf_xarray - xarray-objekteissa olevien Climate and Forecast metadata convention -attribuuttien tulkintaan. UUSI 2026
- flox - nopeat GroupBy-reduktiot Xarraylle. UUSI 2026
- xarray-spatial - tehokkaita yleisiä rasterianalyysifunktioita xarraylle. xarray-spatial-esimerkki CSC:n geocomputing-GitHubissa
- xarray_leaflet - xarray-laajennus tiilikarttojen piirtämiseen. Ei versioissa 3.12.10 ja 3.14.3
- xclim - ilmastoanalyysiin. UUSI 2026
- xgboost - Gradient Boosting -koneoppimisalgoritmit. UUSI 2026
-
zarr - datan lukemiseen ja kirjoittamiseen Zarr-muotoon. UUSI 2026
-
Ja paljon muuta, saat täydellisen listan komennolla:
list-packages
Lisäksi geoconda sisältää:
- jupyter - Jupyter Notebookit ja JupyterLabin. Käytä Puhdin selainkäyttöliittymästä ja Jupyter-sovelluksesta. Sisältää Dask Extensionin ja Resource usage Extensionin.
- spyder - Scientific Python Development Environment graafisella käyttöliittymällä (samankaltainen kuin RStudio R:lle). Ei versiossa 3.14.3.
- GDAL/OGR komentorivityökalut
- GMT The Generic Mapping Tools
- landsatlinks - Landsat Collection 2 Level 1 -tuotenippujen lataus-URL-osoitteiden luomiseen USGS/EROS Machine-to-Machine API:n avulla. Käytä komentoa
python -m landsatlinks. Ei versiossa 3.14.3. - PDAL - Point Data Abstraction Library
- ncview netcdf-tiedostojen visualisointiin. Ei versiossa 3.14.3. Käytä
ncview-moduulia. - psy-view netcdf-tiedostojen visualisointiin. Ei versiossa 3.14.3.
Pythonissa on useita paketteja rinnakkaislaskentaan, esimerkiksi multiprocessing, joblib ja dask. Puhdin Python-esimerkeissämme on esimerkkejä siitä, miten näitä eri rinnakkaistamiskirjastoja voidaan hyödyntää.
Jos mielestäsi jokin tärkeä Pythonin GIS-paketti puuttuu tästä, voit pyytää asennusta CSC:n asiakastuesta.
Saatavuus
geoconda-moduuli on saatavilla:
- 3.14.4 (Python 3.14.4, PDAL 2.10.0, GDAL 3.12.2, luotu toukokuussa 2026), LUMIssa
- 3.14.3 (Python 3.14.3, PDAL 2.10.0, GDAL 3.12.2, luotu maaliskuussa 2026), Puhdissa ja Mahdissa
- 3.12.10 (Python 3.12.10, PDAL 2.8.4, GDAL 3.10.2, luotu huhtikuussa 2025), Puhdissa.
- 3.11.10 (Python 3.11.10, PDAL 2.8.0, GDAL 3.9.2, luotu marraskuussa 2024), Puhdissa ja LUMIssa.
- 3.11.9 (Python 3.11.9, PDAL 2.7.2, GDAL 3.9.1, luotu elokuussa 2024), Puhdissa ja Mahdissa.
- 3.10.9 (Python 3.10.9, PDAL 2.5.2, GDAL 3.6.2, luotu maaliskuussa 2023), Puhdissa.
- 3.10.6 (Python 3.10.6, PDAL 2.4.1, GDAL 3.5.0, luotu syyskuussa 2022), Puhdissa ja Mahdissa.
Versionumero on sama kuin Python-versio.
Roihussa geocondan nimi on muutettu muotoon python-geo
Käyttö
Kun käytät LUMIa, suorita ensin tämä:
Yllä lueteltujen Python-pakettien ja muiden työkalujen käyttöön voit alustaa ne komennolla:
Oletuksena ladataan uusin geoconda-moduuli. Jos haluat tietyn version, voit määrittää geocondan versionumeron:
Voit tarkistaa ladattuun moduuliin sisältyvät tarkat paketit ja versiot komennolla:
Voit lisätä lisää Python-paketteja geocondaan noudattamalla ohjeita Pythonin käyttöoppaassamme.
Voit muokata Python-koodiasi seuraavilla tavoilla:
- Visual Studio Code Puhdin tai LUMIn selainkäyttöliittymässä
- Jupyter Notebook tai Lab Puhdin tai LUMIn selainkäyttöliittymässä
- Spyder Puhdin tai LUMIn selainkäyttöliittymässä etätyöpöydällä. Ei versiossa 3.14.3.
Spyderin avaaminen Puhdin, Mahdin tai LUMIn selainkäyttöliittymässä etätyöpöydällä:
- Kirjaudu Puhdin tai LUMIn selainkäyttöliittymään.
- Avaa etätyöpöytä: Apps -> Desktop.
- Etätyöpöydän käynnistämisen jälkeen:
- Puhdissa/Mahdissa avaa
Terminal(Desktop-kuvake) - LUMIssa avaa
Terminal Emulatorvasemman alakulman valikosta
- Puhdissa/Mahdissa avaa
- Käynnistä spyder:
- Muista LUMIssa suorittaa ensin
module use /appl/local/csc/modulefiles
- Muista LUMIssa suorittaa ensin
r5py:n muistiasetukset
r5py ei oletuksena ymmärrä oikein, kuinka paljon muistia sillä on käytettävissä supertietokoneessa, joten se täytyy määrittää käsin. Se käyttää taustalla Javaa, joten lisää ympäristömuuttuja asettamaan Javalle käytettävissä oleva enimmäismuisti:
export _JAVA_OPTIONS="-Xmx4g"komentorivillä ennen Pythonin käynnistämistä TAIos.environ["_JAVA_OPTIONS"] = "-Xmx4g"Python-koodisi alussa.
Google Earth Engine -tunnistautumisen käyttöönotto Puhdissa
Google Earth Engine (GEE) API:n käyttämiseen earthengine-api-paketilla tarvitaan GEE-tili ja projekti. Ennen ensimmäistä käyttöä ota myös GEE-tunnistautuminen käyttöön Puhdissa:
module load geoconda
export PATH=/appl/opt/csc-cli-utils/google-cloud-sdk/bin:$PATH
earthengine authenticate
Tämä tulostaa pitkän linkin ja pyytää koodia. Kopioi linkki paikallisen kannettavasi verkkoselaimeen. Seuraa verkkosivun ohjeita ja kopioi lopuksi luotu koodi takaisin terminaaliin.
Allaksen tai LUMI-O:n käyttö Pythonista
Geocondaan on asennettu kaksi Python-kirjastoa, jotka voivat olla vuorovaikutuksessa Allaksen tai LUMI-O:n kanssa. Swiftclient käyttää swift-protokollaa ja boto3 käyttää S3-protokollaa. Löydät CSC:n esimerkkejä molempien käytöstä täältä.
On myös mahdollista lukea ja kirjoittaa tiedostoja Allaksesta ja Altaaseen tai muuhun pilviobjektitallennukseen suoraan GDAL-pohjaisilla paketeilla, kuten geopandas ja rasterio. Katso ohjeet ja esimerkit Paikkatiedostojen käyttö suoraan pilvestä, ml. Allas -ohjeestamme.
Suurten rasteridatamäärien kanssa kannattaa harkita virtuaalirasterien käyttöä.
Lisenssi
Kaikki paketit on lisensoitu erilaisilla vapailla ja avoimen lähdekoodin lisensseillä (FOSS), katso tarkat tiedot yllä linkitetyiltä sivuilta.
Viittaaminen
Katso viittaustiedot pakettikohtaisesti yllä linkitetyiltä pakettisivuilta.
Kiitokset
Mainitse CSC ja Geoportti julkaisuissasi; tämä on tärkeää projektin jatkuvuuden ja rahoitusraporttien kannalta. Voit kirjoittaa esimerkiksi: "The authors wish to thank CSC - IT Center for Science, Finland (urn:nbn:fi:research-infras-2016072531) and the Open Geospatial Information Infrastructure for Research (Geoportti, urn:nbn:fi:research-infras-2016072513) for computational resources and support".
Asennus
Geoconda asennettiin Puhtiin ja Mahtiin käyttäen Tykkyn conda-containerize-toiminnallisuutta. LUMIssa Geoconda asennettiin käyttäen LUMI container wrapperia. Työkalujen toiminnallisuus on lähes identtinen, mutta --post-valinta on LUMI container wrapperissa --post-install. WhiteboxToolsin conda-paketti asentaa vain WhiteboxToolsin asennustyökalun, joten Whiteboxtoolsin oikea asennus vaati lisäksi asennuksen jälkeisen komennon ja kansion komentorivityökalujen käärimiseen.
conda-containerize new --mamba --prefix install_dir --post download_wbt -w miniconda/envs/env1/lib/python3.11/site-packages/whitebox/WBT/whitebox_tools geoconda_3.11.10.yml
Geocondan conda-ympäristötiedostot sekä WhiteboxToolsille tarvittavat download_wbt ja start_wbt.py ovat saatavilla CSC:n geocomputing-repositoriossa. Huomaa, että toistettavuuden vuoksi sinun täytyy määrittää pakettiversiot ympäristötiedostossa; ne voi tarkistaa Puhdissa ja Mahdissa list-packages-komennolla geoconda-moduulin lataamisen jälkeen.
Viitteet
- CSC:n Python-rinnakkaistusesimerkit
- Multiprocessing Basics
- Automating GIS processes -kurssimateriaalit / Helsingin yliopisto
- Aalto Spatial Analytics -kurssimateriaali / Henrikki Tenkanen / Aalto-yliopisto
- Introduction to GIS Programming / Dr. Qiusheng Wu / University of Tennessee
- Geographic Data Science with Python / Sergio Rey, Dani Arribas-Bel, Levi Wolf
- Python Foundation for Spatial Analysis / Ujaval Gandhi