You are browsing a class reference for deprecated Version 2 of the JavaScript Charts.
Documentation for other versions: amCharts 4 (current) or amCharts 3.
Inheritance: AmPieChart → AmChart
AmPieChart class creates pie/donut chart. In order to display pie chart you need to set at least three properties - dataProvider, titleField and valueField. For example:
var chartData = [{title:"Pie I have eaten",value:70},{title:"Pie I haven\'t eaten",value:30}]; var chart = new AmCharts.AmPieChart(); chart.valueField = "value"; chart.titleField = "title"; chart.dataProvider = chartData; chart.write("chartdiv");
Property | Type | Default | Description |
---|---|---|---|
alphaField | String | Name of the field in chart's dataProvider which holds slice's alpha. | |
angle | Number | 0 | Pie lean angle (for 3D effect). Valid range is 0 - 90. |
backgroundColor | String | #FFFFFF | Background color. You should set backgroundAlpha to >0 value in order background to be visible. We recommend setting background color directly on a chart's DIV instead of using this property. |
balloon | AmBalloon | AmBalloon | The chart creates AmBalloon class itself. If you want to customize balloon, get balloon instance using this property, and then change balloon's properties. |
balloonText | String | [[title]]: [[percents]]% ([[value]])\n[[description]] | Balloon text. The following tags can be used: [[value]], [[title]], [[percents]], [[description]]. |
borderAlpha | Number | 0 | Opacity of chart's border. Value range is 0 - 1. |
borderColor | String | #000000 | Color of chart's border. You should set borderAlpha >0 in order border to be visible. We recommend setting border color directly on a chart's DIV instead of using this property. |
chartData | Array | Read-only. Array of Slice objects. | |
color | String | #000000 | Text color. |
colorField | String | Name of the field in chart's dataProvider which holds slice's color. | |
colors | Array | ["#FF0F00", "#FF6600", "#FF9E01", "#FCD202", "#F8FF01", "#B0DE09", "#04D215", "#0D8ECF", "#0D52D1", "#2A0CD0", "#8A0CCF", "#CD0D74", "#754DEB", "#DDDDDD", "#999999", "#333333", "#000000", "#57032A", "#CA9726", "#990000", "#4B0C25"] | Specifies the colors of the slices, if the slice color is not set. If there are more slices than colors in this array, the chart picks random color. |
dataProvider | Array | Array of data objects, for example: [{country:"US", value:524},{country:"UK", value:624},{country:"Lithuania", value:824}]. You can have any number of fields and use any field names. In case of AmMap, data provider should be MapData object. | |
depth3D | Number | 0 | Depth of the pie (for 3D effect). |
descriptionField | String | Name of the field in chart's dataProvider which holds a string with description. | |
fontFamily | String | Verdana | Font family. |
fontSize | Number | 11 | Font size. |
gradientRatio | Array of numbers | Example: [-0.2,0.2]. Will make slices to be filled with color gradients. | |
groupedAlpha | Number | 1 | Opacity of the group slice. Value range is 0 - 1. |
groupedColor | String | Color of the group slice. The default value is not set - this means the next available color from "colors" array will be used. | |
groupedDescription | String | Description of the group slice. | |
groupedPulled | Boolean | false | If this is set to true, the group slice will be pulled out when the chart loads. |
groupedTitle | String | Other | Title of the group slice. |
groupPercent | Number | 0 | If there is more than one slice whose percentage of the pie is less than this number, those slices will be grouped together into one slice. This is the "other" slice. It will always be the last slice in a pie. |
height | Number/String | 100% | Height of a chart. "100%" means the chart's height will be equal to it's container's (DIV) height and will resize if height of the container changes. Set a number instead of percents if your chart's size needs to be fixed. |
hideLabelsPercent | Number | 0 | Slices with percent less then hideLabelsPercent won't display labels This is useful to avoid cluttering up the chart, if you have a lot of small slices. 0 means all labels will be shown. |
hoverAlpha | Number | 1 | Opacity of a hovered slice. Value range is 0 - 1. |
innerRadius | Number/String | 0 | Inner radius of the pie, in pixels or percents. |
labelRadius | Number | 30 | The distance between the label and the slice, in pixels. You can use negative values to put the label on the slice. |
labelRadiusField | String | Name of the field in dataProvider which specifies the length of a tick. Note, the chart will not try to arrange labels automatically if this property is set. | |
labelsEnabled | Boolean | true | Specifies whether data labels are visible. |
labelText | String | [[title]]: [[percents]]% | Label text. The following tags can be used: [[value]], [[title]], [[percents]], [[description]]. |
labelTickAlpha | Number | 0.2 | Label tick opacity. Value range is 0 - 1. |
labelTickColor | String | #000000 | Label tick color. |
legendDiv | DIV object | Reference to the div of the legend. | |
marginBottom | Number | 5 | Bottom margin of the chart. |
marginLeft | Number | 0 | Left margin of the chart. |
marginRight | Number | 0 | Right margin of the chart. |
marginTop | Number | 5 | Top margin of the chart. |
minRadius | Number | 10 | Minimum radius of the pie, in pixels. |
numberFormatter | Object | {precision:-1, decimalSeparator:'.', thousandsSeparator:','} | Object with precision, decimalSeparator and thousandsSeparator set which will be used for number formatting. Precision set to -1 means that values won't be rounded. |
outlineAlpha | Number | 0 | Pie outline opacity. Value range is 0 - 1. |
outlineColor | String | #FFFFFF | Pie outline color. |
outlineThickness | Number | 1 | Pie outline thickness. |
panEventsEnabled | Boolean | false | This setting affects touch-screen devices only. If a chart is on a page, and panEventsEnabled are set to true, the page won't move if the user touches the chart first. If a chart is big enough and occupies all the screen of your touch device, the user won’t be able to move the page at all. That's why the default value is "false". If you think that selecting/panning the chart or moving/pinching the map is a primary purpose of your users, you should set panEventsEnabled to true. |
pathToImages | String | Specifies path to the folder where images like resize grips, lens and similar are. | |
percentFormatter | Object | {precision:2, decimalSeparator:'.', thousandsSeparator:','} | Object with precision, decimalSeparator and thousandsSeparator set which will be used for formatting percent values. |
pieAlpha | Number | 1 | Opacity of the slices. You can set the opacity of individual slice too. |
pieBaseColor | String | Color of the first slice. All the other will be colored with darker or brighter colors. | |
pieBrightnessStep | Number | 30 | Lightness increase of each subsequent slice. This is only useful if pieBaseColor is set. Use negative values for darker colors. Value range is from -255 to 255. |
pieX | Number/String% | You can set fixed position of a pie center, in pixels or in percents. | |
pieY | Number/String% | You can set fixed position of a pie center, in pixels or in percents. | |
prefixesOfBigNumbers | Array | [{number:1e+3,prefix:"k"},{number:1e+6,prefix:"M"},{number:1e+9,prefix:"G"},{number:1e+12,prefix:"T"},{number:1e+15,prefix:"P"},{number:1e+18,prefix:"E"},{number:1e+21,prefix:"Z"},{number:1e+24,prefix:"Y"}] | Prefixes which are used to make big numbers shorter: 2M instead of 2000000, etc. Prefixes are used on value axes and in the legend. To enable prefixes, set usePrefixes property to true. |
prefixesOfSmallNumbers | Array | [{number:1e-24, prefix:"y"},{number:1e-21, prefix:"z"},{number:1e-18, prefix:"a"},{number:1e-15, prefix:"f"},{number:1e-12, prefix:"p"},{number:1e-9, prefix:"n"},{number:1e-6, prefix:"μ"},{number:1e-3, prefix:"m"}] | Prefixes which are used to make small numbers shorter: 2μ instead of 0.000002, etc. Prefixes are used on value axes and in the legend. To enable prefixes, set usePrefixes property to true. |
pulledField | String | Name of the field in chart's dataProvider which holds a boolean value telling the chart whether this slice must be pulled or not. | |
pullOutDuration | Number | 1 | Pull out duration, in seconds. |
pullOutEffect | String | bounce | Pull out effect. Possible values are ">", "<", elastic" and "bounce". |
pullOutOnlyOne | Boolean | false | If this is set to true, only one slice can be pulled out at a time. If the viewer clicks on a slice, any other pulled-out slice will be pulled in. |
pullOutRadius | Number/String | 20% | Pull out radius, in pixels or percents |
radius | Number/String | Radius of a pie, in pixels or percents. By default, radius is calculated automatically. | |
sequencedAnimation | Boolean | false | Specifies whether the animation should be sequenced or all slices should appear at once. |
startAlpha | Number | 1 | Initial opacity of all slices. If you set startDuration higher than 0, slices will fade in from startAlpha. |
startAngle | Number | 90 | Angle of the first slice, in degrees. This will work properly only if "depth3D" is set to 0. If "depth3D" is greater than 0, then there can be two angles only: 90 and 270. Value range is 0-360. |
startDuration | Number | 1 | Duration of the animation, in seconds. |
startEffect | String | bounce | Animation effect. Possible values are ">", "<", "elastic" and "bounce". |
startRadius | Number/String | 500% | Radius of the positions from which the slices will fly in. |
titleField | String | Name of the field in chart's dataProvider which holds slice's title. | |
urlField | String | Name of the field in chart's dataProvider which holds url which would be accessed if the user clicks on a slice. | |
urlTarget | String | _self | If url is specified for a slice, it will be opened when user clicks on it. urlTarget specifies target of this url. Use _blank if you want url to be opened in a new window. |
usePrefixes | Boolean | false | If true, prefixes will be used for big and small numbers. You can set arrays of prefixes via prefixesOfSmallNumbers and prefixesOfBigNumbers properties. |
valueField | String | Name of the field in chart's dataProvider which holds slice's value. | |
version | String | Read-only. Indicates current version of a script. | |
visibleInLegendField | String | Name of the field in chart's dataProvider which holds boolean variable defining whether this data item should have an entry in the legend. |
Name | Parameters | Returns | Description |
---|---|---|---|
addLabel(x, y, text, align, size, color, rotation, alpha, bold, url) | x - horizontal coordinate y - vertical coordinate text - label's text align - alignment (left/right/center) size - text size color - text color rotation - angle of rotation alpha - label alpha bold - specifies if text is bold (true/false), url - url of a | Adds a label on a chart. You can use it for labeling axes, adding chart title, etc. x and y coordinates can be set in number, percent, or a number with ! in front of it - coordinate will be calculated from right or bottom instead of left or top. | |
addLegend(legend, legendDivID) | legend - AmLegend, legendDivID - id or reference to legend div (optional) | Adds a legend to the chart. By default, you don't need to create div for your legend, however if you want it to be positioned in some different way, you can create div anywhere you want and pass id or reference to your div as a second parameter. (NOTE: This method will not work on StockPanel.) | |
addListener(type, handler) | type - string like 'dataUpdated' (should be listed in 'events' section of this class or classes which extend this class). handler - function which is called when event happens | Adds event listener to the object. | |
addTitle(text, size, color, alpha, bold) | text - text of a title size - font size color - title color alpha - title opacity bold - boolean value indicating if title should be bold. | Adds title to the top of the chart. Pie, Radar positions are updated so that they won't overlap. Plot area of Serial/XY chart is also updated unless autoMargins property is set to false. You can add any number of titles - each of them will be placed in a new line. To remove titles, simply clear titles array: chart.titles = []; and call chart.validateNow() method. | |
animateAgain() | You can trigger the animation of the pie chart. | ||
clear() | Clears the chart area, intervals, etc. | ||
clearLabels() | Removes all labels added to the chart. | ||
clickSlice(index) | index - the number of a slice or Slice object. | You can trigger the click on a slice from outside. | |
hideSlice(index) | index - the number of a slice or Slice object. | Hides slice. | |
invalidateSize() | Use this method to force the chart to resize to it's current container size. | ||
removeLegend() | Removes chart's legend. | ||
removeListener(chart, type, handler) | chart - chart object, type - event name, handler - method | Removes event listener from chart object. | |
rollOutSlice(index) | index - the number of a slice or Slice object. | You can simulate roll-out of a slice from outside. | |
rollOverSlice(index) | index - the number of a slice or Slice object. | You can simulate roll-over a slice from outside. | |
showSlice(index) | index - the number of a slice or Slice object. | Shows slice. | |
validateData() | This method should be called after data in your data provider changed or a new array was set to dataProvider. After calling this method the chart will parse data and redraw. | ||
validateNow() | This method should be called after you changed one or more properties of any class. The chart will redraw after this method is called. | ||
write(container) | container - id of a DIV or DIV object which will hold the chart | Adds chart to the specified DIV. |
Name | Event object | Description |
---|---|---|
clickSlice | {type:"clickSlice", dataItem:Slice} | Dispatched when user clicks on a slice. |
dataUpdated | {type:"dataUpdated", chart:AmChart} | Dispatched when chart is build for the first time or after validateData() method was called. |
init | {type:"init", chart:AmChart} | Dispatched when chart is build for the first time. |
pullInSlice | {type:"pullInSlice", dataItem:Slice} | Dispatched when user clicks on a slice and the slice is pulled-in. |
pullOutSlice | {type:"pullOutSlice", dataItem:Slice} | Dispatched when user clicks on a slice and the slice is pulled-out. |
rendered | {type:"rendered", chart:AmChart} | Dispatched when the chart is build for the first time. |
rightClickSlice | {type:"rightClickSlice", dataItem:Slice} | Dispatched when user right-clicks the slice. |
rollOutSlice | {type:"rollOutSlice", dataItem:Slice} | Dispatched when user rolls-out of the slice. |
rollOverSlice | {type:"rollOverSlice", dataItem:Slice} | Dispatched when user rolls-over the slice. |