Arbeit mit standardisierten Karten - Dynamische Kartenerstellung mit PyQGIS

Laura Vecera and Jonas Danner

Playlists: 'fossgis2026' videos starting here / audio

Wer häufig Karten in QGIS erstellt, ist mit Kartenlayouts und Atlanten vertraut. In dieser Demo-Session stellen wie vor, wie mit einer Python-Automatisierung die Kartenerstellung effizient und professionell standardisiert werden kann. Durch den Einsatz von Variablen, Funktionen und Expressions in PyQGIS werden Layout-Elemente wie Legende, Titel und Metadaten dynamisch an ihren Inhalt angepasst und in Relation zu anderen Layout-Elementen neu positioniert.

Bei der Kartenerstellung stehen wir regelmäßig vor der Herausforderung den Kartenrand unseres Standardlayouts anpassen zu müssen, um den Anforderungen eines neuen Projektes gerecht zu werden und alle Inhalte geeignet zu platzieren. Für Elemente, die im Kartenlayout benachbart angeordnet sind (Legende, Projektname, Planinhalt, Firmeninformationen, Metadaten) muss die Position und Größe manuell optimiert werden. Dies führt zu unbeabsichtigten Verschiebungen der Elemente und inkonsistenter Handhabung.

In dieser Demo Session möchten wir euch vorstellen, wie wir unsere Kartenerstellung mit Hilfe von PyQGIS vollautomatisiert haben. Dank der kombinierten Verwendung von Funktionen und Expressions findet die Positionierung und Dimensionierung der Layout-Elemente jetzt dynamisch statt. Die Größenverhältnisse und Abstände der Elemente zueinander bleiben erhalten, selbst wenn sich der Text- oder Bildinhalt ändert. Ergänzend sorgen feste Variablen für Seitenabstände, Textrahmenbreite und Strichbreite des Rahmens für ein einheitliches Design. Wir wollen ebenfalls auf die Limitationen dieses Vorgehens (z.B. bei Zeilenumbrüchen) eingehen.

Mit dem Ansatz sind standardisierte Formate (z.B. DINA0, für Berichte, für PowerPoint) möglich, die von verschiedenen Mitarbeitenden (auch ohne großes Vorwissen) quasi per Knopfdruck genutzt werden können.

Licensed to the public under https://creativecommons.org/licenses/by/4.0/

Download

Embed

Share:

Tags