ChartDirector Ver 3.1 (PHP Edition Edition)

Box-Whisker Chart (2)




This example creating a horizontal box-whisker chart. The box-whisker layer is created using XYChart.addBoxWhiskerLayer, and the chart is set to horizontal using XYChart.swapXY.

Source Code Listing

[File: phpdemo/boxwhisker2.php".]
<?php require_once("../lib/phpchartdir.php"); #Sample data for the Box-Whisker chart. Represents the minimum, 1st quartile, #medium, 3rd quartile and maximum values of some quantities $Q0Data = array(40, 45, 35); $Q1Data = array(55, 60, 50); $Q2Data = array(62, 70, 60); $Q3Data = array(70, 80, 65); $Q4Data = array(80, 90, 75); #The labels for the chart $labels = array("<*img=robot1.png*><*br*>Bipedal Type", "<*img=robot2.png*><*br*>Wolf Type", "<*img=robot5.png*><*br*>Bird Type"); #Create a XYChart object of size 540 x 320 pixels $c = new XYChart(540, 320); #swap the x and y axes to create a horizontal box-whisker chart $c->swapXY(); #Set directory for loading images to current script directory #Need when running under Microsoft IIS $c->setSearchPath(dirname(__FILE__)); #Set the plotarea at (75, 25) and of size 440 x 270 pixels. Enable both #horizontal and vertical grids by setting their colors to grey (0xc0c0c0) $plotAreaObj = $c->setPlotArea(75, 25, 440, 270); $plotAreaObj->setGridColor(0xc0c0c0, 0xc0c0c0); #Add a title to the chart $c->addTitle(" Robot Shooting Accuracy Scores"); #Set the labels on the x axis and the font to Arial Bold $labelsObj = $c->xAxis->setLabels($labels); $labelsObj->setFontStyle("arialbd.ttf"); #Disable x axis ticks by setting the length to 0 $c->xAxis->setTickLength(0); #Set the font for the y axis labels to Arial Bold $c->yAxis->setLabelStyle("arialbd.ttf"); #Add a Box Whisker layer using light blue 0x9999ff as the fill color and blue #(0xcc) as the line color. Set the line width to 2 pixels $boxWhiskerLayerObj = $c->addBoxWhiskerLayer($Q3Data, $Q1Data, $Q4Data, $Q0Data, $Q2Data, 0x9999ff, 0xcc); $boxWhiskerLayerObj->setLineWidth(2); #output the chart header("Content-type: image/png"); print($c->makeChart2(PNG)); ?>