ArcGIS for Desktop

  • Документация
  • Стоимость
  • Поддержка

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

ArcGIS Online

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

ArcGIS for Desktop

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

ArcGIS for Server

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

ArcGIS for Developers

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

ArcGIS Solutions

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

ArcGIS Marketplace

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

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

Справка

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

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

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

Краткая информация

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

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

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

  • Если имя выходного схематического представления уже существует, оно может быть удалено, а затем создано повторно. Чтобы избежать этого удаления, можно снять отметку с опции Переписать результаты операций геообработки (Overwrite the outputs of geoprocessing operations) в диалоговом окне Опции геообработки (Geoprocessing Options).

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

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

Синтаксис

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

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

Внимание:

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

Schematic Dataset;Schematic Folder
out_name

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

String
diagram_type
[diagram_type,...]

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

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

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

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

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

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

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

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

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

Пример кода

Инструмент Создать схему и Стандартный компоновщик, работающий с данными геометрической сети: пример 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

# import system modules
import arcpy
msgNoLicenseAvailable = "ArcGIS Schematics license required"

try:
    # Checks out the ArcGIS Schematics 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 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)
Инструмент Создать схему и Компоновщик набора сетевых данных: пример 2 (автономный скрипт Python)

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

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

# Name : CreateDiagramNDS.py
# Description : Create a schematic diagram from the network dataset builder
# Requirement: ArcGIS Schematics,ArcGIS Network Analyst 

# import system modules
import arcpy
msgNoLicenseSchematicsAvailable = "ArcGIS Schematics license required"
msgNoLicenseNetworkAnalystAvailable = "ArcGIS Network Analyst license required"

try:
    # Checks out the ArcGIS Schematics licence
    if arcpy.CheckExtension("Schematics") == "Available":
        arcpy.CheckOutExtension("Schematics")
    else:
        raise Exception(msgNoLicenseSchematicsAvailable)

    # Checks out the ArcGIS Network Analyst 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)
Инструмент Создать схему и XML-компоновщик (XML builder): пример 3 (автономный скрипт Python)

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

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

# Name: CreateDiagramXML.py
# Description: Create a sample schematic diagram based on the XML builder
# Requirement: ArcGIS Schematics

# import system modules
import arcpy
msgNoLicenseAvailable = "ArcGIS Schematics license required"

try:
    # Checks out the ArcGIS Schematics 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 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)
Инструмент Создать схему и Стандартный компоновщик, работающий из пользовательских запросов: пример 4 (автономный скрипт Python)

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

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

# Name: CreateDiagramCustomQuery.py
# Description: Create a schematic diagram from custom queries
# Requirement: 

# import system modules
import arcpy
msgNoLicenseAvailable = "ArcGIS Schematics license required"

try:
    # Checks out the ArcGIS Schematics 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 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)

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

  • Выходная система координат (Output Coordinate System)

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

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

Связанные темы

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

ArcGIS for Desktop

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

ArcGIS Platform

  • ArcGIS Online
  • ArcGIS for Desktop
  • ArcGIS for Server
  • ArcGIS for Developers
  • ArcGIS Solutions
  • ArcGIS Marketplace

Об Esri

  • О нас
  • Карьера
  • Блог сотрудников
  • Конференция пользователей
  • Саммит разработчиков
Esri
© Copyright 2016 Environmental Systems Research Institute, Inc. | Конфиденциальность | Правовая информация