Line

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

Класс Line создает линейные диаграммы. Диаграммы-графики позволяют вам визуализировать изменения в непрерывном диапазоне, например, времени или расстояния. Визуализация изменений с помощью графика позволяет одновременно отображать общий тренд, а также одновременно сравнивать несколько трендов.

Более подробно о диаграммах-графиках в ArcGIS Pro.

Обсуждение

При создании этого объекта дополнительные аргументы конструктора классов должны указываться с помощью имени аргумента; их нельзя указывать позицией аргумента. См. раздел с примерами кодов, содержащий пример того, как можно задавать аргументы, используя ключевые слова.

Синтаксис

 Line (x, {y}, {splitCategory}, {multiSeriesDisplay}, {miniChartsPerRow}, {showPreviewChart}, {aggregation}, {timeIntervalUnits}, {timeIntervalSize}, {timeAggregationType}, {trimIncompleteTimeInterval}, {nullPolicy}, {showMovingAverage}, {movingAveragePeriod}, {rotated}, {title}, {description}, {xTitle}, {yTitle}, {dataSource}, {displaySize}, {theme})
ПараметрОписаниеТип данных
x

The field name for the x-axis variable. The field must be a numeric or date field.

String
y

The field name or names for the y-axis variables. The value must be a numeric field or a list of numeric fields.

String
splitCategory

A categorical field that adds a separate series or line for each unique value in the field.

String
multiSeriesDisplay

Specifies the display type for a line chart with multiple series.

  • singleChartAll series will be displayed in a single chart.
  • gridThe series will be displayed as a grid of mini charts.
String
miniChartsPerRow

Число мини диаграмм, которые будут отображаться в строке.

Integer
showPreviewChart

Показывает, будет ли отображаться предварительный просмотр диаграмм в гриде.

  • TrueThe preview chart will be displayed.
  • FalseThe preview chart will not be displayed.

(Значение по умолчанию — False)

Boolean
aggregation

Specifies the statistical calculation that will be applied to values aggregated into each temporal or numeric bin.

  • <None>Each value will be plotted on the chart regardless of overlap or recurring values.
  • COUNTThe total number of records will be identified and applied.
  • SUMThe sum of all values will be calculated and applied.
  • MEANThe mean of all values will be calculated and applied.
  • MEDIANThe median of all values will be identified and applied.
  • MINThe minimum value will be identified and applied.
  • MAXThe maximum value will be identified and applied.
String
timeIntervalUnits

Specifies the time unit that corresponds to the timeIntervalSize value.

  • SECONDSThe time unit will be seconds.
  • MINUTESThe time unit will be minutes.
  • HOURSThe time unit will be hours.
  • DAYSThe time unit will be days.
  • WEEKSThe time unit will be weeks.
  • MONTHSThe time unit will be months.
  • YEARSThe time unit will be years.
String
timeIntervalSize

The span of time that will be binned or aggregated together. This argument must be used in conjunction with timeIntervalUnits.

String
timeAggregationType

Specifies the time interval alignment type.

  • equalIntervalsFromStartTimeThe time interval will be aligned to the start date.
  • equalIntervalsFromEndTimeThe time interval will be aligned to the end date.
String
trimIncompleteTimeInterval

Specifies whether incomplete time intervals at the start or end of the data span (depending on the timeAggregationType value) will be removed (trimmed) from the chart. Incomplete intervals on a chart can cause misleading results in which the period in question is underreported or overreported due to a different amount of time in the interval.

  • TrueIncomplete intervals will be removed.
  • FalseIncomplete intervals will not be removed.
String
nullPolicy

Specifies how summarized bins returning a null value will be displayed.

  • nullMissing values will be treated as null.
  • zeroMissing values will be treated as zero.
  • interpolateInterpolation will be used to fill missing values.
String
showMovingAverage

Specifies whether the moving average line will be displayed for temporal line charts.

  • TrueThe moving average line will be displayed.
  • FalseThe moving average line will not be displayed; it will be hidden.

(Значение по умолчанию — False)

Boolean
movingAveragePeriod

The size of the moving average period.

Integer
rotated

Specifies whether lines will be displayed horizontally or vertically.

  • TrueLines will be displayed vertically.
  • FalseLines will be displayed horizontally.

(Значение по умолчанию — False)

Boolean
title

Заголовок диаграммы. Текст заголовка отображается в верхней части диаграммы и используется в качестве подписи к диаграмме на панели Содержание.

String
description

Описание диаграммы. Текст диаграммы отображается внизу вида диаграммы.

String
xTitle

Заголовок оси х диаграммы.

String
yTitle

Заголовок оси y диаграммы.

String
dataSource

Источник данных диаграммы. Когда диаграмма экспортируется с использованием метода exportToSVG или отображается в ArcGIS Notebooks , источник данных считывается и отображается на диаграмме. К допустимым источникам данных относятся следующие:

  • Пути к наборам данных, включая локальные наборы данных, пути UNC, URL-адреса сервисов
  • Объекты таблицы Apache Arrow
  • Объекты Layer или Table

Object
displaySize
[displaySize,...]

Размер диаграммы при экспорте с помощью метода exportToSVG или при отображении в ArcGIS Notebooks. Значение должно быть указано как список из двух элементов, в котором первый элемент является шириной диаграммы, а второй - высотой.

List
theme

Задает тему, которая будет применена к диаграмме.

  • LightThe Light theme will be applied.
  • MediumThe Medium theme will be applied.
  • DarkThe Dark theme will be applied.
String

Свойства

СвойствоОписаниеТип данных
aggregation
(чтение и запись)

Определяет статистический расчет, который будет применён к значениям, агрегированным в каждом временном или числовом бине.

  • <None>Каждое значение будет нанесено на диаграмму независимо от перекрывающихся или повторяющихся значений.
  • COUNTОбщее количество записей будет определено и применено.
  • SUMСумма всех значений будет рассчитана и применена.
  • MEANСреднее значение всех значений будет рассчитано и применено.
  • MEDIANМедиана всех значений будет определена и применена.
  • MINМинимальное значение будет определено и применено.
  • MAXМаксимальное значение будет определено и применено.
String
color
(чтение и запись)

Цвета, которые будут применены к каждой серии диаграмм. Значение должно представлять собой список шестнадцатеричных значений строки. Если это свойство не задано, цвета серии будут соответствовать цветам условных обозначений, где это применимо; в противном случае будет применена стандартная цветовая палитра.

List
dataSource
(чтение и запись)

Источник данных диаграммы. Когда диаграмма экспортируется с использованием метода exportToSVG или отображается в ArcGIS Notebook, источник данных считывается и отображается на диаграмме. К допустимым источникам данных относятся следующие:

  • Пути к наборам данных, включая локальные наборы данных, пути UNC, URL-адреса сервисов
  • Объекты таблицы Apache Arrow
  • Объекты Layer или Table

Object
description
(чтение и запись)

Описание диаграммы. Текст диаграммы отображается внизу вида диаграммы.

String
displaySize
(чтение и запись)

Размер диаграммы при экспорте с помощью метода exportToSVG или при отображении в ArcGIS Notebook. Значение должно быть указано как список из двух элементов, в котором первый элемент является шириной диаграммы, а второй - высотой.

List
enableServerSideProcessing
(чтение и запись)

Указывает, будет ли использоваться обработка на стороне сервера при поступлении данных из многопользовательской базы данных или облачного хранилища данных.

  • TrueОбработка на стороне сервера будет включена.
  • FalseОбработка на стороне сервера будет отключена.
Boolean
legend
(чтение и запись)

Свойства легенды диаграммы.

  • alignment—Определяет выравнивание легенды Опции выравнивания: left, bottom, top и right.
  • title - заголовок легенды.
  • visible - задает, будет ли легенда отображаться в виде диаграммы. True отображает легенду, False скрывает легенду.
Object
miniChartsPerRow
(чтение и запись)

Число мини диаграмм, которые будут отображаться в строке.

Integer
movingAveragePeriod
(чтение и запись)

Размер периода скользящего среднего.

Integer
multiSeriesDisplay
(чтение и запись)

Задает тип отображения для линейной диаграммы с несколькими сериями.

  • singleChartВсе серии будут отображаться в виде одной диаграммы.
  • gridСерия будет отображаться в виде сетки мини-диаграмм.
String
nullPolicy
(чтение и запись)

Определяет, как будут отображаться суммированные ячейки, возвращающие значение null.

  • nullОтсутствующие значения будут считаться пустыми (null).
  • zeroОтсутствующие значения будут считаться равными нулю.
  • interpolateДля заполнения отсутствующих значений будет использоваться интерполяция.
String
rotated
(чтение и запись)

Указывает, отображается ли диаграмма вертикально или горизонтально.

  • TrueДиаграмма отображается горизонтально.
  • FalseДиаграмма отображается вертикально.
Boolean
showPreviewChart
(чтение и запись)

Показывает, будет ли отображаться предварительный просмотр диаграмм в гриде.

  • TrueПредварительный просмотр диаграммы отображается.
  • FalseПредварительный просмотр диаграммы не отображается.
Boolean
splitCategory
(чтение и запись)

Поле категории, которое добавляет отдельные серии или линию для каждого уникального значения в поле.

String
theme
(чтение и запись)

Задает тему, которая будет применена к диаграмме.

  • LightБудет применена светлая тема.
  • MediumБудет применена средняя тема.
  • DarkБудет применена темная тема.
String
showMovingAverage
(чтение и запись)

Задает, будет ли отображена линия скользящего среднего на временной линейной диаграмме.

  • TrueЛиния скользящего среднего будет отображаться.
  • FalseЛиния скользящего среднего не будет отображаться; она будет скрыта.
Boolean
timeAggregationType
(чтение и запись)

Задает тип выравнивания временного интервала.

  • equalIntervalsFromStartTimeВременной интервал будет соответствовать дате начала.
  • equalIntervalsFromEndTimeВременной интервал будет соответствовать дате окончания.
String
timeIntervalSize
(чтение и запись)

Промежуток времени, который будет сгруппирован или объединен. Этот параметр должен использоваться в сочетании с timeIntervalUnits.

String
timeIntervalUnits
(чтение и запись)

Задает единицу времени для значения timeIntervalSize.

  • SECONDSЕдиницей измерения времени будут секунды.
  • MINUTESЕдиницей измерения времени будут минуты.
  • HOURSЕдиницей измерения времени будут часы.
  • DAYSЕдиницей измерения времени будут дни.
  • WEEKSЕдиницей измерения времени будут недели.
  • MONTHSЕдиницей измерения времени будут месяцы.
  • YEARSЕдиницей измерения времени будут года.
String
title
(чтение и запись)

Заголовок диаграммы. Текст заголовка появляется в верхней части вида диаграммы и используется как надпись на панели Содержание на вкладке По отображению Содержание на вкладке По отображению.

String
trimIncompleteTimeInterval
(чтение и запись)

Определяет, будут ли незавершенные временные интервалы в начале или конце интервала данных (в зависимости от значения timeAggregationType) удалены из диаграммы. Незавершенные интервалы на диаграмме могут привести к ошибочным результатам, в которых рассматриваемый период меньше или больше указанного из-за различного количества времени в интервале.

  • TrueНезавершенные интервалы будут удалены.
  • FalseНезавершенные интервалы не будут удалены.
String
type
(только чтение)

Строковое значение, обозначающее тип диаграммы.

String
x
(чтение и запись)

Имя поля для переменной оси x. Поле должно быть числовым или полем даты.

String
xAxis
(чтение и запись)

Задает свойства оси X.

  • addGuide — добавляет направляющую к оси при помощи объекта Guide.
  • field — имя поля для переменной оси x. Поле должно быть числовым или полем даты.
  • logarithmic – определяет, является ли ось логарифмической. True отображает логарифмическую ось. False отображает линейную ось.
  • listGuides — список объектов оси Guide.
  • maximum — максимальная граница оси.
  • minimum — минимальная граница оси.
  • removeGuide — удаляет направляющую, указанную аргументом объекта Guide.
  • sort - это свойство не поддерживается для класса Line.
  • title — подпись оси, отображаемая в диаграмме.
Object
y
(чтение и запись)

Имя поля или имена для переменных оси y. Значение должно быть числовым полем или списком числовых полей.

String
yAxis
(чтение и запись)

Задает свойства оси Y.

  • addGuide — добавляет направляющую к оси при помощи объекта Guide.
  • field — Имя поля или имена переменных оси y. Укажите одно числовое поле или список числовых полей.
  • invert — указывает, будет ли ось инвертирована. True инвертирует ось, а False не инвертирует ось.
  • logarithmic – определяет, является ли ось логарифмической. True отображает логарифмическую ось. False отображает линейную ось.
  • listGuides — список объектов оси Guide.
  • maximum — максимальная граница оси.
  • minimum — минимальная граница оси.
  • removeGuide — удаляет направляющую, указанную аргументом объекта Guide.
  • sort - это свойство не поддерживается для класса Line.
  • title — подпись оси, отображаемая в диаграмме.
  • useAdaptiveBounds – определяет, отображается ли сетчатая диаграмма с адаптивными или фиксированными границами осей. True - оси с адаптивными границами. False - оси с фиксированными границами.
Object

Обзор метода

МетодОписание
addToLayer (layer_or_layerfile)

Метод addToLayer добавляет объект диаграммы в представление слоя или таблицы.

exportToJPEG (path, width, height)

Метод exportToJPEG экспортирует диаграмму в формат JPEG.

exportToPNG (path, width, height)

Метод exportToPNG экспортирует диаграмму в формат PNG.

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)
exportToJPEG (path, width, height)
ПараметрОписаниеТип данных
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

Диаграмма экспортируется в файл .jpg, который может быть передан и просмотрен вне ArcGIS Pro. JPEG — это растровый формат изображений, который использует сжатие с потерями для уменьшения размера файла.

Экспортируйте диаграмму, содержащую источник данных сервиса объектов в файл .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)
ПараметрОписаниеТип данных
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, который может быть передан и просмотрен вне ArcGIS Pro. PNG — это формат растрового изображения, который использует сжатие без потерь для сохранения качества изображения.

Получите доступ к существующей диаграмме из слоя, обновите заголовок и экспортируйте ее в файл .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)
ПараметрОписаниеТип данных
path

Папка, в которой будет сохранена диаграмма в формате SVG.

String
width

Ширина выходной графики.

Integer
height

Высота выходной графики.

Integer

Диаграмма экспортируется в файл .svg , который может быть передан и просмотрен вне ArcGIS Pro. 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)
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)