Créer une carte Web en utilisant Python et GDAL

Apprenez à traiter gratuitement les données SIG à l'aide de Python open source et GDAL. Les données utilisées cette fois-ci sont un modèle numérique d'élévation des informations cartographiques de base fourni par le National Land Research Institute.

La carte Web ci-dessus est créée avec une combinaison de Python et GDAL.

Installation

Tout d'abord, utilisez Miniconda pour installer Python et les bibliothèques requises. Une fois le téléchargement terminé, ouvrez la ligne de commande Miniconda et lancez l'environnement virtuel Python (en utilisant la version par défaut de Python 3):

conda create --name myenv
conda activate myenv

Ensuite, installez les bibliothèques utilisées pour les scripts Python:

conda install -c conda-forge gdal numpy beautifulsoup4

Enfin, téléchargez le script Python utilisé pour créer la carte web:

git clone https://github.com/danielhoshizaki/hillshade

Comment utiliser

Tout d'abord, assurez-vous d'avoir un fichier de modèle d'élévation numérique dans le répertoire . / Data / raw. Si vous avez téléchargé d'autres fichiers, placez-les dans `` ``. / Data / raw à ce stade.

Vous devez modifier une partie du code avant d'activer le script Python. Vous devez spécifier le chemin d'accès à la bibliothèque GDAL installée avec conda```. GDAL est un logiciel coopératif, mais l'installation est très compliquée, alors utilisons le chemin absolu cette fois. Pour trouver le binaire GDAL, utilisez le Linux `` find '' ou le champ de recherche Windos. Si vous recherchez le répertoire de l'environnement virtuel myenv créé ci-dessus, il sortira immédiatement. Recherchez gdaldem.exe et gdalbuildvrt.exe dans le répertoire et gdal2tiles.py dans le répertoire. Une fois que vous l'avez trouvé, définissez gdal_bin_path et gdal_tiles_path dans votre script Python.

Lorsque vous êtes prêt, lancez le script et attendez la carte Web.

Comment ça fonctionne

Les scripts Python peuvent être globalement divisés en deux rôles. La première consiste à convertir un fichier de modèle d'élévation numérique brut (fichier XML ZIP) en GeoTiff à l'aide d'une fonction appelée `` convertir ''. Le second rôle est de laisser GDAL traiter les données directement via la ligne de commande. Trois commandes peuvent être envoyées directement à GDAL: Le traitement des données suivant est effectué:

  1. Convertissez GeoTiff de chaque DEM en GeoTiff d'ombrage
  2. Combinez tous les GeoTiff d'ombrage dans un jeu de données virtuel vrt
  3. Convertir l'ensemble de données virtuel en webmap

La dernière commande gdal2tiles crée un nouveau répertoire . / Data / WTMS```. Il y a un fichier appelé Leaflet.html dans le répertoire, alors double-cliquez dessus. Votre propre carte Web est terminée! Cependant, cette carte Web ne peut être consultée que sur votre propre PC. Si vous voulez que d'autres la voient, placez-la sur les pages Github ou AWS S3, ou faites de votre mieux pour la mettre sur le Web subur!

Recommended Posts

Créer une carte Web en utilisant Python et GDAL
Créer une interface graphique python à l'aide de tkinter
[Python] Créer un environnement Batch à l'aide d'AWS-CDK
Créez un lot planifié simple à l'aide de l'image Python de Docker et de parse-crontab
Créer un fichier GIF en utilisant Pillow en Python
J'ai essayé le web scraping en utilisant python et sélénium
Créer un module Python
Lancer un serveur Web avec Python et Flask
Créer un environnement Python
Créez un fichier MIDI en Python en utilisant pretty_midi
J'ai créé un exemple pour accéder à Salesforce en utilisant Python et Bottle
Je souhaite créer une application Web en utilisant React et Python flask
Créez une application Web qui convertit le PDF en texte à l'aide de Flask et PyPDF2
[Python] Comment créer un environnement de serveur Web local avec SimpleHTTPServer et CGIHTTPServer
Créer un bot de collecte de données en Python à l'aide de Selenium
Créez un capteur de couleur à l'aide d'une tarte à la râpe et d'une caméra
Essayez de créer un fichier compressé en utilisant Python et zlib
(Python) Essayez de développer une application Web en utilisant Django
[CRUD] [Django] Créer un site CRUD en utilisant le framework Python Django ~ 1 ~
[Python] 2 Créez une carte risque-rendement pour votre portefeuille d'actifs
[Python] Générer ValueObject avec un constructeur complet à l'aide de classes de données
Implémentation d'un générateur en utilisant Python> link> yield et next ()> yield
[Python] Comment créer une matrice de corrélation et une carte thermique
[CRUD] [Django] Créer un site CRUD en utilisant le framework Python Django ~ 2 ~
Créez un environnement shell et python décent sur Windows
[CRUD] [Django] Créer un site CRUD en utilisant le framework Python Django ~ 3 ~
[CRUD] [Django] Créer un site CRUD en utilisant le framework Python Django ~ 4 ~
Serveur HTTP et client HTTP utilisant Socket (+ navigateur Web) --Python3
[CRUD] [Django] Créer un site CRUD en utilisant le framework Python Django ~ 5 ~
Créer un dictionnaire en Python
Créer des tickets JIRA en utilisant Python
Créer un tableau numpy python
Web scraping avec Selenium (Python)
Créer un répertoire avec python
Créez une caméra de surveillance WEB avec Raspberry Pi et OpenCV
Construire un environnement Python sur un Mac, jusqu'au point d'utiliser Jupyter Lab
[Python] Chapitre 01-03 À propos de Python (Ecrire et exécuter un programme à l'aide de PyCharm)
Créons un diagramme PRML avec Python, Numpy et matplotlib.
Obtenez la page Web Python, encodez et affichez les caractères
[Python] Créez un robot d'exploration Web basé sur les événements à l'aide de l'architecture sans serveur d'AWS
Créez le code qui renvoie "A et prétendant B" en python
Python: créer un dictionnaire à partir d'une liste de clés et de valeurs
Tirez en accéléré à partir d'une caméra PC en utilisant Python, OpenCV
J'ai créé Chatbot en utilisant l'API LINE Messaging et Python
Je souhaite créer une source sonore de karaoké en séparant les instruments et les voix en utilisant Python
Python a + = b et a = a + b sont différents
Créer une application Web avec Flask ②
J'ai fait un Line-bot avec Python!
Authentification à l'aide de l'authentification des utilisateurs tweepy et de l'authentification d'application (Python)
Créer un conteneur DI avec Python
Dessiner une courbe Silverstone en utilisant Python
Créer un dictionnaire imbriqué à l'aide de defaultdict
Créez un environnement virtuel avec Python!
Créer un fichier binaire en Python
Créer un environnement python dans centos
Clustering et visualisation à l'aide de Python et CytoScape
Créer une application Web avec Flask ①
Créer un framework de décorateur à usage général pour Python