Články z kategorie: Python

QGIS atlas – mapové listy se zobrazením jednotlivých vrstev

V tomto blogu si ukážeme příklad použití tvorby atlasu, který vychází z reálného dotazu účastníka našeho kurzu QGIS pro pokročilé. Princip použití atlasu spočívá v automatické tvorbě sady mapových výstupů na základě jednotlivých prvků ve vrstvě. Jak se takový atlas dá vytvořit popisujeme v materiálech pro školení (kapitola Tvorba atlasu). To je ale jen zlomek možností, které atlas nabízí. Díky možnosti provázání hodnot s různými parametry, využití vzorců nebo malých Python skriptů, máme při generování vícelistých výstupů téměř neomezené možnosti.

Přejít na článek »

Adresní místa do databáze

Mezi veřejností to pořád ještě dostatečně neprosáklo, ale většina z vás určitě ví, že ČUZK spravuje i oficiální databázi adresních míst v ČR. Adresní místa jsou součástí databáze RUIAN, a jsou ke stažení jako zazipované CSV soubory. Jedním z prvních kroků, které musíte udělat, pokud chcete s těmito daty rozumně pracovat, je naimportovat do databáze. To bývá spojeno s parsováním, často převodem z S-JTSK na WGS84, kódováním češtiny a celou řadou dalších kroků, které vlastně děláte pořád dokola. Dobrá zpráva je, že v tomto případě to nemusíte dělat. Na GitHubu naleznete projekt RUIAN Adresní body do databáze, který za vás stáhne nejčerstvější verzi těchto dat, rozbalí, převede na WGS84 a uloží do vámi zadané databáze pomocí GeoAlchemy 2. Příklad použití, uložení dat do schématu adresy v databázi PostgreSQL: $ createdb adresy $ psql adresy adresy=> CREATE EXTENSION postgis; adresy=> CREATE SCHEMA adresy; adresy=> \q $ ruian-adressses2db.py –connection “postgresql://uzivatel:heselo@localhost:5432/adresy” –schema adresy Skript stáhne, co má stáhnout, převede, naimportuje a můžete to začít používat. Budeme rádi za zpětnou vazbu, napište, co byste případně potřebovali od skriptu víc např. do bug trackeru na GitHubu.

Přejít na článek »

Automatizace v QGIS – Tvorba vlastních nástrojů pomocí jazyka Python

Každý kdo pracuje s prostorovými daty, se dříve nebo později dostane do situace, kdy pro dosažení požadovaného výsledku používá posloupnost dílčích nástrojů (např. Výběr prvků na základě atributu -> ořezaní vrstvy -> obalová zóna). V praxi se často stává, že stejný postup chceme aplikovat na různá vstupní data, nebo (v horším případě) musíme stejný postup opakovat několikrát na původních vstupních datech, např. z důvodu jejich drobných úprav v průběhu projektu. V takovém případě je vhodné naučit se proces automatizovat – vytvořit si vlastní nástroj, který bude tuto posloupnost operací opakovat za nás. Jelikož celý automatizovaný pracovní postup potom můžeme provést spuštěním jediného nástroje, výhodu takového přístupu pocítíme velmi brzo.

Přejít na článek »