pChart 2.x forum
http://wiki.pchart.net/forum/

How to force min max in the Y scale SCALE_MODE_MANUAL??
http://wiki.pchart.net/forum/viewtopic.php?f=1&t=29469
Page 1 of 1

Author:  xlan [ Mon Aug 06, 2012 9:49 pm ]
Post subject:  How to force min max in the Y scale SCALE_MODE_MANUAL??

Hi there i trying to draw a chart using the SCALE_MODE_MANUAL with min=-66 and max=66

but the image is showing a scale of -80 to 80

I'm missing something THANKS.

Here the code

<?php
/* CAT:Line chart */

/* pChart library inclusions */
include("./pChart2.1.3/class/pData.class.php");
include("./pChart2.1.3/class/pDraw.class.php");
include("./pChart2.1.3/class/pImage.class.php");

/* Create and populate the pData object */
$MyData = new pData();
$MyData->addPoints(array(-4,5,10,12,8,3),"Probe 1");
$MyData->addPoints(array(3,12,15,8,5,-5),"Probe 2");
$MyData->addPoints(array(2,7,5,18,19,22),"Probe 3");
$MyData->setSerieTicks("Probe 2",4);
$MyData->setSerieWeight("Probe 3",2);
$MyData->setAxisName(0,"Temperatures");
$MyData->addPoints(array("jan",
"feb",
"mar",
"Apr",
"May",
"Jun"),
"Labels");
$MyData->setSerieDescription("Labels","Months");
$MyData->setAbscissa("Labels");

/* Create the pChart object */
$myPicture = new pImage(700,230,$MyData);

/* Draw the background */
$Settings = array("R"=>170, "G"=>183, "B"=>87, "Dash"=>1, "DashR"=>190, "DashG"=>203, "DashB"=>107);
$myPicture->drawFilledRectangle(0,0,700,230,$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,700,230,DIRECTION_VERTICAL,$Settings);
$myPicture->drawGradientArea(0,0,700,20,DIRECTION_VERTICAL,array("StartR"=>0,"StartG"=>0,"StartB"=>0,"EndR"=>50,"EndG"=>50,"EndB"=>50,"Alpha"=>80));

/* Add a border to the picture */
$myPicture->drawRectangle(0,0,699,229,array("R"=>0,"G"=>0,"B"=>0));

/* Write the picture title */
$myPicture->setFontProperties(array("FontName"=>"./pChart2.1.3/fonts/Silkscreen.ttf","FontSize"=>6));
$myPicture->drawText(10,13,"drawPlotChart() - draw a plot chart",array("R"=>255,"G"=>255,"B"=>255));

/* Write the chart title */
$myPicture->setFontProperties(array("FontName"=>"./pChart2.1.3/fonts/Forgotte.ttf","FontSize"=>11));
$myPicture->drawText(250,55,"Average temperature",array("FontSize"=>20,"Align"=>TEXT_ALIGN_BOTTOMMIDDLE));

$AxisBoundaries =array(0=>array("Min"=>-66,"Max"=>66));

$ScaleSettings = array("Mode"=>SCALE_MODE_MANUAL,"DrawSubTicks"=>TRUE,"Pos"=>SCALE_POS_TOPBOTTOM,"ManualScale"=>$AxisBoundaries);
/* Draw the scale and the 2nd chart */
$myPicture->setGraphArea(500,60,670,190);
$myPicture->drawFilledRectangle(500,60,670,190,array("R"=>255,"G"=>255,"B"=>255,"Surrounding"=>-200,"Alpha"=>10));
$myPicture->drawScale($ScaleSettings);
$myPicture->setShadow(TRUE,array("X"=>-1,"Y"=>1,"R"=>0,"G"=>0,"B"=>0,"Alpha"=>10));
$myPicture->drawLineChart();
$myPicture->setShadow(FALSE);

/* Write the chart legend */
$myPicture->drawLegend(510,205,array("Style"=>LEGEND_NOBORDER,"Mode"=>LEGEND_HORIZONTAL));

/* Render the picture (choose the best way) */
$myPicture->autoOutput("pictures/example.drawLineChart.png");
?>

Page 1 of 1 All times are UTC
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
http://www.phpbb.com/