Deprecated
This visualization has been replaced with a new version; please use that instead. For easy migration, please refer to the release notes page.
Overview
A pie chart that is rendered within the browser using SVG or VML. Displays tips when clicking on slices. Animates slices when clicking on legend entries.
By: Google
Example
Code it yourself on the Visualization Playground
<html> <head> <script type="text/javascript" src="https://www.google.com/jsapi"></script> <script type="text/javascript"> google.load("visualization", "1", {packages:["piechart"]}); google.setOnLoadCallback(drawChart); function drawChart() { var data = google.visualization.arrayToDataTable([ ['Task', 'Hours per Day'], ['Work', 11], ['Eat', 2], ['Commute', 2], ['Watch TV', 2], ['Sleep', 7] ]); var chart = new google.visualization.PieChart(document.getElementById('chart_div')); chart.draw(data, {width: 400, height: 240, is3D: true, title: 'My Daily Activities'}); } </script> </head> <body> <div id="chart_div"></div> </body> </html>
Loading
The google.load
package name is "piechart"
google.load("visualization", "1", {packages: ["piechart"]});
The visualization's class name is google.visualization.PieChart
var visualization = new google.visualization.PieChart(container);
Data Format
Two columns. The first column should be a string, and contain the slice label. The second column should be a number, and contain the slice value.
Configuration Options
Name | Type | Default | Description |
---|---|---|---|
backgroundColor | string or Object | default color | The background color for the main area of the chart.
One of the following options:
|
borderColor | string or Object | default color | The border around chart elements. Possible values are as those of the backgroundColor configuration option. |
colors | Array of strings or objects | Default colors | An array of colors, where each element specifies the color of one series. You should specify one array element for each series.
|
enableTooltip | boolean | true | If set to true, tooltips are shown when the user clicks on a slice. |
focusBorderColor | string or Object | default color | The border around chart elements that are in focus (pointed by the mouse). Possible values are as those of the backgroundColor configuration option. |
height | number | Container's height | Height of the chart in pixels. |
is3D | boolean | false | If set to true, displays a three-dimensional chart. |
legend | string | 'right' | Position and type of legend. Can be one of the following:
|
legendBackgroundColor | string or Object | default color | The background color for the legend area of the chart. Possible values are as those of the backgroundColor configuration option. |
legendFontSize | number | automatic | The size of the legend font, in pixels. |
legendTextColor | string or Object | default color | The legend text color. Possible values are as those of the backgroundColor configuration option. |
pieJoinAngle | number | 0 | Any slice less than this angle will be combined into a generic slice labeled "Other". |
pieMinimalAngle | number | 0 | Any slice smaller than this angle will not be drawn in the pie chart (though it will still get a legend entry). The remaining slices will expand to fill the pie in fixed proportion. Note: This can distort the apparent values, especially when this number is large, because a quantity is being removed from the pie. To calculate the sizes of the slices, first angles smaller than pieJoinAngle are joined to the "Other" slice, and then all slices larger than pieMinimalAngle are drawn |
title | string | no title | Text to display above the chart. |
titleColor | string or Object | default color | The color for the chart's title. Possible values are as those of the backgroundColor configuration option. |
titleFontSize | number | automatic | The font size for the chart title, in pixels. |
tooltipFontSize |
number | 11 | The font size of the tooltip text. This might be reduced, if the tooltip is too small to hold the text in the specified font. |
tooltipHeight |
number | 60 | The height of the tooltip, in pixels. The tooltip height is fixed; it will never grow or shrink to fit the length or font size of the text. But anything greater than 1/3 the chart height will be cropped. |
tooltipWidth | number | 120 | The width of the tooltip, in pixels. The tooltip width is fixed; it will never grow or shrink to fit the length or font size of the text. But anything greater than the chart width will be cropped. |
width | number | Container's width | Width of the chart in pixels. |
Methods
Method | Return Type | Description |
---|---|---|
draw(data, options) |
none | Draws the chart. |
getSelection() |
Array of selection elements | Standard getSelection() implementation. Selected elements are
row and cell elements. Multiple rows and/or a single cell can be selected at a time by the user. |
setSelection() |
none | Standard setSelection() implementation, but supports selection
of multiple rows and/or one cell. Treats every selection entry as a row or cell selection. |
Events
Name | Description | Properties |
---|---|---|
onmouseover |
Fired when the user mouses over a slice, and passes in the row and column indexes of the corresponding cell. | row, column |
onmouseout |
Fired when the user mouses away from a slice, and passes in the row and column indexes of the corresponding cell. | row, column |
ready |
The chart is ready for external method calls. If you want to interact with
the chart, and call methods after you draw it, you should set up a listener
for this event before you call the draw method, and call
them only after the event was fired |
None |
select |
Fired when the user clicks a slice or legend. When a slice is selected,
the corresponding cell in the data table is selected; when a legend is
selected, the corresponding column in the data table is selected. To learn
what has been selected, call Note: Clicking a slice does not toggle between selecting and deselecting a cell; clicking a slice always selects it. Clicking a legend entry, on the other hand, toggles between selecting and deselecting the row. |
None |
Data Policy
All code and data are processed and rendered in the browser. No data is sent to any server.