ktyson
New pChart user
Joined: Tue Apr 10, 2012 4:14 pm Posts: 1
|
Combo ScatterPlot and ScatterLine
I am having trouble creating a combo chart with a scatterplot of all my data and a scatterline of the averages. I can create a scatterplot of both data sets and a scatterline of both data sets but I can't seems to set one data set on each chart in the same image. Below is my code (php): Code: $DataSet = new pData(); $DataSet->addPoints($weekNum,"WeekData"); $DataSet->addPoints($yield,"YieldData");
$DataSet->addPoints($Avgyield,"AvgYieldData"); $DataSet->addPoints($AvgweekNum,"AvgWeekData");
// create scatter plot /* Create the X axis and the binded series */ $DataSet->setAxisName(0,"Week"); $DataSet->setAxisXY(0,AXIS_X); $DataSet->setAxisPosition(0,AXIS_POSITION_BOTTOM);
/* Create the Y axis and the binded series */ $DataSet->setSerieOnAxis("YieldData",1); $DataSet->setAxisName(1,"Yield"); $DataSet->setAxisUnit(1,"%"); $DataSet->setAxisXY(1,AXIS_Y); $DataSet->setAxisPosition(1,AXIS_POSITION_LEFT);
/* Create Avg Data */ $DataSet->setSerieOnAxis("AvgYieldData",1); $DataSet->setScatterSerie("AvgWeekData","AvgYieldData",2); $DataSet->setScatterSerieDescription(2,"Weekly Avg"); $DataSet->setScatterSerieShape(2,SERIE_SHAPE_SQUARE); $DataSet->setScatterSerieColor(2,array("R"=>255,"G"=>0,"B"=>0));
/* Create the 1st scatter chart binding */ $DataSet->setScatterSerie("WeekData","YieldData",0); $DataSet->setScatterSerieDescription(0,"Lot Avg"); $DataSet->setScatterSerieColor(0,array("R"=>0,"G"=>0,"B"=>0));
/* Create the pChart object */ $myPicture = new pImage(400,400,$DataSet);
/* Draw the background */ $Settings = array("R"=>170, "G"=>183, "B"=>87, "Dash"=>1, "DashR"=>190, "DashG"=>203, "DashB"=>107); $myPicture->drawFilledRectangle(0,0,400,400,$Settings); /* Overlay with a gradient */ $Settings = array("StartR"=>219, "StartG"=>231, "StartB"=>139, "EndR"=>1, "EndG"=>138, "EndB"=>68, "Alpha"=>50); $myPicture->drawGradientArea(0,0,400,400,DIRECTION_VERTICAL,$Settings); $myPicture->drawGradientArea(0,0,400,20,DIRECTION_VERTICAL,array("StartR"=>0,"StartG"=>0,"StartB"=>0,"EndR"=>50,"EndG"=>50,"EndB"=>50,"Alpha"=>80)); /* Write the picture title */ $myPicture->setFontProperties(array("FontName"=>"Fonts/tahoma.ttf","FontSize"=>10)); $myPicture->drawText(10,16,"Title",array("R"=>255,"G"=>255,"B"=>255)); /* Add a border to the picture */ $myPicture->drawRectangle(0,0,399,399,array("R"=>0,"G"=>0,"B"=>0)); /* Set the default font */ $myPicture->setFontProperties(array("FontName"=>"Fonts/pf_arma_five.ttf","FontSize"=>10)); /* Set the graph area */ $myPicture->setGraphArea(50,50,350,350); /* Create the Scatter chart object */ $DataSet->setSerieDrawable("AvgYieldData", FALSE); $DataSet->setSerieDrawable("AvgWeekData", FALSE); $myScatter = new pScatter($myPicture,$DataSet); /* Draw the scale */ $myScatter->drawScatterScale();
/* Draw a scatter plot chart */ $myScatter->drawScatterPlotChart(); /* Draw the legend */ $myScatter->drawScatterLegend(225,390,array("Mode"=>LEGEND_HORIZONTAL,"Style"=>LEGEND_NOBORDER)); /* Draw the picture */ $myPicture->Stroke();
|