pygmt.grdlandmask

pygmt.grdlandmask(\*, area_thresh=None, resolution=None, bordervalues=None,
outgrid=None, spacing=None, maskvalues=None, region=None, verbose=None,
registration=None, \**kwargs)

Créez un fichier de grille avec des valeurs définies pour la terre et l’eau.

Lisez la base de données de rivage sélectionnée et créez une grille pour spécifier quels nœuds de la grille spécifiée se trouvent au-dessus de la terre ou au-dessus de l’eau. Les nœuds définis par la région sélectionnée et l’espacement des réseaux seront définis selon l’un des deux critères : (1) terre contre eau, ou (2) l’océan plus détaillé (hiérarchique) contre terre contre lac contre île contre étang.

Paramètre

  • outgrid ( str ou None ) – Le nom du fichier netCDF de sortie avec l’extension .nc dans lequel stocker la grille.

  • spacing ( str ) – x_inc [ +e | n ][/ y_inc [ +e | n ]]. x_inc [et éventuellement y_inc ] est l’espacement de la grille.
    • Coordonnées géographiques (degrés) : ajoutez éventuellement une unité d’incrémentation. Choisissez parmi m pour indiquer les arc-minutes ou s pour indiquer les arc-secondes. Si l’une des unités e , f , k , M , n ou u est ajoutée à la place, l’incrément est supposé être donné en mètre, pied, km, mile, mile nautique ou US survey foot, respectivement, et sera converti en les degrés de longitude équivalents à la latitude moyenne de la région (la conversion dépend de PROJ_ELLIPSOID ). Si y_inc est donné mais défini sur 0, il sera réinitialisé égal à x_inc; sinon, il sera converti en degrés de latitude.

    • Toutes les coordonnées : si +e est ajouté, le max correspondant x ( est ) ou y ( nord ) peut être légèrement ajusté pour s’adapter exactement à l’incrément donné [par défaut, l’incrément peut être légèrement ajusté pour s’adapter au domaine donné]. Enfin, au lieu de donner un incrément, vous pouvez spécifier le nombre de nœuds souhaités en ajoutant +n à l’argument entier fourni ; l’incrément est alors recalculé à partir du nombre de nœuds, du registration et du domaine. La valeur d’incrément résultante varie selon que vous avez sélectionné une grille enregistrée sur la grille ou enregistrée sur les pixels ; voir Formats de fichier GMT pour plus de détails.

    Remarque : Si region=grdfile est utilisé alors l’espacement de la grille et l’enregistrement ont déjà été initialisés ; utilisez spacing et registration pour remplacer ces valeurs.

  • région ( str ou liste ) – xmin/xmax/ymin/ymax [ +r ][ +u unité ]. Spécifiez la région d’intérêt. L’ajout region sélectionnera une sous-section de la grille. Si cette sous-section dépasse les limites de la grille, seule la région commune sera sortie.

  • area_thresh (int or float or str) – min_area[/min_level/max_level][+a [ g | i ][s | S]][+l | r][+p percent]. Les entités dont la superficie est inférieure à min_area en km 2 ou dont le niveau hiérarchique est inférieur à min_level ou supérieur à max_level ne seront pas tracées [la valeur par défaut est « 0/0/4 » (toutes les entités)].

  • resolution ( str ) – res [ +f ]. Sélectionnez la résolution de l’ensemble de données à utiliser (( f )ull, ( h )high, ( i )ntermediate, ( l )ow ou ( c )rude). La résolution diminue d’environ 80 % entre les ensembles de données. [La valeur par défaut est l ]. Ajoutez +f pour sélectionner automatiquement une résolution inférieure si celle demandée n’est pas disponible [abandon si introuvable]. Vous pouvez également choisir ( a )uto pour sélectionner automatiquement la meilleure résolution en fonction de la région choisie. Notez que parce que les côtes diffèrent dans les détails, un nœud dans un fichier de masque utilisant une résolution n’est pas garanti de rester à l’intérieur [ou à l’extérieur] lorsqu’une résolution différente est sélectionnée.

  • bordervalues ( bool ou str ou float ou list ) – Les nœuds qui tombent exactement sur une limite de polygone doivent être considérés comme étant à l’extérieur du polygone [la valeur par défaut les considère comme étant à l’intérieur]. Vous pouvez également ajouter une liste de quatre valeurs [ cborder , lborder , iborder , pborder ] ou simplement la seule valeur bordervalue (dans le cas où elles devraient toutes avoir la même valeur). Cela active le mode de suivi de ligne. Maintenant, après avoir défini les valeurs de masque spécifiées via, maskvalues nous traçons les lignes et modifions les valeurs de nœud pour toutes les cellules traversées par une ligne à la valeur de bordure correspondante. Ici, cborderest utilisé pour les cellules traversées par le littoral, lborder pour les cellules traversées par le contour d’un lac, iborder pour les contours des îles dans les lacs et pborder pour les contours des étangs dans les îles dans les lacs [par défaut, pas de tracé de ligne].

  • maskvalues ​​( str ou list ) – [ wet , dry ] ou [ ocean , land , lake , island , pond ]. Définissez les valeurs qui seront affectées aux nœuds. Les valeurs peuvent être n’importe quel nombre, y compris la chaîne de texte NaN [la valeur par défaut est [0, 1, 0, 1, 0] (c’est-à-dire [0, 1])]. Sélectionnez également bordervalues pour que les nœuds situés exactement sur les limites de l’entité soient considérés à l’extérieur [la valeur par défaut est à l’intérieur].

  • verbose ( bool ou str ) – Sélectionnez le niveau de verbosité [la valeur par défaut est w ], qui module les messages écrits sur stderr. Choisissez parmi 7 niveaux de verbosité :
    • q - Des messages d’erreur silencieux, même fatals, ne sont pas générés

    • e - Messages d’erreur uniquement

    • w - Avertissements [par défaut]

    • t - Timings (temps d’exécution des rapports pour les algorithmes chronophages)

    • i - Messages d’information (comme verbose=True)

    • c - Avertissements de compatibilité

    • d - Messages de débogage

  • registration ( str ) – g | p . Forcer l’enregistrement du nœud quadrillage ( g ) ou pixel ( p ) [la valeur par défaut est g (ridline)].

Retour

  • ret ( xarray.DataArray ou None ) – Le type de retour dépend si le outgrid paramètre est défini :
    • xarray.DataArray si outgrid n’est pas défini

    • Aucun si outgrid est défini (la sortie de la grille sera stockée dans le fichier défini par outgrid)

Exemple

import pygmt

fig = pygmt.Figure()

# Define region of interest
region = [-65, -40, -40, -20]

# Assign a value of 0 for all water masses and a value of 1 for all land
# masses.
# Use shoreline data with (l)ow resolution and set the grid spacing to
# 5 arc-minutes in x and y direction.
grid = pygmt.grdlandmask(region=region, spacing="5m", maskvalues=[0, 1], resolution="l")

# Plot clipped grid
fig.basemap(region=region, projection="M12c", frame=True)

# Define a colormap to be used for two categories, define the range of the
# new discrete CPT using series=(lowest_value, highest_value, interval),
# use color_model="+cwater,land" to write the discrete color palette
# "batlow" in categorical format and add water/land as annotations for the
# colorbar.
pygmt.makecpt(cmap="batlow", series=(0, 1, 1), color_model="+cwater,land")

fig.grdimage(grid=grid, cmap=True)
fig.colorbar(position="JMR+o0.5c/0c+w8c")

fig.show()