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

Langage PHP Discussion :

graph à partir d'un tableau php


Sujet :

Langage PHP

  1. #1
    Nouveau Candidat au Club
    Homme Profil pro
    Développeur Web
    Inscrit en
    mars 2021
    Messages
    10
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : mars 2021
    Messages : 10
    Points : 0
    Points
    0
    Par défaut graph à partir d'un tableau php
    Bonjour, je dois dessiner un graphique sous forme d'image générée en PHP. J'ai a ma disposition une classe Image, et je dois modifier la classe enfant Graph qui permet de créer la représentation graphique d'un ensemble de point que nous lui communiquerons. Pour se faire il faut faire la méthode addVals($tabs).
    L'image est générée via le fichier graph.img.php, dans lequel on instancie le Graph et on renseigne les point dans un tableau pour la méthode addVals.
    Je dois faire la méthode addVals. J'ai fait ceci mais ça ne fonctionne pas :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    public function addVals($tabs)
    	{
    		for ($i=0; $i <= 3; $i++) { 
    			$vals = array($i*100, $tabs[$i], ($i+1)*100, $tabs[$i+1]);
    		}
     
    		return $vals;
    	}
    merci de votre aide

  2. #2
    Expert confirmé Avatar de Séb.
    Profil pro
    Inscrit en
    mars 2005
    Messages
    3 742
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France

    Informations professionnelles :
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : mars 2005
    Messages : 3 742
    Points : 5 157
    Points
    5 157
    Par défaut
    Tu ne dis pas quelle données tu as en entrée, et quelles données tu dois obtenir en sortie. Ce sera donc difficile de t'aider précisément.

    Je peux déjà te dire que ta metahod addVals() est incohérente, voir les commentaires :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    public function addVals($tabs) // Que contient $tabs ?
    {
        for ($i = 0; $i <= 3; $i++) { // $tabs a toujours seulement 4 éléments ?
            $vals = array($i * 100, $tabs[$i], ($i + 1) * 100, $tabs[$i + 1]); // Tu écrases le contenu de $vals à chaque tour de boucle
            // Au final $vals vaudra la dernière itération
            // Au dernier tour de boucle $i vaut 3, tu accèdes à $tabs[4] (un 5e élément), normal ?
        }
        return $vals; // Qu'est censé contenir $vals ?
    }
    Un problème exposé clairement est déjà à moitié résolu
    Keep It Smart and Simple

  3. #3
    Nouveau Candidat au Club
    Homme Profil pro
    Développeur Web
    Inscrit en
    mars 2021
    Messages
    10
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : mars 2021
    Messages : 10
    Points : 0
    Points
    0
    Par défaut
    Merci pour ta réponse, effectivement je me suis bien planté... $tabs contient $tab(21, 42, 35, 0). je suis censé obtenir un graph à partir de ces points (chaque point est relié par une ligne) : Nom : graph.PNG
Affichages : 50
Taille : 11,3 Ko

  4. #4
    Expert éminent sénior
    Avatar de mathieu
    Profil pro
    Inscrit en
    juin 2003
    Messages
    8 421
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : juin 2003
    Messages : 8 421
    Points : 13 053
    Points
    13 053
    Par défaut
    en ce moment, il y a plusieurs bibliothèques javascript qui sont pratiques à utiliser :
    https://www.chartjs.org/docs/latest/...line/line.html

  5. #5
    Nouveau Candidat au Club
    Homme Profil pro
    Développeur Web
    Inscrit en
    mars 2021
    Messages
    10
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : mars 2021
    Messages : 10
    Points : 0
    Points
    0
    Par défaut
    Je ne dois utiliser que du php

  6. #6
    Expert confirmé Avatar de Séb.
    Profil pro
    Inscrit en
    mars 2005
    Messages
    3 742
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France

    Informations professionnelles :
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : mars 2005
    Messages : 3 742
    Points : 5 157
    Points
    5 157
    Par défaut
    On n'a pas eu les précisions demandées plus haut
    Un problème exposé clairement est déjà à moitié résolu
    Keep It Smart and Simple

  7. #7
    Nouveau Candidat au Club
    Homme Profil pro
    Développeur Web
    Inscrit en
    mars 2021
    Messages
    10
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : mars 2021
    Messages : 10
    Points : 0
    Points
    0
    Par défaut
    Alors en entrée j'ai ca :Nom : graph.PNG
Affichages : 31
Taille : 60,4 Ko

    et en sortie ça doit afficher le graph rouge (la photo d'un précédent message).

    J'ai ça à completer :
    Nom : code.PNG
Affichages : 31
Taille : 57,6 Ko

  8. #8
    Membre actif
    Homme Profil pro
    Webmaster - Développeur/intégrateur web
    Inscrit en
    septembre 2011
    Messages
    202
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Jura (Franche Comté)

    Informations professionnelles :
    Activité : Webmaster - Développeur/intégrateur web
    Secteur : Conseil

    Informations forums :
    Inscription : septembre 2011
    Messages : 202
    Points : 233
    Points
    233
    Par défaut
    ça ne fonctionne pas
    C'est à dire ? qu'est ce qui se produit à l’exécution du code ?
    - une erreur fatale ?
    - l'image n'est pas générée ?
    - l'image est générée mais le résultat n'est pas cohérent avec le résultat attendu ?

    Merci
    Si vous avez besoin d'une librairie permettant de gérer facilement les fichiers et les dossiers en PHP... ou si vous êtes juste curieux(se) :
    https://github.com/moDevsome/moFilesManager

    N'hésitez pas à me faire un retour

  9. #9
    Nouveau Candidat au Club
    Homme Profil pro
    Développeur Web
    Inscrit en
    mars 2021
    Messages
    10
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : mars 2021
    Messages : 10
    Points : 0
    Points
    0
    Par défaut
    Voici ce que j'obtiens :Nom : Capture.PNG
Affichages : 26
Taille : 74,2 Ko

  10. #10
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    mars 2002
    Messages
    38 942
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 71
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : mars 2002
    Messages : 38 942
    Points : 65 315
    Points
    65 315
    Billets dans le blog
    1
    Ma page Developpez - Mon Blog Developpez
    Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
    Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
    Votre post est résolu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de Développez !

    réalisations :www.oxygen-translations.fr|www.saftair.fr| www.ouestisol.fr | www.sistac-alizay.fr | www.acoustishop.fr | www.litt.fr | www.ouestventil.fr
    Humour

  11. #11
    Nouveau Candidat au Club
    Homme Profil pro
    Développeur Web
    Inscrit en
    mars 2021
    Messages
    10
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : mars 2021
    Messages : 10
    Points : 0
    Points
    0
    Par défaut
    Merci mais je ne dois pas utiliser de bdd. Je pense que la méthode a implémenter est plutôt simple mais je passe à côté de la logique..

  12. #12
    Nouveau Candidat au Club
    Homme Profil pro
    Développeur Web
    Inscrit en
    mars 2021
    Messages
    10
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : mars 2021
    Messages : 10
    Points : 0
    Points
    0
    Par défaut
    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
     
    public function addVals($tabs)
    	{
    		$i=0;
    		foreach ($tabs as $value) {
    			$result[$i] = $value[$i];
    			$i++;
    		}
    		return $result;
    	}
     
    	/**
    	 * Définit les valeurs du graph
    	 * @param array $tabs tableau de valeur
    	 */
    	public function afficher() {
     
    		/** --------------EXEMPLE-------------- **/
     
     
    		// Définition des couleurs
    		$this->ajouterCouleur(255,0,0,	'rouge');
    		$this->ajouterCouleur(0,0,0,	'noir');
     
    		// On trace les traits
    		$j=0;
    		for ($i=0; $i < count($result); $i++) { 
    			//taille du graph = 500, 500. Divisé par 4(4 valeurs du tableau) = 125
    			$this->tracerTrait($j*125, $result[$i], $j*125, $result[$i], 'rouge');
    			$j++;
    		}
    J'en suis arrivé à quelque chose comme ça, je n'ai pas de message d'erreur mais mon graph fond gris avec l'abscisse et l'ordonné disparait pour laisser place à un tout petit blanc aux contours noirs.

Discussions similaires

  1. [XL-2003] créeation d'un graphe à partir d'un tableau
    Par thierry_b dans le forum Excel
    Réponses: 1
    Dernier message: 29/06/2009, 11h26
  2. Graphe à partir d'un tableau
    Par zhpipo16 dans le forum LabVIEW
    Réponses: 8
    Dernier message: 27/05/2008, 21h30
  3. [MySQL] Modifier un champ d'une bdd à partir d'un tableau php
    Par pepone44 dans le forum PHP & Base de données
    Réponses: 3
    Dernier message: 26/05/2008, 11h12
  4. Réponses: 11
    Dernier message: 11/03/2008, 09h35
  5. Réponses: 1
    Dernier message: 26/08/2007, 22h21

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