layout.PieChart

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

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

Примечание

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

См.: PlacemarkClustererObjectManagerRemoteObjectManagerLoadingObjectManager

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

Конструктор

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

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

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

contextmenu

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

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

dblclick

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

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

emptinesschange

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

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

mousedown

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

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

mouseenter

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

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

mouseleave

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

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

mousemove

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

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

mouseup

Отпускание кнопки мыши над объектом. При использовании следует иметь в виду, что при сенсорном вводе события мыши будут эмулироваться. Экземпляр класса MapEvent. Более детальное описание доступно в 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

Скролл мышкой. При использовании следует иметь в виду, что при сенсорном вводе события мыши будут эмулироваться. Экземпляр класса MapEvent. Более детальное описание доступно в 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.

Предыдущая
Следующая