ArcGIS Desktop

  • ArcGIS Pro
  • ArcMap

  • My Profile
  • Справка
  • Sign Out
ArcGIS Desktop

ArcGIS Online

Картографическая платформа вашей организации

ArcGIS Desktop

Полноценная профессиональная ГИС

ArcGIS Enterprise

ГИС предприятия

ArcGIS Developers

Инструменты для встраивания приложений с местоположениями

ArcGIS Solutions

Бесплатные шаблоны карт и приложений для отрасли

ArcGIS Marketplace

Получение приложения и данных для вашей организации.

  • Документация
  • Поддержка
Esri
  • Войти
user
  • Мой профиль
  • Выход

ArcMap

  • На главную
  • Начало работы
  • Карта
  • Анализ
  • Управление данными
  • Инструменты
  • Дополнительные модули

Создать схему

  • Сводка
  • Использование
  • Синтаксис
  • Пример кода
  • Параметры среды
  • Информация о лицензиях

Сводка

Создает схематическое представление

В зависимости от компоновщика схемы создание схемы может быть основано на слоях объектов, классов объектов, таблицах объектов, слое сетевого анализа или данных XML.

Использование

  • Если имя выходного схематического представления уже существует, оно может быть удалено, а затем создано повторно. Чтобы избежать этого удаления, можно снять отметку с опции Переписать результаты операций геообработки в диалоговом окне Опции геообработки.

  • Потребность в параметре Входные данные зависит от компоновщика схемы, связанного с шаблоном схемы, заданным для создаваемого представления:

    • Для шаблона схемы, основанного на Стандартном компоновщике, настроенном для работы из геометрической сети или набора сетевых данных, параметр необходим. Заданные входные таблицы могут быть слоями объектов, классами объектов или таблицами объектов.
    • Для шаблона схемы, основанного на Компоновщике наборов сетевых данных, в качестве параметра Входные данные должен быть задан уникальный слой сетевого анализа.
    • Для шаблона схемы, основанного на XML-компоновщике, в качестве параметра Входные данные должен быть задан уникальный файл XML.
    • Для шаблона схемы, основанного на Стандартном компоновщике, настроенном для работы из пользовательских запросов, входные данные не требуются.

Синтаксис

arcpy.schematics.CreateDiagram(out_location, out_name, diagram_type, {in_data}, {builder_options})
ПараметрОбъяснениеТип данных
out_location

Набор схематических данных или папка схемы, в которых будет создана схема.

Внимание:

Этот контейнер уже должен существовать.

Schematic Dataset;Schematic Folder
out_name

Имя создаваемого схематического представления.

String
diagram_type

Шаблон для создаваемого схематического представления.

String
in_data
[in_data,...]
(Дополнительный)

Входные данные для создания схемы.

Параметр Входные данные указывает элементы, на основе которых будет создана схема. Параметр должен быть задан для большинства предопределенных компоновщиков схемы:

  • Для шаблонов схемы, работающих со Стандартным компоновщиком, настроенным для работы из геометрической сети или набора сетевых данных, параметр Входные данные должен, по крайней мере, ссылаться на слой объектов, класс объектов или таблицу объектов.
  • Для шаблонов схемы, работающих с Компоновщиком наборов сетевых данных, параметр Входные данные должен ссылаться на уникальный слой сетевого анализа. Если анализ сети не выполнялся, Schematics попытается провести его, а затем использовать полученный слой анализа в качестве входных данных.
  • Для шаблонов схемы, связанных с XML-компоновщиком, параметр Входные данные необязателен, если данные для создания схемы предоставляются внешним компонентом. Но если в свойствах компоновщика внешний компонент не задан, параметр Входные данные должен ссылаться на файл XML. В обоих случаях входные данные XML должны строиться в соответствии с файлом XML-схемы XMLBuilderDiagram.
  • Для шаблонов схемы, работающих со Стандартным компоновщиком, настроенным для работы из пользовательских запросов, входные данные не требуются.
Внимание:

Если входные данные для шаблонов схемы, работающих со Стандартным компоновщиком, настроенным для работы из геометрической сети, набора сетевых данных, XML-компоновщиком и Компоновщиком набора сетевых данных, не заданы, схема создана не будет.

Table View;Data Element;Layer
builder_options
(Дополнительный)

Параметры создания в компоновщике схемы. Эти параметры необходимы только для схем на основе Компоновщика набора сетевых данных, чтобы указать, будут ли объединяться узлы.

  • MERGE_NODES —Указывает соединения элементов сети, которые берутся несколько раз в окончательном анализе маршрутов, представленные единственным узлом схемы объекта в созданном схематическом представлении. Он также позволяет объединять срединные элементы соединения, когда они находятся в одинаковом положении в анализе области обслуживания.
  • NO_MERGE_NODES —Указывает, что узлы объекта схемы объединяться не будут (значение по умолчанию).
String

Пример кода

CreateDiagram и Стандартный компоновщик, работающий с данными геометрической сети, пример 1 (автономный скрипт Python)

Создание образцов схематических представлений из объектов ГИС, организованных в геометрическую сеть.Как запустить этот пример скрипта Python:

  1. Запустите ArcCatalog или ArcMap с новой пустой картой.
  2. Скопируйте приведенный ниже скрипт в Окно Python:
  3. Нажмите ENTER.

# Name: CreateDiagramStd.py
# Description: Create schematic diagrams sample from GIS features organized into a geometric network
# Requirement: ArcGIS Schematics extension extension
# import system modules
import arcpy
msgNoLicenseAvailable = "ArcGIS Schematics extension extension license required"
try:
    # Checks out the ArcGIS Schematics extension 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 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)
CreateDiagram и Компоновщик набора сетевых данных, пример 2 (автономный скрипт Python)

Создание образцов схематических представлений из рассчитанного слоя сетевого анализа.Как запустить этот пример скрипта Python:

  1. Запустите ArcMap.
  2. Откройте файл Open the ParisTours.mxd, хранящийся в C:\ArcGIS\ArcTutor\Schematics\Schematics_Configuration\Network_Dataset.
  3. Щелкните Геообработка > Опции геообработки.
  4. Снимите отметку с Включить в разделе Обработка в фоновом режиме и щелкните ОК.
  5. Скопируйте приведенный ниже скрипт в Окно Python:
  6. Нажмите ENTER.

# Name : CreateDiagramNDS.py
# Description : Create a schematic diagram from the network dataset builder
# Requirement: ArcGIS Schematics extension extension,ArcGIS Network Analyst extension extension 
# import system modules
import arcpy
msgNoLicenseSchematicsAvailable = "ArcGIS Schematics extension extension license required"
msgNoLicenseNetworkAnalystAvailable = "ArcGIS Network Analyst extension extension license required"
try:
    # Checks out the ArcGIS Schematics extension extension licence
    if arcpy.CheckExtension("Schematics") == "Available":
        arcpy.CheckOutExtension("Schematics")
    else:
        raise Exception(msgNoLicenseSchematicsAvailable)
    # Checks out the ArcGIS Network Analyst extension 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)
CreateDiagram и XML-компоновщик, пример 3 (автономный скрипт Python)

Создание образца схематического представления на основе XML компоновщика. Как запустить этот пример скрипта Python:

  1. Запустите ArcCatalog
  2. Создание и настройка набора схематических данных, используемого в ходе работы примера скрипта:
    • Перейдите в папку C:\ArcGIS\ArcTutor\Schematics\Schematics_Configuration\XML_Data в дереве Каталога.
    • Щелкните правой кнопкой мыши базу геоданных GISDatabaseForXML, выберите Новый, а затем щелкните Набор схематических данных.
    • Введите XMLDataset в качестве имени только что созданного набора схематических данных и нажмите клавишу ENTER.
    • Щелкните правой кнопкой мыши набор схематических данных XMLDataset и щелкните Редактировать.
    • Щелкните правой кнопкой мыши элемент XMLDataset в дереве Редактора набора данных и щелкните Новый шаблон схематического представления.
    • Введите XMLDiagrams в текстовое поле Имя.
    • Выберите XML-компоновщик в разделе Компоновщик схемы.
    • Щелкните Свойства компоновщика схемы и отметьте опцию Автоматическое создание класса объектов схемы.
    • Закройте диалоговое окно Свойства компоновщика.
    • Нажмите ОК.
    • Щелкните Сохранить на панели инструментов Редактор набора схематических данных и закройте Редактора.
  3. Скопируйте и вставьте следующий скрипт в окно Python в ArcCatalog или ArcMap:
  4. Нажмите ENTER.

# Name: CreateDiagramXML.py
# Description: Create a sample schematic diagram based on the XML builder
# Requirement: ArcGIS Schematics extension extension
# import system modules
import arcpy
msgNoLicenseAvailable = "ArcGIS Schematics extension extension license required"
try:
    # Checks out the ArcGIS Schematics extension 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 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)
CreateDiagram и Стандартный компоновщик, работающий из пользовательских запросов, пример 4 (автономный скрипт Python)

Создание образца схематического представления из пользовательских запросов.Как использовать этот пример скрипта Python:

  1. Запустите ArcCatalog
  2. Этот скрипт работает с копией учебной базы геоданных ElecDemo, чтобы избежать перезаписи исходной, внутренней схемы:
    • Перейдите в папку C:\ArcGIS\ArcTutor\Schematics\chematics_In_ArcMap в дереве Каталога.
    • Скопируйте и вставьте базу геоданных ElecDemo. Только что созданная база геоданных ElecDemo_1 предназначена для работы примера скрипта.
  3. Скопируйте и вставьте следующий скрипт в окно Python в ArcCatalog или ArcMap:
  4. Нажмите клавишу ENTER. Доп. модуль ArcGIS Schematics extension

# Name: CreateDiagramCustomQuery.py
# Description: Create a schematic diagram from custom queries
# Requirement: 
# import system modules
import arcpy
msgNoLicenseAvailable = "ArcGIS Schematics extension extension license required"
try:
    # Checks out the ArcGIS Schematics extension 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 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)

Параметры среды

  • Выходная система координат

Информация о лицензиях

  • Basic: Требуется Данные схем (Schematics)
  • Standard: Требуется Данные схем (Schematics)
  • Advanced: Требуется Данные схем (Schematics)

Связанные разделы

  • Обзор набора инструментов Cхематика (Schematics)
  • Обновить схему
  • Обновить схемы
  • Создать папку схемы
  • Конвертировать схему в объекты

ArcGIS Desktop

  • На главную
  • Документация
  • Поддержка

ArcGIS

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

Об Esri

  • О нас
  • Карьера
  • Блог Esri
  • Конференция пользователей
  • Саммит разработчиков
Esri
Расскажите нам, что вы думаете.
Copyright © 2021 Esri. | Конфиденциальность | Правовая информация