Краткая информация
Класс Line создает линейные диаграммы. Диаграммы-графики позволяют вам визуализировать изменения в непрерывном диапазоне, например, времени или расстояния. Визуализация изменений с помощью графика позволяет одновременно отображать общий тренд, а также одновременно сравнивать несколько трендов.
Обсуждение
При создании этого объекта дополнительные аргументы конструктора классов должны указываться с помощью имени аргумента; их нельзя указывать позицией аргумента. См. раздел с примерами кодов, содержащий пример того, как можно задавать аргументы, используя ключевые слова.
Синтаксис
Line (x, {y}, {splitCategory}, {multiSeriesDisplay}, {miniChartsPerRow}, {showPreviewChart}, {aggregation}, {timeIntervalUnits}, {timeIntervalSize}, {timeAggregationType}, {trimIncompleteTimeInterval}, {nullPolicy}, {rotated}, {title}, {description}, {xTitle}, {yTitle}, {dataSource}, {displaySize}, {theme})
Параметр | Описание | Тип данных |
x | Имя поля для переменной оси x. Поле должно быть числовым или полем даты. | String |
y | Имя поля или имена для переменных оси y. Значение должно быть числовым полем или списком числовых полей. | String |
splitCategory | Поле категории, которое добавляет отдельные серии или линию для каждого уникального значения в поле. | String |
multiSeriesDisplay | Задает тип отображения для линейной диаграммы с несколькими сериями.
| String |
miniChartsPerRow | Число мини диаграмм, которые будут отображаться в строке. | Integer |
showPreviewChart | Показывает, будет ли отображаться предварительный просмотр диаграмм в гриде.
(Значение по умолчанию — False) | Boolean |
aggregation | Определяет статистический расчет, который применяется к значениям, агрегированным в каждом временном или числовом бине.
| String |
timeIntervalUnits | Задает единицу времени для timeIntervalSize.
| String |
timeIntervalSize | Промежуток времени, который будет сгруппирован или объединен. Этот аргумент должен использоваться в сочетании с timeIntervalUnits. | String |
timeAggregationType | Задает тип выравнивания временного интервала.
| String |
trimIncompleteTimeInterval | Определяет, будут ли незавершенные временные интервалы в начале или в конце интервала данных (в зависимости от значения timeAggregationType) удалены из диаграммы. Незавершенные интервалы на диаграмме могут привести к ошибочным результатам, в которых рассматриваемый период меньше или больше указанного из-за различного количества времени в интервале.
| String |
nullPolicy | Определяет, как отображаются суммированные ячейки, возвращающие значение null.
| String |
rotated | Указывает, будут ли линии отображаться по горизонтали или вертикали.
(Значение по умолчанию — False) | Boolean |
title |
Заголовок диаграммы. Текст заголовка отображается в верхней части диаграммы и используется в качестве подписи к диаграмме на панели Содержание. | String |
description | Описание диаграммы. Текст диаграммы отображается внизу вида диаграммы. | String |
xTitle | Заголовок оси х диаграммы. | String |
yTitle | Заголовок оси y диаграммы. | String |
dataSource | Источник данных диаграммы. Когда диаграмма экспортируется с использованием метода exportToSVG или отображается в ArcGIS Notebooks , источник данных считывается и отображается на диаграмме. К допустимым источникам данных относятся следующие: | Object |
displaySize [displaySize,...] | Размер диаграммы при экспорте с помощью метода exportToSVG или при отображении в ArcGIS Notebooks. Значение должно быть указано как список из двух элементов, в котором первый элемент является шириной диаграммы, а второй - высотой. | List |
theme | Задает тему, которая будет применена к диаграмме.
| String |
Свойства
Свойство | Описание | Тип данных |
aggregation (чтение и запись) | Определяет статистический расчет, который будет применён к значениям, агрегированным в каждом временном или числовом бине.
| String |
MISSING_PROPNAME (чтение и запись) | List | |
dataSource (чтение и запись) | Источник данных диаграммы. Когда диаграмма экспортируется с использованием метода exportToSVG или отображается в ArcGIS Notebook, источник данных считывается и отображается на диаграмме. К допустимым источникам данных относятся следующие: | Object |
description (чтение и запись) | Описание диаграммы. Текст диаграммы отображается внизу вида диаграммы. | String |
displaySize (чтение и запись) | Размер диаграммы при экспорте с помощью метода exportToSVG или при отображении в ArcGIS Notebook. Значение должно быть указано как список из двух элементов, в котором первый элемент является шириной диаграммы, а второй - высотой. | List |
MISSING_PROPNAME (чтение и запись) | Boolean | |
legend (чтение и запись) | Свойства легенды диаграммы.
| Object |
miniChartsPerRow (чтение и запись) | Число минидиаграмм, которые будут отображаться в строке. Число строк будет определяться количеством серий, деленным на значение miniChartsPerRow. | Integer |
multiSeriesDisplay (чтение и запись) | Задает тип отображения для линейной диаграммы с несколькими сериями.
| String |
nullPolicy (чтение и запись) | Определяет, как будут отображаться суммированные ячейки, возвращающие значение null.
| String |
rotated (чтение и запись) | Указывает, отображается ли диаграмма вертикально или горизонтально.
| Boolean |
showPreviewChart (чтение и запись) | Показывает, будет ли отображаться предварительный просмотр диаграмм в гриде.
| Boolean |
splitCategory (чтение и запись) | Поле категории, которое добавляет отдельные серии или линию для каждого уникального значения в поле. | String |
theme (чтение и запись) | Имя темы, которая будет применена к диаграмме. | String |
timeAggregationType (чтение и запись) | Задает тип выравнивания временного интервала.
| String |
timeIntervalSize (чтение и запись) | Промежуток времени, который будет сгруппирован или объединен. Параметр должен использоваться в сочетании с timeIntervalUnits. | String |
timeIntervalUnits (чтение и запись) | Задает единицу времени для значения timeIntervalSize.
| String |
title (чтение и запись) | Заголовок диаграммы. Текст заголовка появляется в верхней части вида диаграммы и используется как надпись на панели Содержание на вкладке | String |
trimIncompleteTimeInterval (чтение и запись) | Определяет, будут ли незавершенные временные интервалы в начале или конце интервала данных (в зависимости от значения timeAggregationType) удалены из диаграммы. Незавершенные интервалы на диаграмме могут привести к ошибочным результатам, в которых рассматриваемый период меньше или больше указанного из-за различного количества времени в интервале.
| String |
type (только чтение) | Строковое значение, обозначающее тип диаграммы. | String |
x (чтение и запись) | Имя поля для переменной оси x. Поле должно быть числовым или полем даты. | String |
xAxis (чтение и запись) | Задает свойства оси x.
| Object |
y (чтение и запись) | Имена полей для числовых полей. Укажите одно имя поля или список имен полей. | String |
yAxis (чтение и запись) | Определяет свойства оси y.
| Object |
Обзор метода
Метод | Описание |
addToLayer (layer_or_layerfile) | Метод addToLayer добавляет объект диаграммы в представление слоя или таблицы. |
exportToSVG (path, width, height) | Метод exportToSVG экспортирует диаграмму в формат SVG. |
updateChart () | Метод updateChart обновляет свойства диаграммы для синхронизации изменений между объектом и диаграммой, предварительно добавленной к слою. |
Методы
addToLayer (layer_or_layerfile)
Параметр | Описание | Тип данных |
layer_or_layerfile | The chart will be added to the target object. This argument can be a Layer or Table object. | Object |
Добавление объекта диаграммы в слой или таблицу с использованием метода addToLayer часто является последним шагом после определения свойств диаграммы.
Добавьте диаграмму к существующему слою.
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)
exportToSVG (path, width, height)
Параметр | Описание | Тип данных |
path | The path where the chart will be exported in SVG format. | String |
width | The width of the output graphic. | Integer |
height | The height of the output graphic. | Integer |
В некоторых случаях вам может понадобиться сохранить диаграмму в графический формат, который можно совместно использовать и просматривать вне ArcGIS AllSource. Преимуществом экспорта в формат SVG является то, что графические элементы и текст сохраняются, как векторные объекты, каждый из которых можно изменять в программе, работающей с векторной графикой. Размер графики SVG также можно изменить на любой другой без потери качества.
Экспортируйте диаграмму, содержащую источник данных слоя проекта в файл .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)
Экспортируйте диаграмму, содержащую источник данных сервиса объектов в файл .svg.
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.exportToSVG('theftsPerBeat.svg', 800, 600)
updateChart ()
Добавление объекта диаграммы в слой с использованием метода addToLayer часто является последним шагом после определения свойств диаграммы.
Вы также можете изменить свойства исходной диаграммы вместо создания новой Затем можно использовать метод 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()
Пример кода
Создайте диаграмму-график и добавьте ее к слою в текущем проекте.
import arcpy
lyr = arcpy.mp.ArcGISProject("current").listMaps()[0].listLayers()[0]
chart = arcpy.charts.Line(x="date", y="aqi", aggregation="mean")
chart.addToLayer(lyr)