Précédent   Forum des professionnels en informatique > PHP > Bibliothèques et frameworks > Images
Images Forum d'entraide sur les bibliothèques graphiques avec PHP. Exemples : GD, ImageMagick, JpGraph, Artichow... Avant de poster -> FAQ GD, Cours GD et Sources GD
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 02/03/2007, 11h34   #1
Membre à l'essai
 
Inscription : novembre 2005
Messages : 127
Détails du profil
Informations forums :
Inscription : novembre 2005
Messages : 127
Points : 21
Points : 21
Par défaut Histogramme 3D

Bonjour,
j'ai récupéré un code qui produit une image dynamique et celui ci c'est un histogramme. Mais je souhaite pouvoir apporter quelques modifications pour avoir un histogramme dont les barres sont en 3D et la couleur en dégradé.
Voilà le code :
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
<?php  
    $visites = array(138, 254, 381, 652, 896, 720, 140, 556, 663, 331, 407, 768); 
 
    header ("Content-type: image/png");  
    $largeurImage = 400; 
    $hauteurImage = 300; 
    $im = ImageCreate ($largeurImage, $hauteurImage)  
            or die ("Erreur lors de la création de l'image");          
    $blanc = ImageColorAllocate ($im, 255, 255, 255);  
    $noir = ImageColorAllocate ($im, 0, 0, 0);   
    $bleu = ImageColorAllocate ($im, 0, 0, 255);      
 // on dessine un trait vertical pour représenter l'axe du temps     
    ImageLine ($im, 10, $hauteurImage-10, $largeurImage-10, $hauteurImage-10, $noir); 
    // on affiche le numéro des 12 mois 
    for ($mois=1; $mois<=12; $mois++) { 
        ImageString ($im, 0, $mois*30, $hauteurImage-10, $mois, $noir); 
    } 
 
    // on dessine un trait vertical pour représenter le nombre de visites 
    ImageLine ($im, 10, 10, 10, $hauteurImage-10, $noir); 
        // le nombre maximum de visites 
    $visitesMax = 1000; 
 
    // tracé des batons 
    for ($mois=1; $mois<=12; $mois++) { 
        $hauteurImageRectangle = round(($visites[$mois-1]*$hauteurImage)/$visitesMax); 
        ImageFilledRectangle ($im, $mois*30-7, $hauteurImage-$hauteurImageRectangle, $mois*30+7, $hauteurImage-10, $bleu); 
        ImageString ($im, 0, $mois*30-7, $hauteurImage-$hauteurImageRectangle-10, $visites[$mois-1], $noir); 
    } 
 
    // et c'est fini... 
    ImagePng ($im);  
?>
S'il ya quelqu'un qui peut m'apporter ces modifications j'en serai reconnaissant. Même une piste sera la bien venue.Je vous remercie d'avance.
opeo est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 02/03/2007, 12h17   #2
Membre éprouvé
 
Avatar de d-Rek
 
Développeur Web
Inscription : janvier 2007
Messages : 438
Détails du profil
Informations personnelles :
Localisation : France, Nord (Nord Pas de Calais)

Informations professionnelles :
Activité : Développeur Web

Informations forums :
Inscription : janvier 2007
Messages : 438
Points : 400
Points : 400
Il existe des scripts d'histogrammes 3D prêt à l'emploi..

Sinon à ta place, pour de la fausse 3D, je réfléchierai en calques comme sous Photoshop : commencer par les images de fond

J'espère que ça t'aura aider
d-Rek est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 02/03/2007, 14h12   #3
Membre à l'essai
 
Inscription : novembre 2005
Messages : 127
Détails du profil
Informations forums :
Inscription : novembre 2005
Messages : 127
Points : 21
Points : 21
Merci de ta réponse.Mais cela ne m'aide toujours pas.Si je pouvais avoir les prêt à l'emploi cela m'avancerai.Et ce qui concerne l'image de fond, je n'ai pas une idée de comment l'utiliser ici.
Merci encore.
opeo est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 18h54.


 
 
 
 
Partenaires

Hébergement Web