Сводка
Конвертирует объекты в формат JSON или GeoJSON. Поля, геометрия и пространственная привязка объектов конвертируется в соответствующее представление JSON и записываются в файл с расширением .json или .geojson.
Использование
Если вы хотите, чтобы JSON-представление в выходном файле было более понятным, можно использовать форматирование. Выходной файл будет отформатирован с использованием пробелов, табуляторов и переходов на новые строки, что улучшит его читаемость. Форматированный JSON может быть удобен для разработки приложений и тестирования. Однако не рекомендуется использовать форматирование в реальных приложениях, поскольку все пробелы не являются необходимыми и игнорируются обработчиками JSON. Кроме того, форматированный JSON занимает значительно больше места, чем неформатированный, и размер файла будет больше, чем соответствующее представление JSON. Это может повлиять на производительность приложения.
Конвертация не поддерживает соединения, связи и вложения объектов.
Для конвертации поднабора объектов из класса объектов или слоя используйте инструменты Выбрать в слое по атрибуту или Выбрать в слое по расположению и выберите поднабор объектов для конвертации перед использованием инструмента Объекты в JSON.
Используйте параметр Выходные данные в GeoJSON (geoJSON='GEOJSON' в Python) для создания файла .geojson, который соответствует спецификации GeoJSON. Значением выходного формата по умолчанию является Esri JSON.
Если в качестве выходного файла указан файл GeoJSON, у вас есть возможность спроецировать входные объекты в систему координат WGS 1984, которая является стандартом для спецификации GeoJSON. При необходимости будет применено географическое преобразование по умолчанию. Если опция не используется, выходной файл GeoJSON будет содержать тег crs, который используется в некоторых приложениях для определения системы координат. Этот тег не поддерживается полностью в спецификации GeoJSON.
В выходных данных инструмента будут только видимые атрибутивные поля входных данных. Чтобы включить все поля, их нужно сделать видимыми. Кроме того, вы можете использовать параметр Использовать псевдонимы полей, чтобы в выходных данных вместо имен полей использовались псевдонимы.
Синтаксис
arcpy.conversion.FeaturesToJSON(in_features, out_json_file, {format_json}, {include_z_values}, {include_m_values}, {geoJSON}, {outputToWGS84}, {use_field_alias})
Parameter | Объяснение | Тип данных |
in_features | Объекты для конвертации в JSON. | Feature Layer |
out_json_file | Выходной файл JSON или GeoJSON. | File |
format_json (Дополнительный) | Указывает, будет ли JSON отформатирован для улучшения читаемости, в соответствии со спецификациями ArcGIS REST API для формата PJSON (Pretty JSON).
| Boolean |
include_z_values (Дополнительный) | Указывает, будет ли JSON включать z-значения объектов.
| Boolean |
include_m_values (Дополнительный) | Указывает, будет ли JSON включать m-значения объектов.
| Boolean |
geoJSON (Дополнительный) | Указывает, будут ли выходные данные созданы как GeoJSON, в соответствии со спецификацией GeoJSON.
| Boolean |
outputToWGS84 (Дополнительный) | Определяет будут ли входные объекты спроецированы в географическую систему координат WGS_1984 с географическим преобразованием по умолчанию. Данная опция применяется только, когда выходные данные GeoJSON.
| Boolean |
use_field_alias (Дополнительный) | Определяет, будет ли выходной файл использовать псевдонимы полей для атрибутов объектов.
| Boolean |
Пример кода
Пример скрипта Python для выполнения функции FeaturesToJSON для создания файлов JSON и PJSON.
import arcpy
import os
arcpy.env.workspace = "c:/data"
arcpy.FeaturesToJSON_conversion(os.path.join("outgdb.gdb", "myfeatures"),
"myjsonfeatures.json")
arcpy.FeaturesToJSON_conversion(os.path.join("outgdb.gdb", "myfeatures"),
"mypjsonfeatures.json", "FORMATTED")
Пример скрипта Python для выполнения функции FeaturesToJSON с использованием z- и m-значений.
import arcpy
import os
arcpy.env.workspace = "c:/data"
arcpy.FeaturesToJSON_conversion(os.path.join("outgdb.gdb", "myfeatures"),
"myjsonfeatures.json", "NOT_FORMATTED",
"Z_VALUES", "M_VALUES")
Конвертация поднабора объектов в JSON с помощью SelectLayerByAttribute и SelectLayerByLocation.
# Import system modules
import arcpy
# Set the workspace
arcpy.env.workspace = "c:/data/mexico.gdb"
# Make a layer from the feature class
arcpy.MakeFeatureLayer_management("cities", "cities_lyr")
# Select all cities that overlap the chihuahua polygon
arcpy.SelectLayerByLocation_management("cities_lyr", "intersect", "chihuahua",
0, "new_selection")
# Within selected features, further select only those cities that have a
# population > 10,000
arcpy.SelectLayerByAttribute_management("cities_lyr", "SUBSET_SELECTION",
'"population" > 10000')
# Convert the selected features to JSON
arcpy.FeaturesToJSON_conversion("cities_lyr", r"c:\data\myjsonfeatures.json")
Environments
Информация о лицензиях
- Basic: Да
- Standard: Да
- Advanced: Да