Chart Data Format
Data provided to a Visualforce
chart must meet some specific requirements. Every element in the data collection must contain all
fields referenced in the <apex:chart> component
hierarchy that is bound to that data source. If all fields aren’t provided, a client-side
JavaScript error is thrown, which you can view in a JavaScript console such as
Firebug.
Chart data provided by an Apex method should be a List of uniform objects. These objects can be simple wrappers, sObjects, or AggregateResult objects. Data fields can be made accessible as public member variables or properties.
Chart data provided by JavaScript methods should be a JavaScript array of arrays. Each inner array represents a record or data point. Data fields are made accessible as name: value pairs. See Providing Chart Data via a JavaScript Array for an example.