layout.PieChart

Расширяет layout.templateBased.Base .

Макет в виде круговой диаграммы. Доступен в хранилище макетов по ключу 'default#pieChart'. Макет может использоваться как инструмент визуализации произвольных данных, так и в связке с другими визуальными компонентами API, такими как метки, кластеризатор, менеджер объектов.

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

См.: Placemark Clusterer ObjectManager RemoteObjectManager LoadingObjectManager

Конструктор | Поля | События | Методы

Конструктор

layout.PieChart(data)

Параметры:

Параметр Значение по умолчанию Описание
data *

Тип: Object

Данные макета.

data.option.pieChartRadius 25 + 2 * Math.log(sum)

Тип: Number|Function

Радиус диаграммы в пикселях. Может задаваться числом либо функцией, принимающей в качестве параметров properties и options макета и возвращающей радиус диаграммы в виде числа. По умолчанию радиус определяется как 25 + 2 * Math.log(sum) пикселей, где sum — сумма весов секторов;

data.options

Тип: IOptionManager

Опции отрисовки макета.

data.options.pieChartCaptionMaxWidth 200

Тип: Number

Максимальный размер подписи (iconCaption), в пикселях.

data.options.pieChartCoreFillStyle white

Тип: String

Стиль заливки центральной части. Задается строкой, кодирующей цвет заливки;

data.options.pieChartCoreRadius pieChartRadius - 15

Тип: Number|Function

Радиус центральной части макета, в которой отображается контент. Задается аналогично pieChartRadius — числом или функцией. По умолчанию принимает значение на 15 пикселей меньше pieChartRadius;

data.options.pieChartStrokeStyle white

Тип: String

Стиль линий-разделителей секторов и внешней обводки диаграммы. Задается строкой, кодирующей цвет линии;

data.options.pieChartStrokeWidth 2

Тип: Number

Ширина линий-разделителей секторов и внешней обводки диаграммы в пикселях. Задается целым числом.

data.properties *

Тип: IDataManager |Object

Свойства геообъекта, который визуализируется макетом.

data.properties.data *

Тип: Object[]|Function

Статистические данные, на основе которых строится макет. Должны представлять собой массив JSON-объектов с полями weight и color (вес и цвет сектора) либо функцию, возвращающую такой массив.

data.properties.geoObjects

Тип: IGeoObject []

Массив геообъектов в составе кластера, который требуется визуализировать. Используется в случае отсутствия properties.data. В этом случае макет проходит по всем геообъектам, определяет значение опции iconColor каждого объекта и на основе этих данных строит диаграмму.

data.properties.iconCaption ""

Тип: String

Подпись к диаграмме.

data.properties.iconContent The sum of all the sectors

Тип: String

Значение, которое пишется в центре диаграммы. Если не задано — выводится сумма весов секторов.

* Обязательный параметр/опция.

Пример:

var geoObject = new ymaps.Placemark([55.25, 37.43], {
        // Данные, на основе которых будет формироваться диаграмма.
        data: [
            { weight: 5, color: '#224080' },
            { weight: 3, color: '#408022' },
            { weight: 2, color: '#802240' }
        ]
    }, {
        iconLayout: 'default#pieChart',
        // Также можно переопределить опции макета с префиксом icon.
        iconPieChartCoreRadius: 15
    });

myMap.geoObjects.add(geoObject);

Поля

Имя Тип Описание
events IEventManager

Менеджер событий.

Унаследовано от IDomEventEmitter .

События

Имя Описание
click

Однократное нажатие левой кнопки мыши на объекте. При использовании следует иметь в виду, что при сенсорном вводе события мыши будут эмулироваться. Более детально описание в domEvent.manager .

Унаследовано от IDomEventEmitter .

contextmenu

Вызов контекстного меню на элементе. При использовании следует иметь в виду, что при сенсорном вводе события мыши будут эмулироваться. Более детально описание в domEvent.manager .

Унаследовано от IDomEventEmitter .

dblclick

Двойное нажатие левой кнопки мыши на объекте. При использовании следует иметь в виду, что при сенсорном вводе события мыши будут эмулироваться. Более детально описание в domEvent.manager .

Унаследовано от IDomEventEmitter .

emptinesschange

Изменение признака пустоты макета. Экземпляр класса Event .

Унаследовано от ILayout .

mousedown

Нажатие кнопки мыши над объектом. При использовании следует иметь в виду, что при сенсорном вводе события мыши будут эмулироваться. Более детально описание в domEvent.manager .

Унаследовано от IDomEventEmitter .

mouseenter

Наведение курсора на объект. При использовании следует иметь в виду, что при сенсорном вводе события мыши будут эмулироваться. Более детально описание в domEvent.manager .

Унаследовано от IDomEventEmitter .

mouseleave

Вывод курсора за пределы объекта. При использовании следует иметь в виду, что при сенсорном вводе события мыши будут эмулироваться. Более детально описание в domEvent.manager .

Унаследовано от IDomEventEmitter .

mousemove

Перемещение курсора над объектом. При использовании следует иметь в виду, что при сенсорном вводе события мыши будут эмулироваться. Более детально описание в domEvent.manager .

Унаследовано от IDomEventEmitter .

mouseup

Отпускание кнопки мыши над объектом. При использовании следует иметь в виду, что при сенсорном вводе события мыши будут эмулироваться. Более детально описание в domEvent.manager .

Унаследовано от IDomEventEmitter .

multitouchend

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

Унаследовано от IDomEventEmitter .

multitouchmove
Повторящееся событие при мультисенсорном управлении. Данное событие доступно только на устройствах, которые поддерживают множественные сенсорные прикосновения. Возвращает реализацию интерфейса IMultiTouchEvent c информацией о прикосновениях. Определяет свойство touches, которое содержит список прикосновений. Каждое прикосновение описано объектом, которое содержит поля:
  • clientX - координата касания X относительно видимой области браузера;
  • clientY - координата касания Y относительно видимой области браузера;
  • pageX - координата касания X касания относительно начала документа;
  • pageY - координата касания Y касания относительно начала документа.

Унаследовано от IDomEventEmitter .

multitouchstart
Начало мультисенсорного управления. Данное событие доступно только на устройствах, которые поддерживают множественные сенсорные прикосновения. Возвращает реализацию интерфейса IMultiTouchEvent c информацией о прикосновениях. Определяет свойство touches, которое содержит список прикосновений. Каждое прикосновение описано объектом, которое содержит поля:
  • clientX - координата касания X относительно видимой области браузера;
  • clientY - координата касания Y относительно видимой области браузера;
  • pageX - координата касания X касания относительно начала документа;
  • pageY - координата касания Y касания относительно начала документа.

Унаследовано от IDomEventEmitter .

parentelementchange

Изменение родительского элемента. Экземпляр класса Event .

Унаследовано от ILayout .

shapechange

Изменение фигуры области охватывающей макет. Экземпляр класса Event .

Унаследовано от ILayout .

wheel

Скролл мышкой. При использовании следует иметь в виду, что при сенсорном вводе события мыши будут эмулироваться. Более детально описание в domEvent.manager .

Унаследовано от IDomEventEmitter .

Методы

Имя Возвращает Описание
build ()

Строит экземпляр макета на основе шаблона и добавляет его в родительский HTML-элемент.

Унаследован от layout.templateBased.Base .

clear ()

Удаляет содержимое макета из DOM.

Унаследован от layout.templateBased.Base .

destroy ()

Деструктор. Вызывается при завершении работы с макетом.

Унаследован от ILayout .

getData ()

Object

Возвращает объект данных макета.

Унаследован от ILayout .

getParentElement ()

HTMLElement

Возвращает родительский HTML-элемент.

Унаследован от ILayout .

getShape ()

IShape |null

Возвращает фигуру, описывающую форму области, охватывающей макет, либо null, если нет возможности рассчитать данную фигуру. По умолчанию пытается построить фигуру через опцию shape - this.getData().options.get('shape'). В опции можно задать как инстанцию класса, реализующего интерфейс IShape, так и JSON-описание пиксельной геометрии фигуры. Координаты геометрии фигуры должны отсчитываться от точки привязки родительского элемента макета.

Унаследован от layout.templateBased.Base .

isEmpty ()

Boolean

Возвращает true, если макет пуст, т.е. не имеет содержимого. Данный признак используется для сокрытия пустых объектов, таких как хинт, балун и другие.

Унаследован от ILayout .

onSublayoutSizeChange (sublayoutInfo, nodeSizeByContent)

Автоматически вызывается при изменении размеров вложенного макета, добавленного с параметром 'observeSize'. Используется для переопределения в конкретных классах макетов для реакции на изменение размеров содержимого.

Унаследован от layout.templateBased.Base .

rebuild ()

Перестраивает макет.

Унаследован от layout.templateBased.Base .

setData (data)

Задает данные макета.

Унаследован от ILayout .

setParentElement (parent)

Добавляет макет в DOM-дерево.

Унаследован от ILayout .