ArcGIS Desktop

  • ArcGIS Pro
  • ArcMap

  • My Profile
  • Aide
  • Sign Out
ArcGIS Desktop

ArcGIS Online

La plateforme cartographique de votre organisation

ArcGIS Desktop

Un SIG professionnel complet

ArcGIS Enterprise

SIG dans votre entreprise

ArcGIS Developers

Outils de création d'applications de localisation

ArcGIS Solutions

Modèles d'applications et de cartes gratuits pour votre secteur d'activité

ArcGIS Marketplace

Téléchargez des applications et des données pour votre organisation.

  • Documentation
  • Support
Esri
  • Se connecter
user
  • Mon profil
  • Déconnexion

ArcMap

  • Accueil
  • Commencer
  • Carte
  • Analyser
  • Gérer les données
  • Outils
  • Extensions

Crée un diagramme

  • Résumé
  • Utilisation
  • Syntaxe
  • Exemple de code
  • Environnements
  • Informations de licence

Résumé

Crée un diagramme schématique.

La création de diagrammes peut reposer sur des couches d'entités, des classes d'entités, des tables d'objets, une couche d'analyse de réseau ou des données XML, selon le générateur schématique utilisé.

Utilisation

  • Si le nom du diagramme schématique en sortie existe déjà, il risque d'être supprimé avant d'être recréé. Pour éviter cette suppression, vous pouvez désactiver la case Remplacer les résultats des opérations de géotraitement dans la boîte de dialogue Options de géotraitement.

  • Selon le générateur schématique associé au modèle de diagramme spécifié pour le diagramme à créer, le paramètre Données en entrée est requis ou non :

    • Le paramètre est obligatoire pour un modèle de diagramme basé sur le générateur standard lorsqu'il est configuré en vue de fonctionner à partir d'un réseau géométrique ou d'un jeu de données réseau. Les tables en entrée spécifiées peuvent être des couches d'entités, des classes d'entités ou des tables d'objets.
    • Vous devez spécifier une couche d'analyse de réseau unique comme paramètre Données en entrée pour un modèle de diagramme basé sur le générateur de jeu de données réseau.
    • Vous devez spécifier un fichier XML unique comme paramètre Données en entrée pour un modèle de diagramme basé sur le générateur XML.
    • Aucune donnée en entrée n'est requise pour un modèle de diagramme basé sur le générateur standard lorsqu'il est configuré en vue de gérer les requêtes personnalisées.

Syntaxe

arcpy.schematics.CreateDiagram(out_location, out_name, diagram_type, {in_data}, {builder_options})
ParamètreExplicationType de données
out_location

Jeu de données schématique ou dossier schématique dans lequel le diagramme sera créé.

Attention :

Ce conteneur doit déjà exister au préalable.

Schematic Dataset;Schematic Folder
out_name

Nom du diagramme schématique à créer.

String
diagram_type

Modèle de diagramme schématique du diagramme schématique à créer.

String
in_data
[in_data,...]
(Facultatif)

Données en entrée permettant de générer le diagramme.

Le paramètre Données en entrée indique les éléments sur lesquels repose la création des diagrammes. Vous devez le définir pour la plupart des générateurs schématiques prédéfinis :

  • Pour les modèles de diagrammes qui fonctionnent avec le générateur standard configuré en vue d'être utilisé à partir d'un réseau géométrique ou d'un jeu de données réseau, le paramètre Données en entrée doit au moins faire référence à une couche d'entités, une classe d'entités ou une table d'objets.
  • Pour les modèles de diagrammes qui fonctionnent avec le générateur de jeu de données réseau, le paramètre Données en entrée doit faire référence à une couche d'analyse de réseau unique. Le cas échéant, Schematics essaie d'exécuter l'analyse de réseau correspondante avant d'utiliser la couche d'analyse résolue en entrée.
  • Pour les modèles de diagrammes associés au générateur XML, le paramètre Données en entrée est facultatif lorsque les données permettant de générer le diagramme sont fournies par un composant externe. Mais si aucun composant externe n'est défini pour les propriétés du générateur, le paramètre Données en entrée doit faire référence à un fichier XML. Dans les deux cas, les données XML en entrée doivent être générées conformément au fichier de structure XML XMLBuilderDiagram.
  • Aucune donnée en entrée n'est requise pour les modèles de diagrammes qui fonctionnent avec le générateur standard configuré en vue de gérer les requêtes personnalisées.
Attention :

Pour les modèles de diagrammes qui fonctionnent avec le générateur XML, le générateur de jeu de données réseau, ainsi que le générateur standard configuré en vue d'être utilisé à partir d'un réseau géométrique ou d'un jeu de données réseau, le diagramme ne peut pas être généré si aucune donnée en entrée n'est spécifiée.

Table View;Data Element;Layer
builder_options
(Facultatif)

Paramètres de création du générateur schématique. Ces paramètres sont obligatoires uniquement pour les diagrammes basés sur le générateur de jeu de données réseau. Ils indiquent si les nœuds seront fusionnés.

  • MERGE_NODES —Spécifie les jonctions d'élément du réseau qui sont traversées plusieurs fois sur l'itinéraire résultant d'une analyse d'itinéraires, afin de les représenter par un nœud d'entité schématique unique dans le diagramme schématique généré. Ce paramètre permet également de fusionner des éléments midspanjunction qui occupent le même emplacement dans une analyse de zone de desserte.
  • NO_MERGE_NODES —Indique qu'aucun nœud d'entité schématique ne sera fusionné (valeur par défaut).
String

Exemple de code

Exemple 1 d'utilisation de l'outil CreateDiagram et du générateur standard basé sur des données du réseau géométrique (script Python autonome)

Créez des exemples de diagrammes schématiques à l'aide d'entités SIG organisées dans un réseau géométrique.Procédure d'exécution de cet exemple de script Python :

  1. Démarrez ArcCatalog ou ArcMap avec une carte vierge.
  2. Copiez et collez le script suivant dans la fenêtre Python.
  3. Appuyez sur Entrée.

# Name: CreateDiagramStd.py
# Description: Create schematic diagrams sample from GIS features organized into a geometric network
# Requirement: ArcGIS Schematics extension
# import system modules
import arcpy
msgNoLicenseAvailable = "ArcGIS Schematics extension license required"
try:
    # Checks out the ArcGIS Schematics extension license
    if arcpy.CheckExtension("Schematics") == "Available":
        arcpy.CheckOutExtension("Schematics")
    else:
        raise Exception(msgNoLicenseAvailable)
    # Sets Schematics general settings
    dataLocation="C:/ArcGIS/ArcTutor/Schematics/Schematics_In_ArcMap"
    gdbName="ElecDemo.gdb"
    out_schDataset="ElecDemo"
    out_diagAName="FeederDiagram"
    out_diagBName="ElectricMainNetworkDiagram"
    out_diagTempName="GeoSchematic"
    input_FC1="ElectricNetwork/Feeder"
    input_FC2="ElectricNetwork/PrimaryLine"
    input_LayerName="PrimaryLineLayer"
    input_Filter="PHASECODE=135"
    # Sets environment settings
    arcpy.env.overwriteOutput = True
    arcpy.env.workspace = dataLocation + "/" + gdbName
    # CreateDiagram from a feature class, Feeder
    arcpy.CreateDiagram_schematics(out_schDataset, out_diagAName, out_diagTempName, input_FC1)
    # CreateDiagram from a feature layer
    # 1) Creates a layer with the selection
    InputLayer = arcpy.MakeFeatureLayer_management(input_FC2, input_LayerName, input_Filter)
    # 2) Uses the layer as input of CreateDiagram
    arcpy.CreateDiagram_schematics(out_schDataset, out_diagBName, out_diagTempName, InputLayer)
    # Returns the ArcGIS Schematics extension license
    arcpy.CheckInExtension("Schematics")
    print "Script completed successfully"
except Exception as e:
    # If an error occurred, print line number and error message
    import traceback, sys
    tb = sys.exc_info()[2]
    print "An error occured on line %i" % tb.tb_lineno
    print str(e)
Exemple 2 d'utilisation de l'outil CreateDiagram et du générateur de jeu de données réseau (script Python autonome)

Créez des exemples de diagrammes schématiques à partir d'une couche d'analyse de réseau résolue.Procédure d'exécution de cet exemple de script Python :

  1. Démarrez ArcMap.
  2. Ouvrez le fichier ParisTours.mxd enregistré dans le répertoire C:\ArcGIS\ArcTutor\Schematics\Schematics_Configuration\Network_Dataset.
  3. Cliquez sur Géotraitement > Options de géotraitement.
  4. Désactivez l'option Activer dans la section Traitement en arrière-plan, puis cliquez sur OK.
  5. Copiez et collez le script suivant dans la fenêtre Python.
  6. Appuyez sur Entrée.

# Name : CreateDiagramNDS.py
# Description : Create a schematic diagram from the network dataset builder
# Requirement: ArcGIS Schematics extension,ArcGIS Network Analyst extension 
# import system modules
import arcpy
msgNoLicenseSchematicsAvailable = "ArcGIS Schematics extension license required"
msgNoLicenseNetworkAnalystAvailable = "ArcGIS Network Analyst extension license required"
try:
    # Checks out the ArcGIS Schematics extension licence
    if arcpy.CheckExtension("Schematics") == "Available":
        arcpy.CheckOutExtension("Schematics")
    else:
        raise Exception(msgNoLicenseSchematicsAvailable)
    # Checks out the ArcGIS Network Analyst extension licence
    if arcpy.CheckExtension("Network") == "Available":
        arcpy.CheckOutExtension("Network")
    else:
        raise Exception(msgNoLicenseNetworkAnalystAvailable)
    # Sets general settings
    dataLocation="C:/ArcGIS/ArcTutor/Schematics/Schematics_Configuration/Network_Dataset"
    gdbName="NetworkAnalyst_Schematics.gdb"
    out_schDataset="NA_SchematicDataset"
    out_diagAName="DiagramTour_MERGED"
    out_diagBName="DiagramTour_NOTMERGED"
    out_diagTempName="NADiagrams"
    in_NALayerName="Routes/Tour1"
    option1="MERGE_NODES"
    option2="NO_MERGE_NODES"
    # Sets environnement settings
    arcpy.env.overwriteOutput = True
    arcpy.env.workspace = dataLocation + "/" + gdbName
    # CreateDiagram from a solved route network analysis layer
    # 1) Solves the route network analysis layer, Tour1
    arcpy.Solve_na(in_NALayerName)
    # 2) Creates diagrams from this solved route network analysis layer
    # a - A diagram where a single node is created to represent a GIS point crossed N times along this route (option1)
    arcpy.CreateDiagram_schematics(out_schDataset, out_diagAName, out_diagTempName, in_NALayerName, option1)
    # b - A diagram where N nodes are created to represent a GIS point crossed N times along this route (option2)
    arcpy.CreateDiagram_schematics(out_schDataset, out_diagBName, out_diagTempName, in_NALayerName, option2)
    # Returns the licences
    arcpy.CheckInExtension("Schematics")
    arcpy.CheckInExtension("Network")
    print "Script completed successfully"
except Exception as e:
    # If an error occurred, print line number and error message
    import traceback, sys
    tb = sys.exc_info()[2]
    print "An error occured on line %i" % tb.tb_lineno
    print str(e)
Exemple 3 d'utilisation de l'outil CreateDiagram et du générateur XML (script Python autonome)

Créez un exemple de diagramme schématique basé sur le générateur XML. Procédure d'exécution de cet exemple de script Python :

  1. Lancez ArcCatalog.
  2. Créez et configurez le jeu de données schématique utilisé dans l'exemple de script :
    • Accédez au dossier C:\ArcGIS\ArcTutor\Schematics\Schematics_Configuration\XML_Data dans l'arborescence du catalogue.
    • Cliquez avec le bouton droit de la souris sur la géodatabase GISDatabaseForXML, pointez sur Nouveau, puis cliquez sur Jeu de données schématique.
    • Nommez le nouveau jeu de données schématique "XMLDataset", puis appuyez sur Entrée.
    • Cliquez avec le bouton droit sur le jeu de données schématique XMLDataset, puis sélectionnez Modifier.
    • Dans l'arborescence de l'éditeur de jeu de données, cliquez avec le bouton droit sur l'entrée XMLDataset et sélectionnez Nouveau modèle de diagramme schématique.
    • Tapez XMLDiagrams dans la zone de texte Nom.
    • Sélectionnez Générateur XML dans la section Générateur schématique.
    • Cliquez sur Propriétés du créateur schématique et cochez la case Création automatique de la classe d'entités schématiques.
    • Fermez la boîte de dialogue Propriétés du créateur.
    • Cliquez sur OK.
    • Dans la barre d'outils Editeur de jeu de données schématique, cliquez sur Enregistrer, puis fermez l'éditeur de jeu de données schématique.
  3. Copiez et collez le script suivant dans la fenêtre Python d'ArcCatalog ou d'ArcMap.
  4. Appuyez sur Entrée.

# Name: CreateDiagramXML.py
# Description: Create a sample schematic diagram based on the XML builder
# Requirement: ArcGIS Schematics extension
# import system modules
import arcpy
msgNoLicenseAvailable = "ArcGIS Schematics extension license required"
try:
    # Checks out the ArcGIS Schematics extension license
    if arcpy.CheckExtension("Schematics") == "Available":
        arcpy.CheckOutExtension("Schematics")
    else:
        raise Exception(msgNoLicenseAvailable)
    # Sets Schematics general settings
    dataLocation="C:/ArcGIS/ArcTutor/Schematics/Schematics_Configuration/XML_Data"
    gdbName="GISDatabaseForXML.gdb"
    out_schDataset="XMLDataset"
    out_diagName="XMLDiagramSample"
    out_diagTempName="XMLDiagrams"
    input_XmlFile="SampleNetworkData.xml"
    # Sets environment settings
    arcpy.env.overwriteOutput = True
    arcpy.env.workspace = dataLocation + "/" + gdbName
    # CreateDiagram from a XML file, SampleNetworkData.xml file
    arcpy.CreateDiagram_schematics(out_schDataset, out_diagName, out_diagTempName, dataLocation + "/" + input_XmlFile)
    # Returns the ArcGIS Schematics extension license
    arcpy.CheckInExtension("Schematics")
    print "Script completed successfully"
except Exception as e:
    # If an error occurred, print line number and error message import traceback, sys
    tb = sys.exc_info()[2]
    print "An error occured on line %i" % tb.tb_lineno
    print str(e)
Exemple 4 d'utilisation de l'outil CreateDiagram et du générateur standard fonctionnant à partir de requêtes personnalisées (script Python autonome)

Créez un exemple de diagramme schématique à partir de requêtes personnalisées.Procédure d'utilisation de cet exemple de script Python :

  1. Lancez ArcCatalog.
  2. Ce script est exécuté sur une copie de la géodatabase de démonstration ElecDemo pour éviter d'écraser le diagramme Inside Plant d'origine :
    • Accédez au dossier C:\ArcGIS\ArcTutor\Schematics\Schematics_In_ArcMap dans l'arborescence du catalogue.
    • Copiez et collez la géodatabase ElecDemo. L'exemple de script va être exécuté sur cette nouvelle géodatabase ElecDemo_1.
  3. Copiez et collez le script suivant dans la fenêtre Python d'ArcCatalog ou d'ArcMap.
  4. Appuyez sur Entrée.ArcGIS Schematics extension

# Name: CreateDiagramCustomQuery.py
# Description: Create a schematic diagram from custom queries
# Requirement: 
# import system modules
import arcpy
msgNoLicenseAvailable = "ArcGIS Schematics extension license required"
try:
    # Checks out the ArcGIS Schematics extension license
    if arcpy.CheckExtension("Schematics") == "Available":
        arcpy.CheckOutExtension("Schematics")
    else:
        raise Exception(msgNoLicenseAvailable)
    # Sets Schematics general settings
    dataLocation="C:/ArcGIS/ArcTutor/Schematics/Schematics_In_ArcMap"
    gdbName="ElecDemo_1.gdb"
    out_schDataset="ElecDemo"
    out_schFolder="Inside Plants"
    out_diagName="Substation 08"
    out_diagTempName="InsidePlants"
    # Sets environment settings
    arcpy.env.overwriteOutput = True
    arcpy.env.workspace = dataLocation + "/" + gdbName
    # CreateDiagram from a diagram template configured from custom queries
    arcpy.CreateDiagram_schematics(out_schDataset + "/" + out_schFolder, out_diagName, out_diagTempName)
    # Returns the ArcGIS Schematics extension license
    arcpy.CheckInExtension("Schematics")
    print "Script completed successfully"
except Exception as e:
    # If an error occurred, print line number and error message
    import traceback, sys
    tb = sys.exc_info()[2]
    print "An error occured on line %i" % tb.tb_lineno
    print str(e)

Environnements

  • Système de coordonnées en sortie

Informations de licence

  • Basic: Requiert Schematics
  • Standard: Requiert Schematics
  • Advanced: Requiert Schematics

Rubriques connexes

  • Vue d'ensemble de la boîte à outils Schematics
  • Mettre à jour le diagramme
  • Mettre à jour les diagrammes
  • Outil Créer le dossier schématique
  • Convertir un diagramme en entités

ArcGIS Desktop

  • Accueil
  • Documentation
  • Support

ArcGIS

  • ArcGIS Online
  • ArcGIS Desktop
  • ArcGIS Enterprise
  • ArcGIS
  • ArcGIS Developer
  • ArcGIS Solutions
  • ArcGIS Marketplace

A propos d'Esri

  • A propos de la société
  • Carrières
  • Blog d’Esri
  • Conférence des utilisateurs
  • Sommet des développeurs
Esri
Donnez-nous votre avis.
Copyright © 2021 Esri. | Confidentialité | Légal