layout.PieChart
Extends layout.templateBased.Base.
Pie chart layout. Available in the layout storage by the key 'default#pieChart'. The layout can be used as a tool for visualizing any data, or in combination with other visual API components such as placemarks, the clusterer, and the objects manager.
Note
Because diagrams are drawn using SVG technology, this layout doesn't work in browsers that don't support SVG, including IE8.
See PlacemarkClustererObjectManagerRemoteObjectManagerLoadingObjectManager
Constructor | Fields | Events | Methods
Constructor
layout.PieChart(data)
Parameters:
Parameter |
Default value |
Description |
|
— |
Type: Object Layout data. |
25 + 2 * Math.log(sum) |
Type: Number|Function Radius of the diagram, in pixels. Set as a number, or as a function that accepts the layout's "properties" and "options" parameters and returns the diagram radius as a number. By default, the radius is defined as 25 + 2 * Math.log(sum) pixels, where sum is the total weight of the sectors. |
|
— |
Type: IOptionManager Options for rendering the layout. |
|
200 |
Type: Number Maximum size of the label (iconCaption), in pixels. |
|
white |
Type: String Fill style for the core. Set as a string that encodes the fill color. |
|
pieChartRadius - 15 |
Type: Number|Function The radius of the central part of the layout, where the content is displayed. Set in the same way as pieChartRadius — as a number or a function. By default, it takes a value that is 15 pixels less than pieChartRadius. |
|
white |
Type: String The style for lines between sectors and the outline of the diagram. Set as a string that encodes the line color. |
|
2 |
Type: Number Width of the sector dividing lines and diagram outline, in pixels. Set as an integer. |
|
— |
Type: IDataManager|Object Properties of the geo object that is displayed using the layout. |
|
— |
Type: Object[]|Function Statistical data to base the layout on. It should be an array of JSON objects with the "weight" and "color" fields or a function that returns this array. |
|
— |
Type: IGeoObject[] An array of geo objects in the cluster that needs to be displayed. Used if "properties.data" is missing. In this case, the layout traverses all geo objects, determines the value of the "iconColor" option for each object, and generates a diagram based on this data. |
|
"" |
Type: String Caption for the diagram. |
|
The sum of all the sectors |
Type: String The value that is written in the center of the diagram. If omitted, the sum of all the sectors is shown. |
* Mandatory parameter/option.
Example:
var geoObject = new ymaps.Placemark([55.25, 37.43], {
// Data for generating a diagram.
data: [
{ weight: 5, color: '#224080' },
{ weight: 3, color: '#408022' },
{ weight: 2, color: '#802240' }
]
}, {
iconLayout: 'default#pieChart',
// You can also use the "icon" prefix to redefine layout options.
iconPieChartCoreRadius: 15
});
myMap.geoObjects.add(geoObject);
Fields
Name |
Type |
Description |
Event manager. Inherited from IDomEventEmitter. |
Events
Name |
Description |
Single left-click on the object. When using, keep in mind that mouse events are emulated when a touch screen is used. Instance of the MapEvent class. More information is available in domEvent.manager. Inherited from IDomEventEmitter. |
|
Calls the element's context menu. When using, keep in mind that mouse events are emulated when a touch screen is used. Instance of the MapEvent class. More information is available in domEvent.manager. Inherited from IDomEventEmitter. |
|
Double left-click on the object. When using, keep in mind that mouse events are emulated when a touch screen is used. Instance of the MapEvent class. More information is available in domEvent.manager. Inherited from IDomEventEmitter. |
|
Change to the empty layout indicator. Instance of the Event class. Inherited from ILayout. |
|
Pressing the mouse button over the object. When using, keep in mind that mouse events are emulated when a touch screen is used. Instance of the MapEvent class. More information is available in domEvent.manager. Inherited from IDomEventEmitter. |
|
Pointing the cursor at the object. When using, keep in mind that mouse events are emulated when a touch screen is used. Instance of the MapEvent class. More information is available in domEvent.manager. Inherited from IDomEventEmitter. |
|
Moving the cursor off of the object. When using, keep in mind that mouse events are emulated when a touch screen is used. Instance of the MapEvent class. More information is available in domEvent.manager. Inherited from IDomEventEmitter. |
|
Moving the cursor over the object. When using, keep in mind that mouse events are emulated when a touch screen is used. Instance of the MapEvent class. More information is available in domEvent.manager. Inherited from IDomEventEmitter. |
|
Letting go of the mouse button over an object. When using, keep in mind that mouse events are emulated when a touch screen is used. Instance of the MapEvent class. More information is available in domEvent.manager. Inherited from IDomEventEmitter. |
|
End of multitouch. This event is only available on devices that support multitouch. Returns an implementation of the IMultiTouchEvent interface. Inherited from IDomEventEmitter. |
|
Repeating event during multitouch. This event is only available on devices that support multitouch. Returns an implementation of the IMultiTouchEvent interface with information about touches. Defines the touches property, which contains a list of touches. Every touch is described by an object that contains the following fields:
Inherited from IDomEventEmitter. |
|
Start of multitouch. This event is only available on devices that support multitouch. Returns an implementation of the IMultiTouchEvent interface with information about touches. Defines the touches property, which contains a list of touches. Every touch is described by an object that contains the following fields:
Inherited from IDomEventEmitter. |
|
Change to the parent element. Instance of the Event class. Inherited from ILayout. |
|
Change to the shape of the area spanning the layout. Instance of the Event class. Inherited from ILayout. |
|
Mouse wheel scrolling. When using, keep in mind that mouse events are emulated when a touch screen is used. Instance of the MapEvent class. More information is available in domEvent.manager. Inherited from IDomEventEmitter. |
Methods
Name |
Returns |
Description |
build() |
Builds a layout instance based on the template and adds it to the parent HTML element. Inherited from layout.templateBased.Base. |
|
clear() |
Removes layout content from DOM. Inherited from layout.templateBased.Base. |
|
destroy() |
Destructor. Called when activity with the layout is finished. Inherited from ILayout. |
|
getData() |
Object |
Returns layout data object. Inherited from ILayout. |
HTMLElement |
Returns parent HTML element. Inherited from ILayout. |
|
getShape() |
IShape|null |
Returns a shape that defines the area spanning the layout, or null if it is not possible to plot this shape. By default, it tries to construct a shape via the "shape" option - this.getData().options.get('shape'). In the option, it can be set as an instance of a class implementing the IShape interface, or as a JSON description of the shape's pixel geometry. Coordinates of the shape's geometry should be calculated from the anchor point of the parent layout element. Inherited from layout.templateBased.Base. |
isEmpty() |
Boolean |
Returns true if the layout is empty, i.e. it does not have any content. This indicator is used for hiding empty objects such as hints, balloons, and others. Inherited from ILayout. |
Automatically called when resizing a nested layout, added with the Inherited from layout.templateBased.Base. |
||
rebuild() |
Re-sets the layout. Inherited from layout.templateBased.Base. |
|
Sets layout data. Inherited from ILayout. |
||
Adds the layout to the DOM tree. Inherited from ILayout. |
Mandatory parameter/option.