Histogram

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

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

Более подробно о гистограммах в ArcGIS Pro.

Обсуждение

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

Синтаксис

 Histogram (x, {splitCategory}, {miniChartsPerRow}, {showPreviewChart}, {binCount}, {showMean}, {showMedian}, {showStandardDeviation}, {showComparisonDistribution}, {dataTransformationType}, {dataTransformationParameters}, {title}, {description}, {xTitle}, {yTitle}, {dataSource}, {displaySize}, {theme})
ПараметрОписаниеТип данных
x

The field names for the x-axis variables. The field must be a single numeric field name or a list of numeric field names. For a raster layer, specify a band name.

String
splitCategory

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

String
miniChartsPerRow

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

Integer
showPreviewChart

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

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

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

Boolean
binCount

The number of bins that will be displayed in the histogram.

Integer
showMean

Specifies whether the mean statistical line will be visible in the histogram.

  • TrueThe mean line will be visible in the histogram.
  • FalseThe mean line will not be visible in the histogram.
Boolean
showMedian

Specifies whether the median statistical line will be visible in the histogram.

  • TrueThe median line will be visible in the histogram.
  • FalseThe median line will not be visible in the histogram.
Boolean
showStandardDeviation

Specifies whether the standard deviation lines will be visible in the histogram.

  • TrueThe standard deviation lines will be visible in the histogram.
  • FalseThe standard deviation lines will not be visible in the histogram.
Boolean
showComparisonDistribution

Specifies whether the normal distribution comparison line will be visible in the histogram.

  • TrueThe comparison line will be visible in the histogram.
  • FalseThe comparison line will not be visible in the histogram.
Boolean
dataTransformationType

Specifies the data transformation type that will be applied. When multiple x-axis fields are defined, use a list of strings—in the same order as the x parameter—to specify a transformation for each field.

  • noneNo transformation will be applied.
  • logarithmicA logarithmic transformation will be applied.
  • squareRootA square root transformation will be applied.
  • inverseAn inverse transformation will be applied.
  • boxCoxA box-cox transformation will be applied.
String
dataTransformationParameters

The data transformation parameters for the boxCox transformation. This parameter accepts a two-item list in which the first item is the power parameter and the second item is the shift parameter. When multiple x-axis fields are defined, use a two-dimensional list—in the same order as the x parameter—in which each inner list corresponds to the transformation parameters for one field. In this case, specify None for list items that correspond to transformations that are not boxCox.


chart = arcpy.charts.Histogram(
    x=['POPULATION', 'POPULATION'],    
    dataTransformationType=['inverse', 'boxCox'],
    dataTransformationParameters=[None, [2, 5000]]    
)

List
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

Свойства

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

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

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

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

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

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

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

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

Параметры преобразования данных по методу boxCox. Этот параметр принимает список из двух значений, где первый элемент является параметром степени, а второй - смещения. Когда определены несколько полей оси X, используйте двумерный список — в том же порядке, что и параметр x — где каждый вложенный список соответствует параметрам преобразования для одного поля. В этом случае укажите None для элементов списка, которые соответствуют преобразованиям, не являющимся boxCox.


chart = arcpy.charts.Histogram(
    x=['POPULATION', 'POPULATION'],    
    dataTransformationType=['inverse', 'boxCox'],
    dataTransformationParameters=[None, [2, 5000]]    
)

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

Задает применяемый тип преобразования данных. Когда определены несколько полей оси X, используйте список строк — в том же порядке, что и параметр x, — чтобы задать преобразование для каждого поля.

  • noneПреобразование не будет применяться.
  • logarithmicБудет применено логарифмическое преобразование.
  • squareRootБудет применено преобразование по методу квадратного корня.
  • inverseБудет применено обратное преобразование.
  • boxCoxБудет применено преобразование по методу Box-Cox.
String
description
(чтение и запись)

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

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

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

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

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

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

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

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

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

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

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

  • TrueЛиния сравнения будет отображаться на гистограмме.
  • FalseЛиния сравнения не будет отображаться на гистограмме.
Boolean
showMean
(чтение и запись)

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

  • TrueЛиния среднего будет отображаться на гистограмме.
  • FalseЛиния среднего не будет отображаться на гистограмме.
Boolean
showMedian
(чтение и запись)

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

  • TrueЛиния медианы будет отображаться на гистограмме.
  • FalseЛиния медианы не будет отображаться на гистограмме.
Boolean
showPreviewChart
(чтение и запись)

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

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

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

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

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

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

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

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

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

String
type
(только чтение)

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

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

Имена полей переменных оси X. Поле должно быть единичным числовым именем поля или списком числовых имен полей. Для растрового слоя укажите имя канала.

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

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

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

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

  • addGuide — добавляет направляющую к оси при помощи объекта Guide.
  • field — это свойство не поддерживается для класса Histogram.
  • listGuides — список объектов оси Guide.
  • logarithmic — это свойство не поддерживается для класса Histogram.
  • maximum — максимальная граница оси.
  • minimum — минимальная граница оси.
  • removeGuide — удаляет направляющую, указанную аргументом объекта Guide.
  • sort — это свойство не поддерживается для класса Histogram.
  • 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()

Пример кода

Создайте гистограмму, используя имя слоя для источника, и экспортируйте ее в файл .svg.

import arcpy

chart = arcpy.charts.Histogram("price", binCount=20, showMedian=True)																											
chart.dataSource = "airbnb_listings"
chart.title = "Distribution of AirBnB Listing Price"
chart.exportToSVG("histogram.svg", width=1000, height=800)