Gerar grafico com php – html – chart
Gerar Gráficos hoje em dia é essencial em qualquer empresa, tanto para comparar evoluções, perdas, ganhos, gastos, etc, quanto também para descobrir o que está progredindo, quais atitudes ou recursos foram prósperos para o objetivo principal da empresa.
Também é sabido que a grande massa dos websites online hoje em dia são feitos em php, então para o programador php que se preze, precisa saber gerar gráfico nessa linguagem que é tão fascinante.
Arquivo que vc escolhe os dados a ser gerado.
grafico.php
include("geragrafico.php"); $aGraphData = Array (array("Teste", 0, ""), array("Teste1", 1, ""), array("Teste2", 99, ""), array("Teste3", 11, ""), array("Teste4", 32, ""), ); echo phpHtmlChart($aGraphData, "H", "Teste", "Teste", "30pt", 500, "px", 50, "px");
Agora o arquivo que gera e mostra o grafico.
geragrafico.php
function phpHtmlChart($paData, $psOrientation = "H", $psTitle = "", $psAxisLabel = "", $psFontSize = "8pt",
$piMaxSize = 100, $psMaxSizeUnit = "px", $piBarSize = 15, $psBarUnit = "px",
$paColors = Array("#a0a0a0", "#707070")) {
$iColors = sizeof($paColors);
// Start HTML...
$sHTML = "
<table style="font-family: Arial; font-size: $psFontSize"><tr><tr><td colspan=2 align="center"><u><b>$psTitle</b></u></td></tr><td align="right">
";
// Headers/scale
$iMax = 0;
for($iRow = 0; $iRow < sizeof($paData); $iRow++) {
// Test for max...
if($paData[$iRow][1] > $iMax) $iMax = $paData[$iRow][1];
// Ouput the label
$sHTML .= "<div style ="height: $piBarSize$psBarUnit;">".$paData[$iRow][0]."</div>";
} // Rows in paData...
$iScale = $iMax / $piMaxSize;
$sHTML .= "
</td><td>
<TABLE style="border-bottom: 1px solid black; border-left: 1px solid black;font-family: Arial; font-size: $psFontSize; ">
<tr><td>
";
// Ouput the rows
for($iRow = 0; $iRow < sizeof($paData); $iRow++) {
$sColor = $paColors[$iRow%$iColors];
$iBarLength = $paData[$iRow][1] / $iScale;
$sHTML .= "
<div style="background-color: $sColor; text-align: right; color: white;
height: $piBarSize$psBarUnit;
width: $iBarLength$psMaxSizeUnit;"> ".
$paData[$iRow][1].$paData[$iRow][2]." </div>
";
}
// Wrap up HTML
$sHTML .= "
</td></tr>
</table></td></tr>
<tr><td></td><td>$psAxisLabel</td></tr>
</table>
";
return $sHTML;
}
Script muito simples de se utilizar.







sera que vc poderia mandar uma copia desse arquivo do grafico para mim por que eu testei aqui e nao ta funcionando desde ja agradeço.
23/03