Pygmt¶
Dans cette documentation je vais explique tout les modules pygmt que j’ai utilisé pour la carte d’altitude et de bathymétrie.
Présentation¶
Pygmt permet de créer des cartes de tout type grace a une bibliotheque. Ici on se concentrera sur comment utiliser Pygmt créer une carte a partir d’un programme et de la syntaxe python.
Instalation¶
Le moyen le plus rapide d’installer PyGMT est avec le gestionnaire de packages conda qui s’occupe de la mise en place d’un environnement virtuel, ainsi que de l’installation de GMT et de toutes les dépendances dont dépend PyGMT :
conda create --name pygmt --channel conda-forge pygmt
Pour activé l’environnemment virtuel :
conda activate pygmt
vérifiez que tout fonctionne en exécutant ce qui suit dans un interpréteur Python
import pygmt
pygmt.show_versions()
Dépendances¶
PyGMT nécessite l’installation des bibliothèques suivantes :
numérique (>= 1.21)
pandas
xarray
netCDF4
emballage
Voici les dépendances facultatives :
IPython : Pour intégrer les chiffres dans les cahiers Jupyter (recommandé).
Contextily : Pour récupérer des cartes de tuiles sur Internet.
GeoPandas : Pour utiliser et tracer des objets GeoDataFrame.
RioXarray : Pour enregistrer des rasters multi-bandes dans des GeoTIFF.
Installation de GMT et d’autres dépendances¶
Avant d’installer PyGMT, nous devons installer GMT lui-même avec les autres dépendances. Le moyen le plus simple de procéder consiste à utiliser le gestionnaire de packages conda. Nous vous recommandons de travailler dans un environnement virtuel isolé pour éviter les problèmes de versions conflictuelles des dépendances.
Tout d’abord, nous devons configurer conda pour obtenir les packages du canal conda-forge :
conda config --prepend channels conda-forge
Nous pouvons maintenant créer un nouvel environnement virtuel avec Python et toutes nos dépendances installées (nous l’appellerons pygmtmais n’hésitez pas à le changer comme bon vous semble) :
conda create --name pygmt python=3.11 numpy pandas xarray netcdf4 packaging gmt
Activez l’environnement en exécutant ce qui suit ( n’oubliez pas cette étape ! ) :
conda activate pygmt
A partir de maintenant, toutes les commandes auront lieu à l’intérieur de l’environnement virtuel appelé pygmt et n’affecteront pas votre base.
Installation de PyGMT¶
Cela installe la dernière version stable de PyGMT :
conda install pygmt
Cela met à niveau la version installée de PyGMT pour qu’elle soit à la dernière version stable :
conda update pygmt
Tester votre installation¶
Afin de tester l’instaltion tester ce code qui affiche une carte globale avec des rivages.
import pygmt
pygmt.show_versions()
fig = pygmt.Figure()
fig.coast(region="g", frame=True, shorelines=1)
fig.show()
Fonction¶
Class figure¶
Tout le traçage est géré par la pygmt.Figureclasse et ses méthodes.
pygmt.Figure() |
Une figure GMT pour gérer tout les tracés |
Traçage¶
Tracer des éléments cartographiques¶
|
Une figure GMT pour gérer tout les tracés |
|
|
Tracez les continents, les rivages, les rivières et les frontières sur des cartes. |
|
|
Tracez des barres de couleurs sur les figures (notament pour la legende). |
|
|
Créez une figure en médaillon à placer dans une figure plus grande. |
|
|
Tracez des légendes sur des cartes. |
|
|
Tracez le logo GMT. |
|
|
Tracez les terminateurs de lumière du jour ou les crépuscules. |
|
|
Tracez ou composez des chaînes de texte de taille, de type de police et d’orientation variables. |
|
|
Tracez le logo d’horodatage GMT. |
Tracer des données tabulaires¶
|
Trace le contour de la table de donnée direct par triangulation |
|
|
Tracez des histogrammes cartésiens. |
|
|
Tracer les mécanismes focaux. |
|
|
Tracez des lignes, des polygones et des symboles en 2D. |
|
|
Tracez des lignes, des polygones et des symboles en 3D. |
|
|
Tracez des diagrammes en rose des vents ou des histogrammes polaires. |
|
|
Tracer des diagrammes ternaires. |
|
|
Tracez les vecteurs de vitesse, les croix, les barres d’anisotropie et les coins. |
|
|
Tracez les anomalies z=f(x,y) le long des pistes. |
Tracer des données raster¶
|
Convertissez des grilles ou des images en contours et tracez-les sur des cartes. |
|
|
Projetez et tracez des grilles ou des images. |
|
|
Créez une image en perspective 3D ou un maillage de surface à partir d’une grille. |
|
|
Placez des images ou des fichiers EPS sur des cartes. |
|
|
Trace une carte de tuiles XYZ. |
Configuration de la mise en page¶
|
Définissez le panneau de sous-parcelle actuel sur lequel tracer. |
|
|
Décaler l’origine du tracé dans les directions x et/ou y. |
|
|
Créez des figures de sous-parcelles multi-panneaux. |
Enregistrement et affichage de la figure¶
Configuration des paramètres d’affichage¶
La fonction suivante est fournie directement via le pygmt de niveau supérieur.
|
Définissez la méthode d’affichage lors de l’appel |
Génération de table de palette de couleurs¶
La fonction suivante est fournie directement via le pygmt de niveau supérieur.
Traitement de l’information¶
Opérations sur les données tabulaires¶
|
Regroupez les données spatiales et déterminez les statistiques par bin. |
|
|
Bloquer les tables de données moyennes (x, y, z) par estimation moyenne. |
|
|
Tables de données moyennes de bloc (x, y, z) par estimation médiane. |
|
|
Tableaux de données de moyenne de bloc (x, y, z) par estimation de mode. |
|
|
Filtrage dans le domaine temporel des tables de données 1-D. |
|
|
Données de table de grille utilisant un algorithme de « voisin le plus proche ». |
|
|
Projetez des données sur des lignes ou des grands cercles, ou générez des pistes. |
|
|
Sélectionnez des sous-ensembles de tables de données en fonction de plusieurs critères spatiaux. |
|
|
Créez des fichiers de grille sphériques en tension de données. |
|
|
Créez une distance de Voronoi, un nœud ou une grille naturelle du plus proche voisin sur une sphère. |
|
|
Créez des fichiers de grille sphériques en tension de données. |
|
|
Données de table de grille utilisant des splines à courbure continue à tension réglable. |
|
|
Triangulation de Delaunay ou partitionnement et maillage de Voronoi de données cartésiennes. |
|
|
Maillage basé sur le triangle de Delaunay de données cartésiennes. |
|
|
Maillage basé sur le triangle de Delaunay de données cartésiennes. |
|
|
Créez un fichier de grille à partir des données de la table. |
Opérations sur les données raster¶
|
Filtrez une grille en divisant le cercle de filtre. |
|
|
Convertir la grille en table de données. |
|
|
Définissez les valeurs d’une grille qui répondent à certains critères sur une nouvelle valeur. |
|
|
Extraire une sous-région d’une grille. |
|
|
Remplissez les zones vides à partir d’un fichier de grille. |
|
|
Filtrer une grille dans le domaine spatial (ou temporel). |
|
|
Calculez la dérivée directionnelle du gradient vectoriel des données. |
|
|
Effectuer une égalisation d’histogramme pour une grille. |
|
|
Effectuer une égalisation d’histogramme pour une grille. |
|
|
Effectuer une égalisation d’histogramme pour une grille. |
|
|
Créez un fichier de grille avec des valeurs définies pour la terre et l’eau. |
|
|
Modifiez la projection des données maillées entre géographique et rectangulaire. |
|
|
Modifier l’enregistrement, l’espacement ou les nœuds dans un fichier de grille. |
|
|
Exemples de grilles à des emplacements (x,y) spécifiés. |
|
|
Déterminer le volume entre la surface d’une grille et un plan. |
Entrée / Sortie¶
|
Ouvrez, chargez en mémoire et fermez un DataArray à partir d’un fichier ou d’un objet semblable à un fichier contenant une seule variable de données. |
GMT par défaut¶
Opérations sur les valeurs par défaut GMT :
|
Définissez les valeurs GMT par défaut globalement ou localement. |
Métadonnées¶
Obtenir des métadonnées à partir de données tabulaires ou de grille :
Divers¶
|
Recherchez le chemin d’accès complet aux fichiers spécifiés. |
|
|
Exécutez la suite de tests. |
|
|
Imprimer les informations sur la bibliothèque partagée GMT que nous pouvons trouver. |
|
|
Imprimez diverses versions de dépendance qui sont utiles lors de la soumission de rapports de bogue. |
Jeux de données¶
PyGMT permet d’accéder aux ensembles de données de GMT via le pygmt.datasets module. Ces fonctions téléchargeront automatiquement les ensembles de données lors de leur première utilisation et les stockeront dans le répertoire de données utilisateur de GMT.
|
Ensembles de données de rapports disponibles pour les tests et exemples de documentation. |
|
|
Chargez les âges de la croûte terrestre sous-marine dans différentes résolutions. |
|
|
Chargez une grille Earth Free-Air Anomaly dans différentes résolutions. |
|
|
Chargez le géoïde terrestre mondial EGM2008 dans différentes résolutions. |
|
|
Chargez une grille d’anomalies magnétiques terrestres dans différentes résolutions. |
|
|
Chargez le masque GSHHG Global Earth dans différentes résolutions. |
|
|
Charger les grilles de relief terrestre (topographie et bathymétrie) dans différentes résolutions. |
|
|
Chargez le Gradient Gravité Vertical Terre Global IGPP dans différentes résolutions. |
|
|
Chargez un exemple d’ensemble de données à partir du serveur GMT. |
De plus, il existe également une fonction spéciale pour charger les cartes de tuiles XYZ via le contexte à utiliser comme cartes de base.
|
Chargez une carte de tuiles raster géoréférencées à partir de fournisseurs de tuiles XYZ. |
Des exceptions¶
Toutes les exceptions personnalisées sont dérivées de pygmt.exceptions.GMTError.
|
Classe de base pour toutes les erreurs liées à GMT. |
|
|
Levé lorsque l’entrée d’une fonction/méthode est invalide. |
|
|
Déclenché lorsqu’une version incompatible de GMT est utilisée. |
|
|
Système d’exploitation non pris en charge. |
|
|
Erreur rencontrée lors de l’exécution d’une fonction à partir de la bibliothèque partagée GMT. |
|
|
Tentative d’accès à l’API GMT sans session GMT actuellement ouverte. |
|
|
Impossible de trouver la bibliothèque partagée GMT. |