Histogramme en php avec gd. programmation objet

Soyez le premier à donner votre avis sur cette source.

Vue 27 192 fois - Téléchargée 2 575 fois

Description

J'ai déposé sur http://www.phpcs.com/code.aspx?ID=32421
un source qui permet de générer un histogramme de plusieurs séries de chiffres, programmé en objet et basé sur CSS

On m'a fait remarquer à juste titre que la librairie GD existait ;-)
J'ai donc refait le programme avec GD, sauf que:

1) j'ai pris mon objet de base, en est extrait la partie commune
--> oc_listes.php
(contient entre autre le calcul des coordonnées des barres à dessiner)

2) J'en ai déduit les nouvelles classes que j'ai séparé en 2 fichiers
--> oc_histogramme.php pour la version CSS
--> oc_gdhistogramme.php pour la version GD

Du coup, ca fait a mon sens un super exemple de ce à quoi sert la programmation objet...

Comme tout ce que je présente ici se trouve aussi sur mon site perso, et que j'ai pas envi aujourd'hui de me farcir tout en double, vous avez les fichiers en brut, sans commentaire à part dans le code (et dans le source que je cite plus haut, puisqu'après tout, le plus gros du travail était déjà fait)

--> oc_listes.php
--> oc_gdhistogramme.php
--> exemple_gd_histogramme.php
--> oc_histogramme.php
--> exemple_histogramme.php
--> test.htm (qui ne se contient que de la partie GD)

Comparez les fichiers d'initialisation de l'histogramme
--> exemple_gd_histogramme.php
--> exemple_histogramme.php
et vous verrez à quel point ils sont similaires !

Pour voir un exemple en 3D, avoir d'autres explications...

http://originalcompo.free.fr
rubrique DIVERS
sous rubrique Programmation Web
lien "class THistogramme et TGDHistogramme"

ou bien ajoutez un commentaire à la source !

Codes Sources

A voir également

Ajouter un commentaire

Commentaires

Messages postés
135
Date d'inscription
samedi 18 janvier 2003
Statut
Membre
Dernière intervention
17 avril 2009

il existe ArtiChow : http://www.artichow.org

je fais de la pub pour ma source mais elle permet de générer de graphiques vraiment très simplement, il suffit de renseigner des tableaux avec les données en provenance de la BDD....

http://www.phpcs.com/code.aspx?ID=47171
Messages postés
11
Date d'inscription
vendredi 28 mai 2004
Statut
Membre
Dernière intervention
7 mai 2008

Très bonne source, j'ai juste dû ajouter la gestion des mois pour obtenir ce que je recherchais.
Bravo et merci.
Messages postés
8
Date d'inscription
mardi 18 avril 2006
Statut
Membre
Dernière intervention
26 mars 2008

Bonjour,

j'aurais juste une question :

comment exploiter cette source avec dans les array des variables en boucle.
par exemple $y correspond à une année, $variable correspond à ma variable, $variable[$y] étant la valeur de ma variable pour l'année $y. Comment générer le tableau avec un for ($y=$annee1;$y<=$annee2;$y++) ?

merci.
Messages postés
65
Date d'inscription
dimanche 3 avril 2005
Statut
Membre
Dernière intervention
9 octobre 2007

Salut,

Pour le "serie 1", "serie 2"... les valeurs sont gérés dans le init de l'objet, et stockées dans "legende"

La 1ère version de cette classe d'histogramme utilisait des balises
, et j'utilisais le champ "legende" dans la propriété "alt" de la balise
.

En gros, l'info apparaissait lorsqu'on passait la souris sur une barre (il y avait le nom de la série suivi de la valeur entre parenthèses)

Dans la 2ième version qui est ici, j'ai ré-utilisé un tronc commun objet, mais je n'ai effectivement pas géré cette valeur, donc tu as parfaitement raison, ca ne sert à rien, je ne m'en étais pas rendu compte d'ailleurs

PS: les 2 versions du code se trouvent sur mon site,
http://mywebdev.free.fr/PHP/index.php
Messages postés
70
Date d'inscription
jeudi 14 avril 2005
Statut
Membre
Dernière intervention
20 août 2008

Bon il faut laisser tomber la seconde question, je ne voyait pas les chose correctement.

Cependant, j'aimerai afficher (par Ex:) les mois sous les chiffes que je récupèrent, les mois ou du texte différent fct de chaque barre me suis-je bien fait comprendre ?

_ _ _
| | | | _ | |
| | | | | | | | (Bon faut imaginer que c'est l'histogramme).
| | | | | | | |
|_| |_| |_| |_|

4 4 2 5
jan fev Mar Avr

Il me faudrait quelque chose comme ça !

Merci.
Afficher les 27 commentaires

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.