summaryrefslogtreecommitdiffstats
path: root/frontends/php/chart.php
diff options
context:
space:
mode:
authorhugetoad <hugetoad@97f52cf1-0a1b-0410-bd0e-c28be96e8082>2002-12-27 18:10:30 +0000
committerhugetoad <hugetoad@97f52cf1-0a1b-0410-bd0e-c28be96e8082>2002-12-27 18:10:30 +0000
commit3f4fb0cd9e216fa21c47cf6652c6c951b4ecdfde (patch)
tree9d44fd98f7b9672d0eff2cf2eeb077e27c6bd02b /frontends/php/chart.php
parenta95958e564bcd16f44395ed7d45f7994b198e9b2 (diff)
downloadzabbix-3f4fb0cd9e216fa21c47cf6652c6c951b4ecdfde.tar.gz
zabbix-3f4fb0cd9e216fa21c47cf6652c6c951b4ecdfde.tar.xz
zabbix-3f4fb0cd9e216fa21c47cf6652c6c951b4ecdfde.zip
- improvements for chart.php (Alexei)
git-svn-id: svn://svn.zabbix.com/trunk@611 97f52cf1-0a1b-0410-bd0e-c28be96e8082
Diffstat (limited to 'frontends/php/chart.php')
-rw-r--r--frontends/php/chart.php100
1 files changed, 88 insertions, 12 deletions
diff --git a/frontends/php/chart.php b/frontends/php/chart.php
index e07a7a12..4217bc72 100644
--- a/frontends/php/chart.php
+++ b/frontends/php/chart.php
@@ -75,14 +75,19 @@
exit;
}
- for($i=0;$i<=$sizeY;$i+=$sizeY/5)
- {
- ImageDashedLine($im,$shiftX,$i+$shiftY,$sizeX+$shiftX,$i+$shiftY,$gray);
- }
- for($i=0;$i<=$sizeX;$i+=$sizeX/24)
- {
- ImageDashedLine($im,$i+$shiftX,$shiftY,$i+$shiftX,$sizeY+$shiftY,$gray);
- }
+// for($i=0;$i<=$sizeY;$i+=$sizeY/5)
+// {
+// ImageDashedLine($im,$shiftX,$i+$shiftY,$sizeX+$shiftX,$i+$shiftY,$gray);
+// }
+// for($i=0;$i<=$sizeX;$i+=$sizeX/24)
+// {
+// ImageDashedLine($im,$i+$shiftX,$shiftY,$i+$shiftX,$sizeY+$shiftY,$gray);
+// }
+ ImageDashedLine($im,$shiftX+1,$shiftY,$shiftX+1,$sizeY+$shiftY,$black);
+ ImageDashedLine($im,$shiftX+1,$shiftY,$shiftX+$sizeX,$shiftY,$black);
+ ImageDashedLine($im,$shiftX+$sizeX,$shiftY,$shiftX+$sizeX,$sizeY+$shiftY,$black);
+ ImageDashedLine($im,$shiftX+1,$shiftY+$sizeY,$shiftX+$sizeX,$sizeY+$shiftY,$black);
+
$item=get_item_by_itemid($HTTP_GET_VARS["itemid"]);
$host=get_host_by_hostid($item["hostid"]);
@@ -111,6 +116,42 @@
unset($minX);
unset($minY);
}
+
+ $my_exp = floor(log10($maxY));
+ $my_mant = $maxY/pow(10,$my_exp);
+
+ if ($my_mant < 1.5 )
+ {
+ $my_mant = 1.5;
+ $my_steps = 5;
+ }
+ elseif($my_mant < 2 )
+ {
+ $my_mant = 2;
+ $my_steps = 4;
+ }
+ elseif($my_mant < 3 )
+ {
+ $my_mant = 3;
+ $my_steps = 6;
+ }
+ elseif($my_mant < 5 )
+ {
+ $my_mant = 5;
+ $my_steps = 5;
+ }
+ elseif($my_mant < 8 )
+ {
+ $my_mant = 8;
+ $my_steps = 4;
+ }
+ else
+ {
+ $my_mant = 10;
+ $my_steps = 5;
+ }
+ $maxY = $my_mant*pow(10,$my_exp);
+ $minY = 0;
// echo "MIN/MAX:",$minX," - ",$maxX," - ",$minY," - ",$maxY,"<Br>";
@@ -144,15 +185,50 @@
}
}
+ $startTime=$minX;
+ if (($maxX-$maxY) < 300)
+ $precTime=10;
+ elseif (($maxX-$maxY) < 3600 )
+ $precTime=60;
+ else
+ $precTime=300;
+
+ if (($maxX-$maxY) < 1200 )
+ $dateForm="H:i:s";
+ else
+ $dateForm="H:i";
+
+ $correctTime=$startTime % $precTime;
+ $stepTime=ceil(ceil(($maxX-$minX)/20)/$precTime)*(1.0*$precTime);
+
+ for($i=1;$i<$my_steps;$i++)
+ {
+ ImageDashedLine($im,$shiftX,$i/$my_steps*$sizeY+$shiftY,$sizeX+$shiftX,$i/$my_steps*$sizeY+$shiftY,$gray);
+ }
+ for($j=$stepTime-$correctTime;$j<=($maxX-$minX);$j+=$stepTime)
+ {
+ ImageDashedLine($im,$shiftX+($sizeX*$j)/($maxX-$minX),$shiftY,$shiftX+($sizeX*$j)/($maxX-$minX),$sizeY+$shiftY,$gray);
+ }
+
+
if($nodata == 0)
{
- for($i=0;$i<=$sizeY;$i+=$sizeY/5)
+// for($i=0;$i<=$sizeY;$i+=$sizeY/5)
+// {
+// ImageString($im, 1, $sizeX+5+$shiftX, $sizeY-$i-4+$shiftY, $i*($maxY-$minY)/$sizeY+$minY , $darkred);
+// }
+// for($i=0;$i<=$sizeX;$i+=$sizeX/24)
+// {
+// ImageStringUp($im,0,$i+$shiftX-3,$shiftY+$sizeY+50,date("H:i:s",$i*($maxX-$minX)/$sizeX+$minX),$black);
+// }
+
+ for($i=0;$i<=$my_steps;$i++)
{
- ImageString($im, 1, $sizeX+5+$shiftX, $sizeY-$i-4+$shiftY, $i*($maxY-$minY)/$sizeY+$minY , $darkred);
+ ImageString($im, 1, $sizeX+5+$shiftX, $i/$my_steps*$sizeY+$shiftY-4, $maxY-$i/$my_steps*($maxY-$minY) , $darkred);
}
- for($i=0;$i<=$sizeX;$i+=$sizeX/24)
+ for($j=$stepTime-$correctTime;$j<=($maxX-$minX);$j+=$stepTime)
{
- ImageStringUp($im,0,$i+$shiftX-3,$shiftY+$sizeY+50,date("H:i:s",$i*($maxX-$minX)/$sizeX+$minX),$black);
+ ImageStringUp($im,0,$shiftX+($sizeX*$j)/($maxX-$minX),$shiftY+$sizeY+43,date($dateForm,$startTime+$j),$black);
}
ImageString($im, 1,10, $sizeY+$shiftY+3, date("dS of F Y",$minX) , $darkred);