我正在处理包含多次访问的统计数据,pChart上的比例显示小数而不是整数。
默认设置是创建分数,其分数类似于以下:
0 0.2 0.4 0.6 0.8 1.0 1.2 |=== |======== |============================ |=== |===================
这不起作用,因为你无法访问网站1.2次。
我试图仅使用"Mode"=>SCALE_MODE_MANUAL
参数的整数(0,1,2等)进行缩放,但是我失败了。
如何设置或强制pChart使用轴上的整数进行绘图?
答案 0 :(得分:2)
您最好调整数据,而不是图表,因为即使比例为1,您仍会看到显示1.2的条形图。
如果您仍在尝试修复轴边界,则设置轴边界,并使用最小div高度值,可以更好地控制轴。
$AxisBoundaries = array(0=>array("Min"=>0,"Max"=>16));
$myPicture->drawScale(array("MinDivHeight"=>50, "CycleBackground"=>TRUE,"DrawSubTicks"=>FALSE,"GridR"=>0,"GridG"=>0,"GridB"=>0,"GridAlpha"=>30,"Pos"=>SCALE_POS_TOPBOTTOM,"Mode"=>SCALE_MODE_MANUAL, "ManualScale"=>$AxisBoundaries, "ScaleSpacing"=>100)); //
另一种略显狡猾的方法是在调用drawScale函数之前创建一个包含整数的数据集,然后将其删除,并添加实际数据。
答案 1 :(得分:2)
我做了一些事情来实现这一点,首先我设置了一个固定的刻度,最小和最大。
$scaleConfig = array("Min"=>1,"Max"=>100); //set explicit scale size
然后当我使用drawScale()方法时,我将Factor属性设置为1:
$pImage->drawScale(array('Mode'=>SCALE_MODE_MANUAL,'Factors'=>array(1),'ManualScale'=>$scaleConfig,'DrawSubTicks' => false));
答案 2 :(得分:0)
如果你设置"因素" => array(10000)在drawScale函数中,pChart显示整数(1,2)。我自己找到了解决方案。