Ich verwende PHP, um Graphen aus Arrays zu generieren. Ich möchte mehrere Grafiken auf der gleichen Seite erstellen, um einen zusammenfassenden Bericht aus Antworten zu erstellen, die aus einer Datenbank extrahiert wurden. Derzeit verwende ich diesen Code und kann nur einen einzigen Graphen erstellen. Welche Ergänzungen zum Code muss ich machen, um mehrere Graphen zu erhalten?Zeichnen von Graphen in PHP
<?php
function draw_graph($values)
{
// Get the total number of columns we are going to plot
$columns = count($values);
// Get the height and width of the final image
$width = 300;
$height = 200;
// Set the amount of space between each column
$padding = 5;
// Get the width of 1 column
$column_width = $width/$columns ;
// Generate the image variables
$im = imagecreate($width,$height);
$gray = imagecolorallocate ($im,0xcc,0xcc,0xcc);
$gray_lite = imagecolorallocate ($im,0xee,0xee,0xee);
$gray_dark = imagecolorallocate ($im,0x7f,0x7f,0x7f);
$white = imagecolorallocate ($im,0xff,0xff,0xff);
// Fill in the background of the image
imagefilledrectangle($im,0,0,$width,$height,$white);
$maxv = 0;
// Calculate the maximum value we are going to plot
for($i=0;$i<$columns;$i++)$maxv = max($values[$i],$maxv);
// Now plot each column
for($i=0;$i<$columns;$i++)
{
$column_height = ($height/100) * (($values[$i]/$maxv) *100);
$x1 = $i*$column_width;
$y1 = $height-$column_height;
$x2 = (($i+1)*$column_width)-$padding;
$y2 = $height;
imagefilledrectangle($im,$x1,$y1,$x2,$y2,$gray_dark);
}
header ("Content-type: image/png");
imagepng($im);
imagedestroy($im);
}
$values = array("23","32","35","57","12");
$values2 = array("123","232","335","157","102");
draw_graph($values2);
draw_graph($values);//no output is coming
draw_graph($values2);//no output is coming
draw_graph($values);//no output is coming
?>
danke für die Korrektur des Codes. hübscher code = einfacher zu lesen –