par
alex2011 » 24 nov. 2011, 00:31
Bonjour,
Voici le code de mes graphes:
avec ma requête ci dessous, j'obtiens 6 resultats et sur le graphes j'ai aussi 6 résultats.
Par contre ce sue je veux faire:
Afficher 3 barre une pour les utilisateurs visual_aids, une deuxième bar pour hearing_aids et une troisième pour lesgens normal et je ne sais pas comment le faire.
J'arrive pas a faire une requête avec juste 3 resultats et j'aimerai bien pouvoir le faire en PHP
<?php
require_once "jpgraph/src/jpgraph.php";
require_once "jpgraph/src/jpgraph_plotband.php";
require_once "jpgraph/src/jpgraph_bar.php";
require_once 'jpgraph/src/jpgraph_error.php';
include 'API/db_api.php';
// $graph = new Graph(600, 400);
// j'etablis ma requête
$sql = "SELECT count( * ) as click, visual_aids, hearing_aids FROM user_info_table
group by visual_aids, hearing_aids";
$result = mysql_query($sql, $link) or die(mysql_error());
while ($resultat = mysql_fetch_array($result))
//je recupère mes donnée dans un tableau
{$click[] = $resultat['click'];
if($resultat ['visual_aids']=="1" || $resultat ['visual_aids']=="2" )
{ $average[]="visual_aids";
}else if($resultat['hearing_aids']=="1"){
$average1[]="hearing aids";
}
else if($resultat['visual_aids']=="3" || $resultat['hearing_aids']=="0" || $resultat['visual_aids']=="0"){
$average2[]="Normal";
}
}
//Graphe
// *******************
// Création du graphique
// *******************
// Construction du conteneur
// Spécification largeur et hauteur
$graph = new Graph(700,400,'auto');
// Réprésentation linéaire
$graph->SetScale("textlin");
// Ajouter une ombre au conteneur
$graph->SetShadow();
// Fixer les marges
$graph->img->SetMargin(40,30,25,40);
$graph->SetMarginColor("white");
$graph->legend->SetFont(FF_ARIAL,FS_NORMAL,8);
$graph->title->Set('Background Image');
$graph->SetBox(true);
$graph->yaxis->HideZeroLabel();
$graph->yaxis->HideLine(false);
$graph->yaxis->HideTicks(false,false);
$graph->ygrid->Show(true);
$graph->xgrid->Show(false);
$graph->yaxis->HideZeroLabel();
// Création du graphique histogramme
$bplot = new BarPlot($click);
// Spécification des couleurs des barres
$bplot->SetFillColor(array('yellow'));
// Une ombre pour chaque barre
$bplot->SetShadow();
// Afficher les valeurs pour chaque barre
$bplot->value->Show();
// Fixer l'aspect de la police
$bplot->value->SetFont(FF_ARIAL,FS_NORMAL,9);
// Modifier le rendu de chaque valeur
$bplot->value->SetFormat('%d');
// Ajouter les barres au conteneur
$graph->Add($bplot);
$graph->legend->Pos(0.03,0.025, "right", "top");
// Le titre
$graph->title->Set("User of application");
$graph->title->SetFont(FF_ARIAL,FS_NORMAL,10);
// Titre pour l'axe horizontal(axe x) et vertical (axe y)
//$graph->xaxis->title->Set("Années");
//$graph->yaxis->title->Set("Nombre de ventes");
//$graph->yaxis->title->SetFont(FF_FONT1,FS_BOLD);
//$graph->xaxis->title->SetFont(FF_FONT1,FS_BOLD);
// Légende pour l'axe horizontal
$graph->xaxis->SetTickLabels($average);
// Afficher le graphique
$graph->Stroke();
?>
Merci pour votre aide
Bonjour,
Voici le code de mes graphes:
avec ma requête ci dessous, j'obtiens 6 resultats et sur le graphes j'ai aussi 6 résultats.
Par contre ce sue je veux faire:
Afficher 3 barre une pour les utilisateurs visual_aids, une deuxième bar pour hearing_aids et une troisième pour lesgens normal et je ne sais pas comment le faire.
J'arrive pas a faire une requête avec juste 3 resultats et j'aimerai bien pouvoir le faire en PHP :)
[php]<?php
require_once "jpgraph/src/jpgraph.php";
require_once "jpgraph/src/jpgraph_plotband.php";
require_once "jpgraph/src/jpgraph_bar.php";
require_once 'jpgraph/src/jpgraph_error.php';
include 'API/db_api.php';
// $graph = new Graph(600, 400);
// j'etablis ma requête
$sql = "SELECT count( * ) as click, visual_aids, hearing_aids FROM user_info_table
group by visual_aids, hearing_aids";
$result = mysql_query($sql, $link) or die(mysql_error());
while ($resultat = mysql_fetch_array($result))
//je recupère mes donnée dans un tableau
{$click[] = $resultat['click'];
if($resultat ['visual_aids']=="1" || $resultat ['visual_aids']=="2" )
{ $average[]="visual_aids";
}else if($resultat['hearing_aids']=="1"){
$average1[]="hearing aids";
}
else if($resultat['visual_aids']=="3" || $resultat['hearing_aids']=="0" || $resultat['visual_aids']=="0"){
$average2[]="Normal";
}
}
//Graphe
// *******************
// Création du graphique
// *******************
// Construction du conteneur
// Spécification largeur et hauteur
$graph = new Graph(700,400,'auto');
// Réprésentation linéaire
$graph->SetScale("textlin");
// Ajouter une ombre au conteneur
$graph->SetShadow();
// Fixer les marges
$graph->img->SetMargin(40,30,25,40);
$graph->SetMarginColor("white");
$graph->legend->SetFont(FF_ARIAL,FS_NORMAL,8);
$graph->title->Set('Background Image');
$graph->SetBox(true);
$graph->yaxis->HideZeroLabel();
$graph->yaxis->HideLine(false);
$graph->yaxis->HideTicks(false,false);
$graph->ygrid->Show(true);
$graph->xgrid->Show(false);
$graph->yaxis->HideZeroLabel();
// Création du graphique histogramme
$bplot = new BarPlot($click);
// Spécification des couleurs des barres
$bplot->SetFillColor(array('yellow'));
// Une ombre pour chaque barre
$bplot->SetShadow();
// Afficher les valeurs pour chaque barre
$bplot->value->Show();
// Fixer l'aspect de la police
$bplot->value->SetFont(FF_ARIAL,FS_NORMAL,9);
// Modifier le rendu de chaque valeur
$bplot->value->SetFormat('%d');
// Ajouter les barres au conteneur
$graph->Add($bplot);
$graph->legend->Pos(0.03,0.025, "right", "top");
// Le titre
$graph->title->Set("User of application");
$graph->title->SetFont(FF_ARIAL,FS_NORMAL,10);
// Titre pour l'axe horizontal(axe x) et vertical (axe y)
//$graph->xaxis->title->Set("Années");
//$graph->yaxis->title->Set("Nombre de ventes");
//$graph->yaxis->title->SetFont(FF_FONT1,FS_BOLD);
//$graph->xaxis->title->SetFont(FF_FONT1,FS_BOLD);
// Légende pour l'axe horizontal
$graph->xaxis->SetTickLabels($average);
// Afficher le graphique
$graph->Stroke();
?>[/php]
Merci pour votre aide