[PHP] Artichow: la légende du camembert!!
redwire
Messages postés
254
Date d'inscription
Statut
Membre
Dernière intervention
-
ensias -
ensias -
Bonjour!
Je suis en train de faire mon premier "camembert" avec artichow et débutant avec la chose:
Voici le code de ma page:
Et le code de mon camembert:
Mon problème est que je ne récupère pas les libellés de mes légendes:
$absc = array('born to run', 'darkness', 'the river', 'nebraska', 'BitUSA');
ou alors ils ne s'affichent pas... car la zone légende est petite.
Comment gérer la dimension de la légende?
Je n'ai que 1, 2, 3 , 4 à la place.
http://winton99.free.fr/allthoseyears/public/feuilleaveccam.php
Merci de votre aide! :)
Je suis en train de faire mon premier "camembert" avec artichow et débutant avec la chose:
Voici le code de ma page:
<?php // Les valeurs à afficher sur le graphique // Elles doivent être dans un tableau $values = array(1, 2, 3, 5, 2); $absc = array('born to run', 'darkness', 'the river', 'nebraska', 'BitUSA'); //libellé de légende $titre = 'mon titre à moi'; echo "<img src='camembert1.php?titre=$titre&absc=".urlencode(serialize($absc))."&values=".urlencode(serialize($values))."' alt='Mon graphique'/>"; ?>
Et le code de mon camembert:
// On récupère les valeurs à afficher sur le graphique dans $_GET['values'] et on les désérialize $data = @unserialize($_GET['values']); $absc = @unserialize($_GET['absc']); $titre= $_GET['titre']; // On vérifie que les données passées en GET sont correctes if(is_array($data) === FALSE) {echo "out"; exit; } require_once('../artichow/Pie.class.php'); $graph = new Graph(750, 480); // ... ajout d'une ombre portée... $graph->shadow->setPosition(SHADOW_RIGHT_BOTTOM); $graph->shadow->setSize(4); // ... et d'un joli fond. $graph->setBackgroundGradient( new LinearGradient( new Color(240, 240, 240, 0), new Red, 0 ) ); // Seules les valeurs numériques sont utilisées pour l'instant, // avec le thème de couleur par défaut. $pie = new Pie(array_values($data)); // Affiche les pourcentages avec une précision d'un dixième. $pie->setLabelPrecision(1); // Ajout de la légende $pie->setLegend($absc); // Repositionnement de la légende $pie->legend->setPosition(1.45, 0.25); // Décalage du camembert sur la gauche et vers le bas $pie->setCenter(.36, .58); // Redimensionnement du camembert, taille relative à l'objet Graph le contenant. $pie->setSize(.65, .65); // Ajout d'un petit effet 3D; la valeur est donnée en pixel. $pie->set3D(5); // Ajout d'un titre.. $pie->title->set($titre); // ... repositionnement... $pie->title->move(0, -40); // ... et embellissement. $pie->title->setFont(new TuffyBold(14)); $pie->title->setBackgroundColor(new White(50)); $pie->title->setPadding(5, 5, 2, 2); $pie->title->border->setColor(new Black()); $graph->add($pie); $graph->draw(); ?>
Mon problème est que je ne récupère pas les libellés de mes légendes:
$absc = array('born to run', 'darkness', 'the river', 'nebraska', 'BitUSA');
ou alors ils ne s'affichent pas... car la zone légende est petite.
Comment gérer la dimension de la légende?
Je n'ai que 1, 2, 3 , 4 à la place.
http://winton99.free.fr/allthoseyears/public/feuilleaveccam.php
Merci de votre aide! :)
A voir également:
- [PHP] Artichow: la légende du camembert!!
- Easy php - Télécharger - Divers Web & Internet
- Expert php pinterest - Télécharger - Langages
- Retour a la ligne php - Forum Webmastering
- Alert php - Forum PHP
- Retour a la ligne php ✓ - Forum PHP
5 réponses
J'aimerai surtout savoir si je passe correctement mes paramètres, c'est à dire si la syntaxe suivante est correcte...
Merci!
Merci!
<?php // Les valeurs à afficher sur le graphique // Elles doivent être dans un tableau $values = array(1, 2, 3, 5, 2); $absc = array('btr', 'da', 'th', 'bi', 'Ne'); $titre = 'mon titre à moi'; echo "<img src='camembert1.php?titre=$titre&absc=".urlencode(serialize($absc))."&values=".urlencode(serialize($values))."' alt='Mon graphique'/>"; ?>
Bonjour,
J'ai eu le même problème que toi la semaine dernière !
Je n'arrivais pas à passer les libellés associés à mes valeurs
pour le résoudre, j'ai passer les valeurs comme suit :
echo "<img src='../flyspray/scripts/camembert.php?values=".urlencode(serialize($values))."&titre=".$titre."' alt='.$titre.'/>";
puis, je les ai récupérés de cette manière :
$param = stripslashes(urldecode($_GET['values']));
$data = unserialize ($param);
J'ai eu le même problème que toi la semaine dernière !
Je n'arrivais pas à passer les libellés associés à mes valeurs
pour le résoudre, j'ai passer les valeurs comme suit :
echo "<img src='../flyspray/scripts/camembert.php?values=".urlencode(serialize($values))."&titre=".$titre."' alt='.$titre.'/>";
puis, je les ai récupérés de cette manière :
$param = stripslashes(urldecode($_GET['values']));
$data = unserialize ($param);
Bonjour,
J'ai eu le même problème que toi la semaine dernière !
Je n'arrivais pas à passer les libellés associés à mes valeurs
pour le résoudre, j'ai passé les valeurs comme suit :
echo "<img src='../flyspray/scripts/camembert.php?values=".urlencode(serialize($values))."&titre=".$titre."' alt='.$titre.'/>";
puis, je les ai récupéré de cette manière :
$param = stripslashes(urldecode($_GET['values']));
$data = unserialize ($param);
J'ai eu le même problème que toi la semaine dernière !
Je n'arrivais pas à passer les libellés associés à mes valeurs
pour le résoudre, j'ai passé les valeurs comme suit :
echo "<img src='../flyspray/scripts/camembert.php?values=".urlencode(serialize($values))."&titre=".$titre."' alt='.$titre.'/>";
puis, je les ai récupéré de cette manière :
$param = stripslashes(urldecode($_GET['values']));
$data = unserialize ($param);
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
g modifier 1 pe ton script essay le mnt ca marche tres bien
<?php
// Les valeurs à afficher sur le graphique
// Elles doivent être dans un tableau
$values = array(1, 2, 3, 5, 2);
$absc = array('born to run', 'darkness', 'the river', 'nebraska', 'BitUSA'); //libellé de légende
$titre = 'mon titre à moi';
//On récupère les valeurs à afficher sur le graphique dans $_GET['values'] et on les désérialize
// On vérifie que les données passées en GET sont correctes
if(is_array($values) === FALSE) {echo "out";
exit;
}
require_once('artichow-php5/Pie.class.php');
$graph = new Graph(750, 480);
// ... ajout d'une ombre portée...
$graph->shadow->setSize(4);
// ... et d'un joli fond.
$graph->setBackgroundGradient(
new LinearGradient(
new Color(240, 240, 240, 0),
new Red,
0
)
);
// Seules les valeurs numériques sont utilisées pour l'instant,
// avec le thème de couleur par défaut.
$pie = new Pie(array_values($values));
// Affiche les pourcentages avec une précision d'un dixième.
$pie->setLabelPrecision(1);
// Ajout de la légende
$pie->setLegend($absc);
// Repositionnement de la légende
$pie->legend->setPosition(1.45, 0.25);
// Décalage du camembert sur la gauche et vers le bas
$pie->setCenter(.36, .58);
// Redimensionnement du camembert, taille relative à l'objet Graph le contenant.
$pie->setSize(.65, .65);
// Ajout d'un petit effet 3D; la valeur est donnée en pixel.
$pie->set3D(5);
// Ajout d'un titre..
$pie->title->set($titre);
// ... repositionnement...
$pie->title->move(0, -40);
// ... et embellissement.
$pie->title->setFont(new TuffyBold(14));
$pie->title->setBackgroundColor(new White(50));
$pie->title->setPadding(5, 5, 2, 2);
$pie->title->border->setColor(new Black());
$graph->add($pie);
$graph->draw(); ?>
<?php
// Les valeurs à afficher sur le graphique
// Elles doivent être dans un tableau
$values = array(1, 2, 3, 5, 2);
$absc = array('born to run', 'darkness', 'the river', 'nebraska', 'BitUSA'); //libellé de légende
$titre = 'mon titre à moi';
//On récupère les valeurs à afficher sur le graphique dans $_GET['values'] et on les désérialize
// On vérifie que les données passées en GET sont correctes
if(is_array($values) === FALSE) {echo "out";
exit;
}
require_once('artichow-php5/Pie.class.php');
$graph = new Graph(750, 480);
// ... ajout d'une ombre portée...
$graph->shadow->setSize(4);
// ... et d'un joli fond.
$graph->setBackgroundGradient(
new LinearGradient(
new Color(240, 240, 240, 0),
new Red,
0
)
);
// Seules les valeurs numériques sont utilisées pour l'instant,
// avec le thème de couleur par défaut.
$pie = new Pie(array_values($values));
// Affiche les pourcentages avec une précision d'un dixième.
$pie->setLabelPrecision(1);
// Ajout de la légende
$pie->setLegend($absc);
// Repositionnement de la légende
$pie->legend->setPosition(1.45, 0.25);
// Décalage du camembert sur la gauche et vers le bas
$pie->setCenter(.36, .58);
// Redimensionnement du camembert, taille relative à l'objet Graph le contenant.
$pie->setSize(.65, .65);
// Ajout d'un petit effet 3D; la valeur est donnée en pixel.
$pie->set3D(5);
// Ajout d'un titre..
$pie->title->set($titre);
// ... repositionnement...
$pie->title->move(0, -40);
// ... et embellissement.
$pie->title->setFont(new TuffyBold(14));
$pie->title->setBackgroundColor(new White(50));
$pie->title->setPadding(5, 5, 2, 2);
$pie->title->border->setColor(new Black());
$graph->add($pie);
$graph->draw(); ?>