IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Bibliothèques et frameworks PHP Discussion :

[Artichow] Créer un histogramme


Sujet :

Bibliothèques et frameworks PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Septembre 2007
    Messages
    20
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2007
    Messages : 20
    Par défaut [Artichow] Créer un histogramme
    Bonjour,

    J'ai des données que je souhaite représenter sous forme graphique. Ce serait la première fois que je fais ça en php et je ne sais pas bien comment m'y prendre...

    Mes données sont les suivantes : date et hits
    A chaque date correspond un nombre de hits. Je souhaite faire un graphique sous forme d'un histogramme (classique donc).

    Quelle est la meilleure façon de s'y prendre ? Existe-t-il des scripts préfaits efficaces (j'ai cherché et trouvé PHP/SWF Charts, apparemment génial, mais il ajoute un lien vers le site du script :-/) ?

    Pourriez-vous m'aiguiller un peu s'il vous plait ?

  2. #2
    Membre chevronné
    Homme Profil pro
    Lead Dev Web
    Inscrit en
    Avril 2005
    Messages
    282
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Lead Dev Web
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Avril 2005
    Messages : 282
    Par défaut
    Regarde du côté d' Artichow ou de JPGraph

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Septembre 2007
    Messages
    20
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2007
    Messages : 20
    Par défaut
    Merci pour ces pistes .

    J'ai regardé du côté d'Artichow mais je ne comprends pas commens dessiner un histogramme avec des dates en absices. J'ai posté un message dans le forum du site d'Artichow mais celui-ci ne semble pas très actif :-/.

    JPGraph n'a pas de forum d'aide, si :- ?

  4. #4
    Membre chevronné
    Homme Profil pro
    Lead Dev Web
    Inscrit en
    Avril 2005
    Messages
    282
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Lead Dev Web
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Avril 2005
    Messages : 282
    Par défaut
    Je te conseil de commencer en te basant sur les exemples données (tu peux cliquer sur les graphiques pour voir le code )

    Il y' a aussi les tutoriaux

    J'ai également fait un
    petit article de "découverte"
    . Si ça peut t'aider...

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Septembre 2007
    Messages
    20
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2007
    Messages : 20
    Par défaut
    Merci pour ces infos .

    J'ai fouillé pas mal mais je ne comprends toujours pas pourquoi ça ne marche pas :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    $req = mysql_query($sql) or die(mysql_error());
     $var1 = array();
    $var2 = array(); 
    $i = 0;
    while($sql_data = mysql_fetch_assoc($req)) {
    	$date = $sql_data['date'];
    	$hits = $sql_data['hits'];
    	$date = substr($date, 8, 2);
    	echo "$date $hits"; // affiche "27 10"
    	$var1[$i] = $date;
    	$var2[$i] = $hits; 
    	$i++;
    } 
     
    echo "<img src='toto.php?values=".urlencode(serialize($var1))."' alt='Mon graphique'/>";
    et toto.php :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    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
    <?php
     
       // On vérifie que les données à afficher sur le graphique existent
       if(isset($_GET['values']) === FALSE) {
          exit;
       }
     
       // On récupère les valeurs à afficher sur le graphique dans $_GET['values'] et on les désérialize
       $data = @unserialize($_GET['values']);
     
       // On vérifie que les données passées en GET sont correctes
       if(is_array($data) === FALSE) {
          exit;
       }
     
       require_once "charts/LinePlot.class.php";
     
       // On créé une courbe basique avec les données
       $plot = new LinePlot($data);
     
       // On créé le graphique et on y ajoute la courbe
       $graph = new Graph(400, 300);
       $graph->add($plot);
     
       // On affiche le graphique à l'écran
       $graph->draw();
     
    ?>
    Ca ne me donne rien, je ne vois pas pourquoi :- ?

  6. #6
    Membre chevronné
    Homme Profil pro
    Lead Dev Web
    Inscrit en
    Avril 2005
    Messages
    282
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Lead Dev Web
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Avril 2005
    Messages : 282
    Par défaut
    Alors aperrement tu crée $var1 et $var2.
    Cependant il te faut un tableau avec une structure comme ça plutot :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    $data= array ( 'date_1' => 'hit_1' , 
                              'date_2' => 'hit_2' , 
                              'date_3' => 'hit_3' , 
                              etc.... );
    Date_XX est mis en absisse et hit_XX en ordonnée.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Un soft pour créer des histogrammes en 3D ?
    Par byloute dans le forum Autres Logiciels
    Réponses: 3
    Dernier message: 07/02/2009, 05h26
  2. [Artichow] Réaliser un histogramme
    Par guigui69 dans le forum Bibliothèques et frameworks
    Réponses: 6
    Dernier message: 21/01/2009, 17h54
  3. [gnuplot] Créer un histogramme
    Par nina2007 dans le forum Autres Logiciels
    Réponses: 1
    Dernier message: 28/05/2008, 14h45
  4. [Artichow] Script pour créer un histogramme
    Par bcd_30 dans le forum Bibliothèques et frameworks
    Réponses: 3
    Dernier message: 25/09/2007, 19h15
  5. [Artichow] Créer une courbe
    Par faucon54 dans le forum Bibliothèques et frameworks
    Réponses: 3
    Dernier message: 29/05/2007, 00h54

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo