Appliquer la symbologie d’une couche (Gestion des données)

Synthèse

Applique la symbologie d’une couche ou d’un fichier de couche spécifique à l’entrée. Elle peut être appliquée à une entité, un raster, une analyse de réseau, un TIN et des couches géostatistiques.

Utilisation

  • La couche de symbologie doit correspondre au type de données de la couche en entrée. Par exemple, une couche d'entités ne peut pas s'appliquer à une couche raster et inversement.

  • La symbologie ne peut s'appliquer qu'aux entités de la même géométrie. Par exemple, une symbologie de points ne peut pas s'appliquer à une couche surfacique.

  • Outre la symbologie, l’outil transfère également les propriétés Champ de temps, Décalage et élévation 3D, Classe d’étiquettes et Fenêtre contextuelle HTML.

  • Si l’entrée est un chemin d’accès à une classe d’entités ou à un jeu de données, cet outil crée et renvoie automatiquement une nouvelle couche avec les résultats de l’outil.

  • Vous pouvez conserver ou mettre à jour les plages de symbologie dans le paramètre Mettre à jour les plages de symbologie par données. Les méthodes de symbologie par défaut sont dynamiques. Par exemple, la méthode de classification par seuils naturels en cinq classes issue de la couche de symbologie est appliquée à la couche en entrée et les valeurs de plage sont mises à jour pour refléter les valeurs Shape_Area de la couche en entrée. L’option Conserver les plages utilise les mêmes valeurs que celles utilisées par la couche de symbologie. L’option Mettre à jour les plages utilise la méthode de classification par seuils naturels en cinq classes à partir du champ Shape_Area de la couche en entrée.

    Illustration de l’outil Appliquer la symbologie d’une couche

    Les méthodes suivantes sont dynamiques :

    • Symbologie par valeurs uniques sur une entité
      • Les valeurs uniques sont mises à jour pour refléter les valeurs de la couche en entrée.
      • Si vous ne voulez pas mettre à jour la classification par valeurs uniques, choisissez le symbole par défaut <all other values> (toutes autres valeurs) dans la couche de symbologie.
    • Symbologie par couleurs graduées sur une entité
      • Les valeurs de plage sont mises à jour selon les valeurs de la couche en entrée.
      • Si vous ne voulez pas mettre à jour la plage en sortie, optez pour la classification manuelle.
    • Rendu par valeurs classées sur un raster
      • Les valeurs de plage sont mises à jour pour refléter les valeurs de la couche en entrée.
      • Si vous ne voulez pas mettre à jour la plage en sortie, optez pour la classification manuelle.

  • Lorsque vous définissez le paramètre Mettre à jour les plages de symbologie par données sur Conserver les plages, les étiquettes de la valeur Couche de symbologie sont copiées vers la valeur Couche en entrée. Si le paramètre est défini sur Mettre à jour les plages, les étiquettes sont recalculées.

  • La symbologie est conservée uniquement pendant la durée de la couche. Pour conserver une couche, enregistrez la session AllSource ou enregistrez-la dans un fichier de couche à l’aide de l’outil Enregistrer une couche dans un fichier.

    Pour que vous puissiez afficher la symbologie créée dans un outil de script, l’outil doit inclure la couche comme paramètre dérivé en sortie. De manière similaire, vous devez ajouter la valeur du paramètre Couche en entrée mise à jour en tant qu’outil de modélisation d’un paramètre de modèle dérivé pour afficher les modifications de la symbologie.

Paramètres

ÉtiquetteExplicationType de données
Couche en entrée

Couche à laquelle appliquer la symbologie.

Feature Layer; Raster Layer; Layer
Couche de symbologie

Couche contenant la symbologie appliquée à la couche en entrée. Les fichiers .lyrx et .lyr sont tous deux pris en charge.

Layer
Champs de symbologie
(Facultatif)

Champs de la couche en entrée qui correspondent aux champs de symbologie utilisés dans la couche de symbologie. Les champs de symbologie contiennent trois propriétés :

  • Type de champ : type de champ : valeur de la symbologie, normalisation ou autre type.
  • Champ source : le champ de symbologie utilisé par la couche de symbologie. Utilisez une valeur vide ou "#" si vous ne connaissez pas le champ source et souhaitez utiliser les valeurs par défaut.
  • Champ cible : le champ de la couche en entrée à utiliser lors de l'application de la symbologie.

Les types de champs pris en charge sont les suivants :

  • Value field (Champ de valeur) : champ principal utilisé pour symboliser les valeurs.
  • Normalization field (Champ de normalisation) : champ utilisé pour normaliser les valeurs quantitatives.
  • Exclusion clause field (Champ de clause d’exclusion) : champ utilisé pour la clause d’exclusion de symbologie.
  • Chart renderer pie size field (Champ de la taille de secteur du moteur de rendu par diagramme) : champ utilisé pour définir la taille des symboles des diagrammes à secteurs.
  • Rotation X expression field (Champ de l’expression Rotation X) : champ utilisé pour définir la rotation des symboles sur l’axe x.
  • Rotation Y expression field (Champ de l’expression Rotation Y) : champ utilisé pour définir la rotation des symboles sur l’axe y.
  • Rotation Z expression field (Champ de l’expression Rotation Z) : champ utilisé pour définir la rotation des symboles sur l’axe z.
  • Transparency expression field (Champ de l’expression Transparence) : champ utilisé pour définir la transparence des symboles.
  • Transparency normalization field (Champ de normalisation Transparence) : champ utilisé pour normaliser les valeurs de transparence.
  • Size expression field (Champ de l’expression Taille) : champ utilisé pour définir la taille ou la largeur des symboles.
  • Color expression field (Champ de l’expression Couleur) : champ utilisé pour définir la couleur des symboles.
  • Primitive override expression field (Champ de l’expression Remplacement de primitive) : champ utilisé pour définir diverses propriétés sur des couches de symboles individuelles.

Value Table
Mettre à jour les plages de symbologie par données
(Facultatif)

Précise si les plages de symbologie seront mises à jour.

  • Par défautLes plages de symbologie sont mises à jour, sauf dans les situations suivantes : lorsque la couche en entrée est vide, lorsque la couche de symbologie utilise des interruptions de classe (par exemple, couleurs graduées ou symboles gradués) et que la méthode de classification est manuelle ou à intervalle défini, ou lorsque la couche de symbologie utilise des valeurs uniques et que l’option Afficher toutes les autres valeurs est activée.
  • Mettre à jour les plagesLes plages de symbologie seront mises à jour.
  • Conserver les plagesLes plages de symbologie ne seront pas mises à jour ; elles seront préservées.
String

Sortie obtenue

ÉtiquetteExplicationType de données
Couche en entrée mise à jour

Couche en entrée mise à jour.

Layer

arcpy.management.ApplySymbologyFromLayer(in_layer, in_symbology_layer, {symbology_fields}, {update_symbology})
NomExplicationType de données
in_layer

Couche à laquelle appliquer la symbologie.

Feature Layer; Raster Layer; Layer
in_symbology_layer

Couche contenant la symbologie appliquée à la couche en entrée. Les fichiers .lyrx et .lyr sont tous deux pris en charge.

Layer
symbology_fields
[[field_type, source_field, target_field],...]
(Facultatif)

Champs de la couche en entrée qui correspondent aux champs de symbologie utilisés dans la couche de symbologie. Les champs de symbologie contiennent trois propriétés :

  • Type de champ : type de champ : valeur de la symbologie, normalisation ou autre type.
  • Champ source : le champ de symbologie utilisé par la couche de symbologie. Utilisez une valeur vide ou "#" si vous ne connaissez pas le champ source et souhaitez utiliser les valeurs par défaut.
  • Champ cible : le champ de la couche en entrée à utiliser lors de l'application de la symbologie.

Les types de champs pris en charge sont les suivants :

  • VALUE_FIELD : champ principal utilisé pour symboliser les valeurs.
  • NORMALIZATION_FIELD : champ utilisé pour normaliser les valeurs quantitatives.
  • EXCLUSION_CLAUSE_FIELD : champ utilisé pour la clause d’exclusion de symbologie.
  • CHART_RENDERER_PIE_SIZE_FIELD : champ utilisé pour définir la taille des symboles des diagrammes à secteurs.
  • ROTATION_XEXPRESSION_FIELD :champ utilisé pour définir la rotation des symboles sur l’axe x.
  • ROTATION_YEXPRESSION_FIELD : champ utilisé pour définir la rotation des symboles sur l’axe y.
  • ROTATION_ZEXPRESSION_FIELD : champ utilisé pour définir la rotation des symboles sur l’axe z.
  • TRANSPARENCY_EXPRESSION_FIELD : champ utilisé pour définir la transparence des symboles.
  • TRANSPARENCY_NORMALIZATION_FIELD : champ utilisé pour normaliser les valeurs de transparence.
  • SIZE_EXPRESSION_FIELD : champ utilisé pour définir la taille ou la largeur des symboles.
  • COLOR_EXPRESSION_FIELD : champ utilisé pour définir la couleur des symboles.
  • PRIMITIVE_OVERRIDE_EXPRESSION_FIELD : champ utilisé pour définir diverses propriétés sur des couches de symboles individuelles.

Value Table
update_symbology
(Facultatif)

Précise si les plages de symbologie seront mises à jour.

  • DEFAULTLes plages de symbologie sont mises à jour, sauf dans les situations suivantes :
    • Lorsque la couche en entrée est vide.
    • Lorsque la couche de symbologie utilise des interruptions de classe (par exemple, couleurs graduées ou symboles gradués) et que la méthode de classification est manuelle ou à intervalle défini.
    • Lorsque la couche de symbologie utilise des valeurs uniques et que l’option Show all other values (Afficher toutes les autres valeurs) est activée.
  • UPDATELes plages de symbologie seront mises à jour.
  • MAINTAINLes plages de symbologie ne seront pas mises à jour ; elles seront préservées.
String

Sortie obtenue

NomExplicationType de données
out_layer

Couche en entrée mise à jour.

Layer

Exemple de code

Exemple 1 d'utilisation de la fonction ApplySymbologyFromLayer (fenêtre Python)

Le script ci-dessous pour la fenêtre Python illustre l’utilisation de la fonction ApplySymbologyFromLayer en mode immédiat.

import arcpy
arcpy.env.workspace = "C:/data.gdb"
arcpy.management.ApplySymbologyFromLayer("sf_points", "sf_points_water.lyrx")
Exemple 2 d'utilisation de la fonctionApplySymbologyFromLayer (script autonome)

Ce qui suit illustre l’utilisation de la fonction ApplySymbologyFromLayer dans un script autonome.


# Import system modules
import arcpy

# Set the current workspace
arcpy.env.workspace = "C:/data.gdb"

# Set layer to apply symbology to
inputLayer = "sf_points"

# Set layer that output symbology will be based on
symbologyLayer = "water_symbols_pnt.lyrx"

# Apply the symbology from the symbology layer to the input layer
arcpy.management.ApplySymbologyFromLayer(inputLayer, symbologyLayer)
Exemple 3 d'utilisation de la fonction ApplySymbologyFromLayer (script autonome)

Ce qui suit illustre l’utilisation de la fonction ApplySymbologyFromLayer dans un script autonome.


# Import system modules
import arcpy

# Set the current workspace
arcpy.env.workspace = "C:/data.gdb"

# Set layer to apply symbology to
inputLayer = "InlandEmpireBlocks"

# Set layer that output symbology will be based on
symbologyLayer = "USCensusBlocks.lyrx"

# The symbology layer is symbolized by population normalized by area.
# Symbolize the input by Pop2014 field normalized to Square Miles
symbologyFields = [["VALUE_FIELD", "#", "Pop2014"], 
                   ["NORMALIZATION_FIELD", "#", "SQ_MILES"]]

# Apply the symbology from the symbology layer to the input layer
arcpy.management.ApplySymbologyFromLayer(inputLayer, symbologyLayer, 
                                         symbologyFields)
Exemple 3 d’utilisation de la fonction ApplySymbologyFromLayer (script autonome)

Dans un outil de script, appliquez la symbologie aux différentes couches d’entités dérivées en sortie. L’outil illustré en exemple comporte les paramètres suivants :

  • Couches en entrée
    • Type de données : couche d’entités (valeurs multiples)
    • Type : requis
    • Direction : entrée
  • Symbologie
    • Type de données : couche d’entités
    • Type : requis
    • Direction : entrée
  • Sortie dérivée
    • Type de données : couche d’entités (valeurs multiples)
    • Type : dérivé
    • Direction : sortie

# Import system modules
import os
import arcpy

# Get Parameters
layers = arcpy.GetParameter(0)  # Accepts Feature Layers (multivalue)
sym = arcpy.GetParameter(1)  # Accepts a Feature Layer

# Apply symbology to each input layer, store the result objects in a list
results = []
for layer in layers:

    # Derive the name of the output featureclass
    layername = arcpy.Describe(layer).baseName
    outfeature = os.path.join(arcpy.env.scratchGDB, layername + "_out")

    # Copy feature to get output. This step could be replaced by other
				# steps that produce or manipulate a featureclass.
    arcpy.management.CopyFeatures(layer, outfeature)

				# Apply symbology to the each final output
    res = arcpy.management.ApplySymbologyFromLayer(outfeature, sym)

    # Append multivalue feature
    results.append(res)

# Set the symbology of the derived output parameter using the 
# list of result objects
arcpy.SetParameter(2, results)