Vektorová data

Pro práci s vektorovými daty se v jazyce Python tradičně používá knihovna GDAL (resp. její čast označovaná jako OGR). V poslední době však začíná být populární i knihovna Shapely a především Fiona. Fiona je aplikační rozhraní ke knihovně OGR, které více odpovídá standardům a postupům objektového jazyka Python. OGR je z tohoto pohledu knihovna, pomocí které lze provádět v porovnání s Fionou nízkoúrovňovné operace.

Poznámka

Téma Fiona je popsáno ve školení GeoPython pro začátečníky.

Knihovna OGR slouží především k převodům mezi vektorovými formáty (ale i další práci s vektorovými daty, jejich geometrií a atributy). V současné době knihovna podporuje více než 80 formátů.

Datový model

Knihovna OGR pracuje s konceptem vrstev (layers) uložených v datových zdrojích (data source). OGR používá pro čtení a zápis dat do podporovaných datových formátů svůj vlastní abstraktní model, který se může jevit jako těžkopádný, nicméně spolehlivě funguje pro všechny případy:

  • Driver - ovladač pro čtení a zápis dat
  • Datasource - datový zdroj (soubor, databáze, protokol, ...)
  • Layer - datová vrstva (obsah souboru, databázová tabulka, ...)
  • Feature - geoprvek (vzhledy jevu)
  • Field, Geometry - atributy, geometrie
../../_images/ogr-schema.png

Popis abstraktního modelu pro vektorová data: http://gdal.org/ogr_arch.html

Rozhraní pro Python představuje pouze abstraktní API nad původními funkcemi a třídami z jazyka C++, ve kterém je GDAL naprogramovaný. Také z tohoto důvodu se mohou některé postupy jevit jako těžkopádné.

Užitečné odkazy: