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 :

[GD] Création d'un graphique


Sujet :

Bibliothèques et frameworks PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre très actif
    Inscrit en
    Février 2008
    Messages
    475
    Détails du profil
    Informations forums :
    Inscription : Février 2008
    Messages : 475
    Par défaut [GD] Création d'un graphique
    bonjour mes amis jai ce script pour dessiner un chart

    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
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    <?
    	# ------- The graph values in the form of associative array
    	$values=array(
    		"Jan" => 110,
    		"Feb" => 130,
    		"Mar" => 215,
    		"Apr" => 81,
    		"May" => 310,
    		"Jun" => 110,
    		"Jul" => 190,
    		"Aug" => 175,
    		"Sep" => 390,
    		"Oct" => 286,
    		"Nov" => 150,
    		"Dec" => 196
    	);
     
     
    	$img_width=450;
    	$img_height=300; 
    	$margins=20;
     
     
    	# ---- Find the size of graph by substracting the size of borders
    	$graph_width=$img_width - $margins * 2;
    	$graph_height=$img_height - $margins * 2; 
    	$img=imagecreate($img_width,$img_height);
     
     
    	$bar_width=20;
    	$total_bars=count($values);
    	$gap= ($graph_width- $total_bars * $bar_width ) / ($total_bars +1);
     
     
    	# -------  Define Colors ----------------
    	$bar_color=imagecolorallocate($img,0,64,128);
    	$background_color=imagecolorallocate($img,240,240,255);
    	$border_color=imagecolorallocate($img,200,200,200);
    	$line_color=imagecolorallocate($img,220,220,220);
     
    	# ------ Create the border around the graph ------
     
    	imagefilledrectangle($img,1,1,$img_width-2,$img_height-2,$border_color);
    	imagefilledrectangle($img,$margins,$margins,$img_width-1-$margins,$img_height-1-$margins,$background_color);
     
     
    	# ------- Max value is required to adjust the scale	-------
    	$max_value=max($values);
    	$ratio= $graph_height/$max_value;
     
     
    	# -------- Create scale and draw horizontal lines  --------
    	$horizontal_lines=20;
    	$horizontal_gap=$graph_height/$horizontal_lines;
     
    	for($i=1;$i<=$horizontal_lines;$i++){
    		$y=$img_height - $margins - $horizontal_gap * $i ;
    		imageline($img,$margins,$y,$img_width-$margins,$y,$line_color);
    		$v=intval($horizontal_gap * $i /$ratio);
    		imagestring($img,0,5,$y-5,$v,$bar_color);
     
    	}
     
     
    	# ----------- Draw the bars here ------
    	for($i=0;$i< $total_bars; $i++){ 
    		# ------ Extract key and value pair from the current pointer position
    		list($key,$value)=each($values); 
    		$x1= $margins + $gap + $i * ($gap+$bar_width) ;
    		$x2= $x1 + $bar_width; 
    		$y1=$margins +$graph_height- intval($value * $ratio) ;
    		$y2=$img_height-$margins;
    		imagestring($img,0,$x1+3,$y1-10,$value,$bar_color);
    		imagestring($img,0,$x1+3,$img_height-15,$key,$bar_color);		
    		imagefilledrectangle($img,$x1,$y1,$x2,$y2,$bar_color);
    	}
    	header("Content-type:image/png");
    	imagepng($img);
     
    ?>
    j'ai ce message d'erreur

    Fatal error: Call to undefined function: imagecreate() in c:\program files\easyphp1-8\www\graph.php on line 27

    je ne sais pas comment le corriger

  2. #2
    Membre Expert Avatar de Madfrix
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    2 326
    Détails du profil
    Informations personnelles :
    Localisation : France, Gironde (Aquitaine)

    Informations forums :
    Inscription : Juin 2007
    Messages : 2 326
    Par défaut
    C'est simple, ta fonction imagecreate() n'est pas définie dans ton code et tu ne fais pas d'include de fichiers donc elle n'est pas trouvée. Localise le fichier dans lequel cette fonction est définie puis inclue le via un include ou require

  3. #3
    Membre expérimenté

    Profil pro
    Inscrit en
    Juin 2002
    Messages
    6 152
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2002
    Messages : 6 152
    Par défaut
    Il faut activer l'extension gd(2) dans votre environnement.

Discussions similaires

  1. Création d'interfaces graphiques en mode graphique
    Par Djakisback dans le forum Interfaces Graphiques en Java
    Réponses: 7
    Dernier message: 24/03/2006, 21h46
  2. Création d'interface graphique pour débutant ...
    Par lesuisse dans le forum AWT/Swing
    Réponses: 3
    Dernier message: 08/03/2006, 13h20
  3. création de deux graphiques à la fois
    Par Makino dans le forum Tkinter
    Réponses: 2
    Dernier message: 06/03/2006, 16h48
  4. Création de composants graphiques perso Visual C++
    Par jacques_henry dans le forum MFC
    Réponses: 1
    Dernier message: 06/01/2006, 11h40
  5. Réponses: 2
    Dernier message: 29/03/2004, 18h29

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