diff options
| author | hugetoad <hugetoad@97f52cf1-0a1b-0410-bd0e-c28be96e8082> | 2001-07-29 09:04:40 +0000 |
|---|---|---|
| committer | hugetoad <hugetoad@97f52cf1-0a1b-0410-bd0e-c28be96e8082> | 2001-07-29 09:04:40 +0000 |
| commit | bb630a3ad9f5525ff32b76553df7c4d7b99afaec (patch) | |
| tree | b2aa0d27fe069ce7831b6f4d9d7bb2a9772b71e7 /frontends/php | |
| parent | 09f4b59ac98799d23a8affa10e5cdd96a84e720f (diff) | |
Improvements for trend.html.
git-svn-id: svn://svn.zabbix.com/trunk@152 97f52cf1-0a1b-0410-bd0e-c28be96e8082
Diffstat (limited to 'frontends/php')
| -rw-r--r-- | frontends/php/trend.html | 72 | ||||
| -rw-r--r-- | frontends/php/trends.html | 2 |
2 files changed, 43 insertions, 31 deletions
diff --git a/frontends/php/trend.html b/frontends/php/trend.html index f1a4c0d1..31d03105 100644 --- a/frontends/php/trend.html +++ b/frontends/php/trend.html @@ -22,6 +22,8 @@ $shiftX=10; $shiftY=10; + $space_for_text=50; + $nodata=1; @@ -29,7 +31,7 @@ Header( "Content-type: image/png"); Header( "Expires: Mon, 17 Aug 1998 12:51:50 GMT"); - $im = imagecreate($sizeX+$shiftX+61,$sizeY+2*$shiftY+10); + $im = imagecreate($sizeX+$shiftX+61,$sizeY+2*$shiftY+$space_for_text+10); $red=ImageColorAllocate($im,255,0,0); $green=ImageColorAllocate($im,0,255,0); @@ -42,7 +44,7 @@ $x=imagesx($im); $y=imagesy($im); - ImageFilledRectangle($im,0,0,$sizeX+$shiftX+61,$sizeY+2*$shiftY+10,$black); + ImageFilledRectangle($im,0,0,$sizeX+$shiftX+61,$sizeY+2*$shiftY+$space_for_text+10,$black); for($i=0;$i<=$sizeY;$i+=50) { @@ -59,50 +61,60 @@ $min=array(); $max=array(); $avg=array(); - for($i=0;$i<800;$i++) + for($i=0;$i<100;$i++) { - $result=DBselect("select count(value),min(value),max(value),avg(value) from history where itemid=$itemid and clock>$now-800*61 and clock<$now-800*60"); - $count=DBget_field($result,0,0); - $min=DBget_field($result,0,1); - $max=DBget_field($result,0,2); - $avg=DBget_field($result,0,3); + $result=DBselect("select count(value),min(value),max(value),avg(value) from history where itemid=$itemid and clock>$now-($i+1)*60 and clock<$now-$i*60"); + $count[99-$i]=DBget_field($result,0,0); + $min[99-$i]=DBget_field($result,0,1); + $max[99-$i]=DBget_field($result,0,2); + $avg[99-$i]=DBget_field($result,0,3); } $len=0; - $maxX=-1000000000; $maxY=-1000000000; - $minX=1000000000; $minY=1000000000; - $x=array(); - $y=array(); - $avg=-99999999; - for($i=0;$i<DBnum_rows($result);$i++) + for($i=0;$i<100;$i++) { $nodata=0; - $x[$len]=DBget_field($result,$i,0); - $y[$len]=DBget_field($result,$i,1); -// echo $row[0]," - ",$y[$len],"<Br>"; - if($x[$len]>$maxX) { $maxX=$x[$len]; } - if($x[$len]<$minX) { $minX=$x[$len]; } - if($y[$len]>$maxY) { $maxY=$y[$len]; } - if($y[$len]<$minY) { $minY=$y[$len]; } + if($max[$i]>$maxY) { $maxY=$max[$i]; } + if(($max[$i]<$minY)&&($count[$i]>0)) { $minY=$max[$i]; } $len++; } + $maxX=800; + $minX=0; // echo "MIN/MAX:",$minX," - ",$maxX," - ",$minY," - ",$maxY,"<Br>"; if(($minX!=$maxX)&&($minY!=$maxY)) { - for($i=0;$i<$len-1;$i++) + for($i=0;$i<100;$i++) { - $x1=$sizeX*($x[$i]-$minX)/($maxX-$minX); - $y1=$sizeY*($y[$i]-$minY)/($maxY-$minY); - $x2=$sizeX*($x[$i+1]-$minX)/($maxX-$minX); - $y2=$sizeY*($y[$i+1]-$minY)/($maxY-$minY); + $x1=8*$sizeX*($i-$minX)/($maxX-$minX); + $y1=$sizeY*($max[$i]-$minY)/($maxY-$minY); + $x2=$x1; + $y2=0; + $y1=$sizeY-$y1; + $y2=$sizeY-$y2; + ImageFilledRectangle($im,$x1+$shiftX,$y1+$shiftY,$x2+$shiftX+8,$y2+$shiftY,$red); + + $x1=8*$sizeX*($i-$minX)/($maxX-$minX); + $y1=$sizeY*($avg[$i]-$minY)/($maxY-$minY); + $x2=$x1; + $y2=0; $y1=$sizeY-$y1; $y2=$sizeY-$y2; -// echo $x1," - ",$x2," - ",$y1," - ",$y2,"<Br>"; - ImageLine($im,$x1+$shiftX,$y1+$shiftY,$x2+$shiftX,$y2+$shiftY,$green); + ImageFilledRectangle($im,$x1+$shiftX,$y1+$shiftY,$x2+$shiftX+8,$y2+$shiftY,$yellow); + + $x1=8*$sizeX*($i-$minX)/($maxX-$minX); + $y1=$sizeY*($min[$i]-$minY)/($maxY-$minY); + $x2=$x1; + $y2=0; + $y1=$sizeY-$y1; + $y2=$sizeY-$y2; + + ImageFilledRectangle($im,$x1+$shiftX,$y1+$shiftY,$x2+$shiftX+8,$y2+$shiftY,$green); + + ImageStringUp($im, 1, $x1+10, $sizeY+$shiftY+$space_for_text+15, "123456789012" , $red); } } else @@ -119,8 +131,8 @@ // date("dS of F Y h:i:s A",DBget_field($result,0,0)); - ImageString($im, 1,10, $sizeY+$shiftY+5, date("dS of F Y h:i:s A",$minX) , $red); - ImageString($im, 1,$sizeX+$shiftX-168,$sizeY+$shiftY+5, date("dS of F Y h:i:s A",$maxX) , $red); +// ImageString($im, 1,10, $sizeY+$shiftY+5, date("dS of F Y h:i:s A",$minX) , $red); +// ImageString($im, 1,$sizeX+$shiftX-168,$sizeY+$shiftY+5, date("dS of F Y h:i:s A",$maxX) , $red); } else { diff --git a/frontends/php/trends.html b/frontends/php/trends.html index 5ff77eec..06dcf218 100644 --- a/frontends/php/trends.html +++ b/frontends/php/trends.html @@ -2,7 +2,7 @@ include "include/config.inc"; $page["title"] = "Latest values"; $page["file"] = "latest.html"; - show_header($page["title"],0,0); + show_header($page["title"],10,0); ?> <? |
