EDD_Graph
The EDD_Graph class, introduced in EDD version 1.9, is used for easily building graphs of data. For example, the earnings / sales reports graphs seen in Downloads → Reports are created using EDD_Graph. The class can be used by extensions to quickly graph any data set.
A simple example looks like this:
$data = array( 'Your Graph Label Here' => array( array( 1, 5 ), array( 3, 8 ), array( 10, 2 ) ), 'Second Label Here' => array( array( 1, 7 ), array( 4, 5 ), array( 12, 8 ) ) ); $graph = new EDD_Graph( $data ); $graph->display();
Each inner array represents a data point on the graph and should be structured like this:
array( 'value on x axis', 'value on y axis' )
Graphs can contain one one or more lines. To add multiple lines, simply add additional inner arrays, as shown in the example above.
Along with the data points, EDD_Grap allows you to control various options of the graph by using the set() method. For example:
// Example with options set to other than default: $data = array( 'Line Label' => array( array( 1, 5 ), array( 3, 8 ), array( 10, 2 ) ), 'Second Line Label' => array( array( 1, 7 ), array( 4, 5 ), array( 12, 8 ) ) ); $graph = new EDD_Graph( $data ); $graph->set( 'bgcolor', '#000' ); $graph->set( 'color', '#fff' ); $graph->display();
The available options are:
- y_mode
- x_mode
- y_decimals
- x_decimals
- y_position
- time_format
- ticksize_unit
- ticksize_num
- multiple_y_axes
- bgcolor
- bordercolor
- color
- borderwidth
- bars
- lines
- points
See the Flot API reference for the possible values each of these can receive.
Note, if you want to display a graph on the front end, you will need to include includes/admin/reporting/class-edd-graph.php first.