Pie
Краткая информация
Класс Pie создает круговые диаграммы. Круговые диаграммы группируют данные в доли для отображения отношений части к целому.
Обсуждение
При создании этого объекта дополнительные аргументы конструктора классов должны указываться с помощью имени аргумента; их нельзя указывать позицией аргумента. См. раздел с примерами кодов, содержащий пример того, как можно задавать аргументы, используя ключевые слова.
Синтаксис
Pie({categoryField}, {numberFields}, {splitCategory}, {miniChartsPerRow}, {showPreviewChart}, {groupingPercent}, {donutSize}, {sort}, {showDataLabels}, {dataLabelsDisplay}, {title}, {description}, {dataSource}, {displaySize}, {theme})
| Имя | Объяснение | Тип данных |
|---|---|---|
|
categoryField (Дополнительный) |
Имя поля для переменной категории. |
String |
|
numberFields (Дополнительный) |
Имена полей для числового поля или полей. Укажите одно имя поля или список имен полей. |
String |
|
splitCategory (Дополнительный) |
Поле категории, которое добавляет отдельные серии для каждого уникального значения в поле. |
String |
|
miniChartsPerRow (Дополнительный) |
Число мини диаграмм, которые будут отображаться в строке. |
Integer |
|
showPreviewChart (Дополнительный) |
Показывает, будет ли отображаться предварительный просмотр диаграмм в гриде.
(Значение по умолчанию — False) |
Boolean |
|
groupingPercent (Дополнительный) |
Процентный порог для группировки меньших долей в одну категорию |
Integer |
|
donutSize (Дополнительный) |
Размер отверстия при отображении круговой диаграммы в виде кольца. Введите целое число от 0 до 100, представляющее размер отверстия в процентах по отношению к общему размеру круговой диаграммы. |
Integer |
|
sort (Дополнительный) |
Определяет порядок сортировки долей диаграммы.
|
String |
|
showDataLabels (Дополнительный) |
Определяет, будут ли отображены подписи к данным.
|
Boolean |
|
dataLabelsDisplay (Дополнительный) |
Задает формат, который будет использоваться для подписей данных.
|
String |
|
title (Дополнительный) |
Заголовок диаграммы. Текст заголовка отображается в верхней части диаграммы и используется в качестве подписи к диаграмме на панели Содержание. |
String |
|
description (Дополнительный) |
Описание диаграммы. Текст диаграммы отображается внизу вида диаграммы. |
String |
|
dataSource (Дополнительный) |
Источник данных диаграммы. Когда диаграмма экспортируется с использованием метода |
Object |
|
displaySize (Дополнительный) |
Размер диаграммы при экспорте с помощью метода |
List |
|
theme (Дополнительный) |
Задает тему, которая будет применена к диаграмме.
|
String |
Свойства
| Имя | Объяснение | Тип данных |
|---|---|---|
|
categoryField (Чтение / Запись) |
Имя поля для переменной категории. |
String |
|
dataLabelsDisplay (Чтение / Запись) |
Задает формат, который будет использоваться для подписей данных.
|
String |
|
dataSource (Чтение / Запись) |
Источник данных диаграммы. Когда диаграмма экспортируется с использованием метода |
Object |
|
description (Чтение / Запись) |
Описание диаграммы. Текст диаграммы отображается внизу вида диаграммы. |
String |
|
displaySize (Чтение / Запись) |
Размер диаграммы при экспорте с помощью метода |
List |
|
donutSize (Чтение / Запись) |
Размер отверстия при отображении круговой диаграммы в виде кольца. Введите целое число от 0 до 100, представляющее размер отверстия в процентах по отношению к общему размеру круговой диаграммы. |
Integer |
|
groupingPercent (Чтение / Запись) |
Процентный порог для группировки меньших долей в одну категорию |
Integer |
|
legend (Чтение / Запись) |
Свойства легенды диаграммы.
|
Object |
|
miniChartsPerRow (Чтение / Запись) |
Число мини диаграмм, которые будут отображаться в строке. |
Integer |
|
numberFields (Чтение / Запись) |
Имена полей для числовых полей. Укажите одно имя поля или список имен полей. |
String |
|
showDataLabels (Чтение / Запись) |
Определяет, будут ли отображены подписи к данным.
|
Boolean |
|
showPreviewChart (Чтение / Запись) |
Показывает, будет ли отображаться предварительный просмотр диаграмм в гриде.
|
Boolean |
|
sort (Чтение / Запись) |
Определяет порядок сортировки долей диаграммы.
|
String |
|
splitCategory (Чтение / Запись) |
Поле категории, которое добавляет отдельные серии для каждого уникального значения в поле. |
String |
|
theme (Чтение / Запись) |
Задает тему, которая будет применена к диаграмме.
|
String |
|
title (Чтение / Запись) |
Заголовок диаграммы. Текст заголовка появляется в верхней части вида диаграммы и используется как надпись на панели Содержание на вкладке |
String |
|
type (Только для чтения) |
Строковое значение, обозначающее тип диаграммы. |
String |
Методы
addToLayer(layer_or_layerfile)
Метод addToLayer добавляет объект диаграммы в представление слоя или таблицы.
| Имя | Объяснение | Тип данных |
|---|---|---|
|
layer_or_layerfile |
The chart will be added to the target object. This argument can be a |
Object |
Добавьте диаграмму к существующему слою.
import arcpy
# Insert creation of chart object here
# ...
aprx = arcpy.mp.ArcGISProject("current")
map = aprx.listMaps()[0]
censusLayer = map.listLayers('Census Block Groups')[0]
# Add chart object to a layer
chart.addToLayer(censusLayer)
exportToJPEG(path, width, height)
Метод exportToJPEG экспортирует диаграмму в формат JPEG.
| Имя | Объяснение | Тип данных |
|---|---|---|
|
path |
The path where the chart will be exported in JPEG format. |
String |
|
width |
The width of the output graphic. |
Integer |
|
height |
The height of the output graphic. |
Integer |
Экспортируйте диаграмму, содержащую источник данных сервиса объектов в файл .jpeg.
import arcpy
# Insert creation of chart object here
# ...
featureServiceURL = r'https://services1.arcgis.com/hLJbHVT9ZrDIzK0I/arcgis/rest/services/CrimesChiTheft/FeatureServer/0'
# Set data source of chart object to a feature service URL
chart.dataSource = featureServiceURL
# Save the chart to file with dimensions width=800, height=600
chart.exportToJPEG('theftsPerBeat.jpg', 800, 600)
exportToPNG(path, width, height)
Метод exportToPNG экспортирует диаграмму в формат PNG.
| Имя | Объяснение | Тип данных |
|---|---|---|
|
path |
The path where the chart will be exported in PNG format. |
String |
|
width |
The width of the output graphic. |
Integer |
|
height |
The height of the output graphic. |
Integer |
Получите доступ к существующей диаграмме из слоя, обновите заголовок и экспортируйте ее в файл .png.
import arcpy
lyr = arcpy.mp.ArcGISProject('current').listLayers()[0]
# Retrieve the first chart belonging to the layer
chart = lyr.listCharts()[0]
# Update chart title
chart.title = 'Voter Turnout by State'
# Save the chart to PNG file with dimensions width=800, height=600
chart.exportToPNG('populationByState.png', 800, 600)
exportToSVG(path, width, height)
Метод exportToSVG экспортирует диаграмму в формат SVG.
| Имя | Объяснение | Тип данных |
|---|---|---|
|
path |
Папка, в которой будет сохранена диаграмма в формате SVG. |
String |
|
width |
Ширина выходной графики. |
Integer |
|
height |
Высота выходной графики. |
Integer |
Экспортируйте диаграмму, содержащую источник данных слоя проекта в файл .svg.
import arcpy
# Insert creation of chart object here
# ...
aprx = arcpy.mp.ArcGISProject('current')
censusLayer = aprx.listMaps()[0].listLayers('Census Block Groups')[0]
# Set data source of chart object to a layer in current project
chart.dataSource = censusLayer
# Save the chart to file with dimensions width=500, height=500
chart.exportToSVG('populationByState.svg', 500, 500)
updateChart()
Метод updateChart обновляет свойства диаграммы для синхронизации изменений между объектом и диаграммой, предварительно добавленной к слою.
Используйте метод updateChart для синхронизации изменений свойств диаграммы в слое.
import arcpy
# Insert creation of chart object here
# ...
chart.addToLayer(myLayer)
# Further modification is necessary
chart.description = "Data from the U.S. Census Bureau"
chart.updateChart()
Пример кода
Создайте круговую диаграмму из слоя и экспортируйте диаграмму в файл .svg.
import arcpy
activemap = arcpy.mp.ArcGISProject("current").activeMap
lyr = activemap.listLayers("nyc_noise_complaints")[0]
chart = arcpy.charts.Pie(categoryField="Complaint_Type", title="Noise Complaints by Type", dataSource=lyr)
chart.exportToSVG('pie.svg', width=1000, height=800)