Mehr

Osmconvert mit Python verwenden?

Osmconvert mit Python verwenden?


Ich möchte osmconvert verwenden, um die Größe meiner Diff-Dateien für nur den Bereich zu analysieren, an dem ich interessiert bin, da osmconvert viel schneller ist als osm2pgsql, das die Daten lädt.

Wenn ich den Befehl mit os.system() so aufrufe:

cmd = r"""c:	emposmconvert.exe 770.osc.gz -b=1,1,3,3 -o=extract.o5m""" os.system(cmd)

Ich erhalte einen osmconvert-Fehler: Datei kann nicht geöffnet werden

Wenn ich genau denselben Befehl von meiner Eingabeaufforderung in Windows 7 ausführe, läuft er einwandfrei. Was tut Python, um die Ausführung dieser Funktion zu verhindern? Die Datei 770.osc.gz befindet sich im selben Verzeichnis wie osmconvert.exe und die Ausgabe Extract.05m sollte sich im selben Verzeichnis wie osmconvert.exe befinden.

Wenn ich den Befehl in eine Batch-Datei schreibe, funktioniert es, aber ich möchte Python verwenden, um die Datei vom Server herunterzuladen, damit ich die Aktualisierungen der Datenbank automatisieren kann.


Die Datei 770.osc.gz befindet sich im selben Verzeichnis wie osmconvert.exe und die Ausgabe Extract.05m sollte sich im selben Verzeichnis wie osmconvert.exe befinden.

Das sagt dein Code nicht. Der Code sagt "execute osmconvert.exe from inside c: emp but read 770.osc.gz and write extract.o5m from the aktuelles Arbeitsverzeichnis".

Wenn Sie möchten, dass alles in c: emp läuft, müssen Sie entweder in dieses Verzeichnis wechseln, bevor Sie osmconvert ausführen, oder Sie müssen den Pfad zu jeder Datei, die Sie an osmconvert übergeben, vorgeben.

Versuchen Sie es stattdessen mit diesem Anruf:

cmd = r"""c:	emposmconvert.exe c:	emp770.osc.gz -b=1,1,3,3 -o=c:	empextract.o5m"""

OSM zu CSV mit OSMCONVERT bietet meine &ldquoleeren&rdquo-Annehmlichkeiten

Ich versuche, die Open Street Map-Daten meines Landes in eine CSV-Datei zu konvertieren, die ich dann in Tableau laden und Unternehmen kartieren kann.

Ich habe osmconvert heruntergeladen, das anscheinend das Standardtool für diesen Prozess ist.

Wenn ich folgenden Befehl ausführe:

Ich scheine die ID-, Breiten- und Längengrad-Daten richtig zu machen, bekomme aber leere Amenity-, Name- und Shop-Spalten.

Schreibe ich den Befehl falsch? Ich würde mich über jede Hilfe freuen, da ich anscheinend kein benutzerfreundliches Tutorial zur Verwendung dieses Tools im Internet finden kann.


Um eine detaillierte Beschreibung zu erhalten, verwenden Sie bitte die eingebaute Hilfefunktion des Programms:

Dieser Aufruf zeigt eine kurze Parameterübersicht an:

Die folgenden Kapitel zeigen die wichtigsten Programmfunktionen.

Konvertieren von Dateien

Zwischen diesen Datenformaten kann eine Konvertierung erfolgen:

Wenn Sie die Ausgabe des Programms auf die Standardausgabe umleiten möchten, müssen Sie dem Programm mitteilen, welches Datenformat verwendet werden soll:

Wenn Sie den Namen der Ausgabedatei angeben, indem Sie die Option anwenden -o=, osmconvert bestimmt das Datenformat, indem es die Dateinamenerweiterung auswertet. Beispiele für beide Wege:

Sie können auch komprimierte Eingabedateien verwenden, wenn Sie die Daten über die Standardeingabe bereitstellen. Beispiele:

Die Option "-" teilt dem Programm mit, Eingabedaten über die Standardeingabe zu erwarten.

osmconvert bietet eingeschränkte Dekompressionsfunktionen: Sie können dekomprimieren .gz Dateien. Das Programm erkennt die gzip-Komprimierung selbst, daher müssen Sie sich nicht darum kümmern, welche Eingabedatei gzip-komprimiert ist und welche nicht. Der eingebaute Dekompressionsalgorithmus ist weniger leistungsfähig als spezialisierte Dekompressionsprogramme, diese Funktion ist jedoch sehr nützlich, wenn Sie eine OSM-Datei aktualisieren möchten, indem Sie eine Reihe neu heruntergeladener komprimierter .osc-Dateien verwenden. Beispiele:

PBF-Eingabedateien mit nicht standardmäßiger Lon/Lat-Granularität

osmconvert erwartet, dass PBF-Dateien die Standard-OpenStreetMap-Granularität verwenden, die 100 Nanograd beträgt. Es ist möglich, mittels Osmose PBF-Dateien mit unterschiedlicher Granularität zu erzeugen. Wenn Sie aufgefordert werden, eine Datei mit einer anderen Granularität zu konvertieren, gibt osmconvert einen Fehler aus: "node nanodegrees must be 100: 10000". Die Lösung zum Lesen von Dateien mit einer nicht standardmäßigen Granularität besteht darin, die Option --pbf-granularity=<val> zu verwenden.

Anwenden von geografischen Grenzen

Clipping basierend auf Längen- und Breitengrad

Die Angabe von Geokoordinaten ist der einfachste Weg, eine zu extrahierende geographische Region zu definieren. Einige Online-Karten zeigen ständig die Geokoordinaten des Mauszeigers an. Zum Beispiel: Osmarenderer-Karte, ÖPNV-Karte.

Um dieses begrenzende Quasi-Rechteck zu definieren, müssen Sie die Koordinaten seiner südwestlichen und nordöstlichen Ecken (WSEN) angeben. (Unten links / Oben rechts) Zum Beispiel:

Clipping basierend auf einem Polygon

Anstelle eines einfachen Begrenzungsrechtecks ​​können Sie eine Rahmenpolygondatei verwenden. Dies ermöglicht eine genauere Begrenzung auf eine politische Grenze, zum Beispiel:

Das Format einer Border-Polygon-Datei finden Sie im OSM-Wiki: hier. Sie müssen sich nicht strikt an die Formatbeschreibung halten, aber Sie müssen darauf achten, dass jede Koordinatenzeile mit Leerzeichen beginnt.

osmconvert kann mit einzelnen Polygonen in einer Datei umgehen, es berücksichtigt sogar "Inseln" in Polygonen, wenn sie richtig definiert wurden.

Beispiel mit einer Polygondatei von polygons.openstreetmap.fr
  1. erhalten Sie die ID der Relation, die den Bereich beschreibt, den Sie extrahieren möchten, indem Sie dieser Anleitung folgen oder Strg+i auf der Relation in JOSM drücken.
  2. fügen Sie die ID auf polygons.openstreetmap.fr ein und laden Sie die Poly-Datei herunter
  3. Führen Sie osmconvert aus:

Der Parameter complete-* stellt sicher, dass keine Elemente an den Grenzen abgeschnitten, sondern als Ganzes eingeschlossen werden.

OSM-Änderungsdateien ausschneiden?

Es wird nicht empfohlen, geografische Grenzen für Dateien ändern. Da nur Knoten geografische Standorte tragen, weiß das Programm nicht, was es mit Wegen und Beziehungen tun soll, deren zugehörige Knoten sich nicht in derselben Datei befinden. Als Ergebnis werden diese Wege und Beziehungen aus der Datei ausgeschlossen. Dies ist normalerweise nicht das, was Sie erreichen möchten.

Grenzüberschreitende Wege vollständig halten

Einige Anwendungen erfordern Leitungen (sog. Wege) intakt zu bleiben, auch wenn sie teilweise außerhalb des abgegrenzten geografischen Gebiets liegen. Dies kann durch Anwenden der Option . erreicht werden --complete-ways. Beispiele:

Diese Option und die in den nächsten beiden Abschnitten beschriebene Option begrenzt die Größe der Eingabedatei auf 2 GiB, wenn Ihr Betriebssystem 32-Bit-Windows ist. Da die Eingabedatei zwei- bis dreimal gelesen werden muss, muss das Programm innerhalb dieser Datei "springen". Leider unterstützt die derzeit verwendete Link-Library keine langen Sprünge mit 32-Bit-Windows. Für Linux gibt es keine solche Einschränkung (weder für die 32-Bit- noch für die 64-Bit-Version).

Ebenso wird für diesen und die folgenden beiden Abschnitte empfohlen, .o5m als Datenformat für die Eingabedatei zu verwenden. Der Grund dafür ist, dass .pbf-Dateien normalerweise intern komprimiert werden und daher viel langsamer gelesen werden als .o5m-Dateien.

Keiner dieser --Komplett-. Option ist über den Befehl Osmupdate verfügbar.

Vervollständigung von grenzübergreifenden Multipolygonen

Immer mehr Bereiche von Flüssen, Wäldern und Seen werden nicht nur von einer geschlossenen Linie, sondern von mehreren aneinandergereihten Linien umgeben. Sogenannt Multipolygone werden verwendet, um diese physikalisch verbundenen Leitungen logisch zu verbinden. Jede Zeile enthält a Rolle je nach Position: „außen“ für die umliegende Grenze oder „innen“ für ausgeschlossene Gebiete (z. B. eine Insel in einem See).

Beim Anwenden von geografischen Grenzen kann osmconvert diese Multipolygone berücksichtigen und intakt halten, auch wenn sich nur ein kleiner Teil der Fläche des Multipolygons innerhalb der Grenzen befindet. Um das Programm dazu anzuweisen, wählen Sie Option --complete-multipolygons. Beispiele:

Bitte beachten Sie die drei Anmerkungen am Ende des vorherigen Abschnitts.

Bis 2016 hieß diese Option --komplexe-wege.

Halten Sie grenzüberschreitende Grenzen vollständig

Um sicherzustellen, dass die Grenzen intakt bleiben, auch wenn einige ihrer Art und Weise Objekte außerhalb der angewendeten geografischen Grenzen liegen, verwenden Sie die --complete-boundaries Möglichkeit. Beispiele:

Bitte beachten Sie die drei Bemerkungen in den beiden Abschnitten oben.

Ausschließen von Verweisen auf Objekte außerhalb der Grenzen

Wenn Sie Verweise auf Knoten löschen müssen, die ausgeschlossen wurden, weil sie außerhalb geografischer Grenzen liegen, verwenden Sie die Option --drop-broken-refs (kann für Datenimporte in OSM Map Composer oder JOSM hilfreich sein).

Zusammenführen von zwei oder mehr geografischen Gebieten

Unter bestimmten Bedingungen können OSM-Datendateien zusammengeführt werden. Wenn sie Objekte (Knoten, Wege, Beziehungen) mit derselben ID enthalten, müssen sie denselben Inhalt haben. Beispiel: Wenn ein Weg die geografische Grenze zwischen zwei regionalen Dateien überschreitet, muss der Weg-Datensatz jede Knotenreferenz enthalten, auch die Verweise auf Knoten, die nicht innerhalb der Grenzen der betreffenden Datei liegen. D.h. ein solcher Bereich darf nicht mit der Option . ausgeschnitten worden sein --drop-brokenrefs. Beispiele für die geografische Zusammenführung:

Sonderfall: Konturdaten beschneiden

Informationen oder Inhalte aus der Ausgabedatei ausschließen

Autoreninformationen entsorgen

Für die meisten Anwendungen werden die Autoren-Tags nicht benötigt. Wenn Sie Benutzernamen, Benutzer-ID, Changeset- und Objektzeitstempelinformationen ausschließen möchten, fügen Sie die Befehlszeilenoption hinzu --drop-autor. Beispielsweise:

Normalerweise werden Sie beim Löschen der Autoreninformationen aus .osm- oder .o5m-Dateien keine Probleme haben, jedoch wird dies bei .pbf-Dateien nicht empfohlen, da die meisten Programme mit dieser Formatänderung nicht zurechtkommen.

Wenn Sie Autoreninformationen zu einem späteren Zeitpunkt neu anhängen müssen, etwa weil ein Folgeprogramm von diesem Format abhängt, können Sie diese mit der Option . neu generieren --fake-Autor. Die neuen Autorenangaben sind natürlich nur Ersatzwerte, die der Formatbeschreibung entsprechen, mehr nicht.

Ausschließen bestimmter OSM-Objekttypen

Bei Bedarf können Sie ganze Abschnitte einer Datei entfernen:

Das Programm osmfilter bietet eine granularere Filterfunktionalität.

Wege und Beziehungen entsorgen und in Knoten umwandeln

Manchmal ist es für die nachfolgende Verarbeitung einfacher, wenn die Datei nur Objekte des primitivsten Objekttyps enthält: Knoten. osmconvert bietet eine Funktion, die jeden Weg und jede Beziehung löscht und für jeden einen Knoten als Ersatz anlegt. Der Längen- und Breitengrad jedes Knotens wird auf den geografischen Mittelpunkt des gelöschten Objekts eingestellt. Wenn das gelöschte Objekt ein nicht geschlossener Weg war, wird einer seiner Knoten anstelle der Mitte genommen. Jedes Tag des gelöschten Objekts wird in den Knoten kopiert. Als ID für den neuen Knoten wird die ID des Weges (bzw. der Relation) genommen und um 10 15 (bzw. 2*10 15 ) erhöht. Beispielsweise:

Das --object-type-offset= Mit dieser Option können Sie den ID-Offset von 10 15 auf einen anderen Wert ändern.

Die Option --add-bbox-tags stellt für jeden Weg und jede Beziehung, die in einen Knoten umgewandelt wurde, einen Begrenzungsrahmen bereit. Diese Begrenzungsrahmen werden als Tags angezeigt. Zum Beispiel (Bereich London):

Tags ändern

Manchmal ist es sinnvoll, bestimmte Tags zu ändern, um die weitere Datenverarbeitung zu erleichtern.

Beachten Sie, dass "--modify-tags" für Linien verwendet wird, während "--modify-node-tags" für Knoten verwendet wird. In jedem Fall können sowohl Schlüssel als auch Werte geändert werden.

Werte ändern

Sie können Werte angeben, die geändert werden sollen. Beispielsweise:

Dadurch werden alle Haupt- und Nebenstraßen zu tertiären.

Schlüssel ändern

Schlüssel können auch geändert werden:

Neue Tags hinzufügen

Ähnlich wie die Filterung von osmfilter ermöglicht die Tag-Modifikation durch osmconvert Vergleiche. So können Sie redundante Tags hinzufügen, wenn dies die Weiterverarbeitung Ihrer Daten erleichtert:

Es erfolgt keine Prüfung, ob bereits Tags mit demselben Schlüsselnamen vorhanden sind. Verwenden Sie ggf. die Tag-Filterfunktion von osmfilter, um mögliche Kollisionen zu vermeiden.

OSM-Dateien aktualisieren

Wenn Sie über eine OSM-Datendatei (.osm, .o5m oder .pbf) verfügen, können Sie diese mit einer oder mehreren OSM-Änderungsdateien (.osc oder .o5c) zusammenführen, um sie zu aktualisieren. Haben Sie beispielsweise eine planet.osm-Datei oder eine regionale germany.o5m-Datei von gestern, können Sie die tägliche Änderungsdatei von heute Morgen anwenden, um eine aktuelle planet.osm- bzw. deutschland.o5m-Datei. Die Syntax ist wie folgt:

Falls Ihre Datendatei älter ist, können Sie zwei oder mehr Änderungsdateien gleichzeitig anwenden:

Die OSM-Objekte in der Änderungsdatei müssen eindeutig sein. Das heißt, jeder Knoten, Weg oder jede Relation darf nur einmal vorkommen. Minuten- und stündliche Änderungsdateien können mehr als eine Version von OSM-Objekten enthalten, daher erhalten Sie Warnmeldungen. Sie können alle Versionen jedes Objekts kombinieren, wenn Sie die Option angeben --merge-versionen. Dann verbleibt nur die neueste Version jedes Objekts in der Datei.

Um eine OSM-Datei automatisch zu aktualisieren oder kumulative .osc-Dateien zu erstellen, lesen Sie bitte osmupdate.

Abrufen der Unterschiede zwischen zwei OSM-Dateien

Sie können eine .osc- oder .o5c-Änderungsdatei erstellen, indem Sie zwei .osm- oder .o5m-Dateien vergleichen. Beispielsweise:

Andere Operationen, wie das Anlegen regionaler Grenzen, sind im selben Lauf nicht erlaubt. Beide Dateien müssen nach Objekttyp und ID sortiert sein. Erstellte Objekte werden in der Ausgabedatei als "geändert" angezeigt, es sei denn, sie haben die Versionsnummer 1.

Bei der Berechnung von Dateiunterschieden stützt sich osmconvert auf die Versionsnummern der zu vergleichenden Objekte. Sind die Versionsnummern nicht verfügbar oder sollen die Objekte nach Inhalten verglichen werden, können Sie dies über die Option --diff-Inhalte (funktioniert nur für .o5m-Dateien).

Wenn ein Objekt gelöscht werden soll, wird nur seine ID (und Autorendaten) gespeichert. Es hat sich bewährt, den Inhalt des Objekts nicht zu speichern, da es sowieso gelöscht wird. Einige Programme erwarten jedoch aus formalen Gründen die Längen- und Breitengrade der Knoten, selbst wenn sie nur diese Werte löschen. Die Option --fake-lonlat hilft Ihnen, solche formal geforderten Wiederbeschaffungswerte zu erstellen.

Legen Sie den Datei-Zeitstempel fest

Normalerweise haben OSM-Dateien einen Dateizeitstempel, mit dem Sie die Aktualität der Datei feststellen können. Während der Dateikonvertierung behält osmconvert diesen Zeitstempel bei. Es kann jedoch von Ihnen angepasst werden. Beispielsweise:

Abrufen von statistischen Daten

Es gibt verschiedene Möglichkeiten, Metadaten oder statistische Daten einer OSM-Datei zu erhalten. Zuerst können Sie den Zeitstempel einer Datei mit der --out-timestamp Option (das Z am Ende steht für Zulu):

Zweitens können Sie die gesamte Datei analysieren und einen Satz statistischer Daten erstellen:

CSV-Dateien schreiben

Um zeichengetrennte Listen zu erhalten, können Sie als Ausgabeformat ".csv" definieren. Dies kann mit der -o= Möglichkeit, z.B. -o=my_table.csv oder indem Sie eine der csv-bezogenen Optionen definieren: --out-csv , --csv= , --csv-Überschrift , --csv-separator= .

Die Tabelle hat drei durch Tabulatoren getrennte Spalten: Objekttypname, ID, Name. Um den Spaltentrenner zu ändern oder einen anderen Spaltensatz auszuwählen, verwenden Sie bitte die --csv-separator= bzw. das --csv= Möglichkeit. Verwenden Sie die --Hilfe Möglichkeit, weitere Informationen zu diesem Thema anzuzeigen. Zum Beispiel (in Kombination mit Option --all-to-nodes ):

Spalten werden durch Tabulatorzeichen der Standardgröße Ihres Systems getrennt. Es wird empfohlen zu verwenden -o=ein Dateiname.csv wenn die Daten in eine Datei geschrieben werden sollen.

Kombinieren der Funktionen

Die meisten der zuvor eingeführten Funktionen können kombiniert werden. So können Sie beispielsweise eine .osm-Datei aktualisieren und ihre Region in einem Durchgang begrenzen:

Parallelverarbeitung

osmconvert allein unterstützt keine Parallelverarbeitung. Sie können jedoch die Fähigkeiten Ihres Betriebssystems nutzen und solche Anweisungen in der Befehlszeile eingeben. Dies kann auch nützlich sein, wenn Sie mehr als eine .pbf-Datei verarbeiten möchten, da osmconvert derzeit nicht mehr als eine .pbf-Datei gleichzeitig lesen kann. Beispielsweise:

In diesem Beispiel liest der erste Prozess die .pbf-Datei "region1.pbf" und gibt sie o5m-formatiert aus an Standardausgabe. Der zweite Prozess liest diese Daten aus Standardeingang, fügen Sie es mit der anderen regionalen Datei "region2.pbf" zusammen und schreiben Sie es in die Datei "all.pbf". Sie werden das Minuszeichen im zweiten osmconvert-Befehl erkannt haben: Es rät dem Programm, Daten aus zu lesen Standardeingang. Das Rohrbetreiber "|" verbindet Standardausgabe des ersten Befehls zu Standardeingang des zweiten Befehls.

Sie können auch mehr als eine Pipe verwenden, indem Sie sogenannte benannte Rohre. Leider funktioniert dies unter Windows möglicherweise nicht. Unter Linux gibt es die mkfifo Befehl zum Erstellen von Rohren. Diese Pipes können auf die gleiche Weise wie Dateien angesprochen werden. In diesem Beispiel werden drei Prozesse erstellt, um drei .pbf-Dateien zusammenzuführen:

Die kaufmännischen Und-Operatoren erstellen jeweils einen Hintergrundprozess für den Befehl, der ihm links steht. Der letzte Befehl in der Zeile bleibt im Vordergrund und sammelt die Daten, die die beiden Hintergrundprozesse erzeugen.

Alternativ bieten viele Unix-Shells eine Technik namens Process Substitution, die im Wesentlichen die benannten Pipes automatisch für Sie erstellt, ohne dass sie verwendet werden müssen mkfifo. Ein Äquivalent zum obigen Befehl wäre:

Parameterdatei

Das Befehlszeilenargument kann lang werden, wenn Sie komplexe Operationen angeben. Bitte verwenden Sie stattdessen eine Parameterdatei und verweisen Sie auf diese Datei mit --parameter-file=. Beispielsweise:

Leerzeilen werden verwendet, um die Parameter zu trennen. Zeilenvorschübe innerhalb von Parametern werden in Leerzeichen umgewandelt. Zeilen, die mit " beginnen// " werden als Kommentare behandelt und daher vom Programm ignoriert.

Technische Details

Temporäre Dateien

Um bestimmte Operationen ausführen zu können, muss osmconvert temporäre Dateien erstellen. Diese Dateien sind klein – im Vergleich zu den OSM-Dateien, die verarbeitet werden sollen. Ihre Namen beginnen jeweils mit "osmconvert_tempfile" und enden mit Zahlen. Sie können den linken Teil des Dateinamens einschließlich des Pfads ändern. Beispielsweise:

Speicherverwaltung

Es gibt drei Möglichkeiten, die Speicherverwaltung des Programms zu beeinflussen: --hash-memory=, --max-refs= und --max-objects=. Bitte beachten Sie die detaillierte Beschreibung, die von der Hilfeoption angezeigt wird:

Testausgang

Manchmal ist es schön, ein paar Informationen darüber zu bekommen, was das Programm gerade macht. Sie können die aktivieren ausführlicher Modus indem Sie diese Option anwenden: -v. Mit -v=2 Sie erhalten eine noch detailliertere Ausgabe, die jedoch etwas verwirrend sein kann.


Einige unserer Kunden


Für die Auswahl potenzieller neuer Standorte für Migros-Märkte wurden zwei Ansätze untersucht: ein relativer Dichte-Ansatz und ein Reisezeit-Ansatz.

Relativer Dichteansatz:

Dieser Ansatz visualisierte die relative Dichte der Migros-Supermärkte im Vergleich zu ihren Hauptkonkurrenten.

Fahrzeiten Ansatz:

Der zweite Ansatz basierte auf den Fahrzeiten mit öffentlichen Verkehrsmitteln zur nächsten Migros. Mit der Google Directions API wurde die Zeit abgefragt, die von jedem Zentrum jeder Zelle benötigt wird, um eine Migros zu erreichen. Wir haben uns entschieden, uns auf die Reisezeit mit öffentlichen Verkehrsmitteln zu konzentrieren, aber auch die Gehzeit kann leicht erreicht werden.

Die Dauer in Minuten wurde als interaktive Heatmap in Bokeh visualisiert.

Mit mehr Zeit wäre ein naheliegender nächster Schritt, die Bevölkerungsdichte zu berücksichtigen.


Ein geografisches Informationssystem (GIS) ist ein System, das entwickelt wurde, um räumliche oder geografische Daten zu erfassen, zu speichern, zu manipulieren, zu analysieren, zu verwalten und zu präsentieren. Das Akronym GIS wird manchmal für Geographic Information Science (GIScience) verwendet, um sich auf die akademische Disziplin zu beziehen, die sich mit geografischen Informationssystemen befasst, und ist eine große Domäne innerhalb der breiteren akademischen Disziplin der Geoinformatik.

Die Verwendung von Python mit GIS hat in den letzten zwei Jahrzehnten erheblich zugenommen, insbesondere mit der Einführung der Python 2.0-Serie im Jahr 2000, die viele neue Programmierfunktionen enthielt, die die Bereitstellung der Sprache erheblich erleichterten. Seitdem wird Python nicht nur in kommerziellen GIS wie Produkten von Esri verwendet, sondern auch auf Open-Source-Plattformen, unter anderem als Teil von QGIS und GRASS. Tatsächlich ist Python heute bei weitem die am weitesten verbreitete Sprache von GIS-Benutzern und Programmierern.

Dieses Programm behandelt die Verwendung von Python und seinen fortschrittlichen Bibliotheken wie Geopandas, Pysal, Bokeh und Osmnx, um Ihre eigenen GIS-Funktionen zu implementieren. Das Programm umfasst auch Einführungsmodule rund um ArcGIS API und QGIS Toolboox.


Zweck des Projekts

Sobald uns die offenen Daten zur Verfügung stehen, müssen wir sie so effizient wie möglich nutzen. Das Extrahieren von Straßen ohne Namen aus der OSM-Datenbank, um sie manuell zu überschneiden und mit den offenen Daten zu vergleichen, war zu langsam und erforderte viel Aufmerksamkeit. Da kam uns eine Idee: „Wir haben bereits ein internes Tool, das Geometrien vergleicht und eine Änderungsdatei mit den fehlenden Straßen erstellt. Warum erweitern wir diese Idee nicht auch auf den Vergleich von Attributen?“. Die Attribute (auch als Tags bezeichnet) sind Schlüsselwertdaten. Sie beschreiben die Straßenkategorie, die zulässige Höchstgeschwindigkeit, den Straßennamen, die Anzahl der Fahrspuren und vieles mehr. Wenn wir OSM-Straßenattribute mit den Attributen aus lokalen Daten vergleichen könnten, ist das Problem gelöst.

Gesagt, getan! Mit Hilfe der Java-Abteilung wurde aus dem Cygnus-Tool Cygnus+, das nun OSM-Attribute mit den Attributen aus den lokalen Daten vergleichen kann. Mit diesem Tool wird das Roadmapping zu einem halbautomatischen Prozess, dennoch viel effektiver, qualitativer und quantitativer.


Python für geographisches Informationssystem (GIS) Schulungskurs

Vorkenntnisse mit Python für maschinelles Lernen und mit Bibliotheken wie Pandas, matplotlib werden dringend empfohlen.

Ein geografisches Informationssystem (GIS) ist ein System, das entwickelt wurde, um räumliche oder geografische Daten zu erfassen, zu speichern, zu manipulieren, zu analysieren, zu verwalten und zu präsentieren. Das Akronym GIS wird manchmal für Geographic Information Science (GIScience) verwendet, um sich auf die akademische Disziplin zu beziehen, die sich mit geografischen Informationssystemen befasst und eine große Domäne innerhalb der breiteren akademischen Disziplin der Geoinformatik ist.

Die Verwendung von Python mit GIS hat in den letzten zwei Jahrzehnten erheblich zugenommen, insbesondere mit der Einführung der Python 2.0-Serie im Jahr 2000, die viele neue Programmierfunktionen enthielt, die die Bereitstellung der Sprache erheblich erleichterten. Seitdem wird Python nicht nur in kommerziellen GIS wie Produkten von Esri verwendet, sondern auch auf Open-Source-Plattformen, unter anderem als Teil von QGIS und GRASS. Tatsächlich ist Python heute bei weitem die am weitesten verbreitete Sprache von GIS-Benutzern und Programmierern.

Dieses Programm behandelt die Verwendung von Python und seinen fortschrittlichen Bibliotheken wie Geopandas, Pysal, Bokeh und Osmnx, um Ihre eigenen GIS-Funktionen zu implementieren. Das Programm umfasst auch Einführungsmodule rund um ArcGIS API und QGIS Toolboox.

Installation und erforderliche Pakete

Einführung in Shapely für geometrische Objekte

Einführung in Pandas und GeoPandas

Karten und Projektionen verwalten

Geokodierung von Punkten in Polygonen mit GeoPandas

Datenklassifizierung pysal map Klassifikator

Statische und interaktive Karten

Toolbox für ArcGIS API-Nutzung und -Verarbeitung

Python in QGIS Processing Toolbox und grafischer Modellierer

Eigene Verarbeitungs-Toolbox erstellen

Netzwerkanalyse und OpenStreetMap

Herunterladen und Arbeiten mit OpenStreetMap-Daten Osmnx

Netzwerkanalyse in Python Networkx Osmnx


Einige unserer Kunden

Wächst schnell!

Wir möchten unsere Präsenz in Indien ausbauen!

Als Business Development Manager werden Sie:

  • Geschäft in Indien ausbauen
  • lokale Talente rekrutieren (Vertrieb, Agenten, Trainer, Berater)
  • lokale Trainer und Berater rekrutieren

Wir bieten:

  • Künstliche Intelligenz und Big Data-Systeme zur Unterstützung Ihres lokalen Betriebs
  • Hightech-Automatisierung
  • laufend aktualisierter Kurskatalog und Inhalt
  • viel spaß im internationalen team

Wenn Sie daran interessiert sind, ein hochtechnologisches, qualitativ hochwertiges Schulungs- und Beratungsunternehmen zu führen.


Einige unserer Kunden

Wächst schnell!

Wir möchten unsere Präsenz in Südafrika ausbauen!

Als Business Development Manager werden Sie:

  • Geschäft in Südafrika ausbauen
  • lokale Talente rekrutieren (Vertrieb, Agenten, Trainer, Berater)
  • lokale Trainer und Berater rekrutieren

Wir bieten:

  • Künstliche Intelligenz und Big Data-Systeme zur Unterstützung Ihres lokalen Betriebs
  • Hightech-Automatisierung
  • laufend aktualisierter Kurskatalog und Inhalt
  • viel spaß im internationalen team

Wenn Sie daran interessiert sind, ein hochtechnologisches, qualitativ hochwertiges Schulungs- und Beratungsunternehmen zu führen.