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 :

[JpGraph] Affichage courbe : JpGraph Error: 25068 A plot has an illegal scale


Sujet :

Bibliothèques et frameworks PHP

  1. #1
    Futur Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2018
    Messages
    29
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mars 2018
    Messages : 29
    Points : 9
    Points
    9
    Par défaut [JpGraph] Affichage courbe : JpGraph Error: 25068 A plot has an illegal scale
    Bonjour,
    Je débute en programmation et je souhaite réaliser une courbe de poids de personnes avec Jpgraph donc sur l'axe des X ce serait la date (pour tester j'ai mi juste 3 valauers A/B/C car je n'ai que 3 IMC)et sur l'axe des Y ce serait l'IMC..


    Par contre j'ai un message d'erreur qui s'affiche: JpGraph Error: 25068 A plot has an illegal scale. This could for example be that you are trying to use text auto scaling to draw a line plot with only one point or that the plot area is too small. It could also be that no input data value is numeric (perhaps only '-' or 'x')

    J'arrive à recueillir les données que je souhaite depuis ma base de données, mais pas à les transformer en courbe;

    Je vous donne mon code en espérant qu'une personne puisse m'aider!!
    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
    <?php // content="text/plain; charset=utf-8"
    require_once ('jpgraph/src/jpgraph.php');
    require_once ('jpgraph/src/jpgraph_line.php');
    try
    {
    	$bdd = new PDO('mysql:host=localhost;dbname=nutrition;charset=utf8', 'root', '');
    }
    catch(Exception $e)
    {
    		die('Erreur : '.$e->getMessage());
    }
     
     
     
    if(isset($_GET['patient'])) {
    	$infopatient=$bdd->query("SELECT * FROM (patient) WHERE id=".$_GET['patient']);
    		while($donnees=$infopatient->fetch())
    		{
    			$nom_du_patient=$donnees['nom'];
    			$prenom_du_patient=$donnees['prenom'];
    			$naissance_du_patient=$donnees['date_naissance'];
    			$imc=$donnees['imc'];			
     }
    	$datay1=0;
    	 $affichagePatient=$bdd->query("SELECT * FROM patient  WHERE nom IN ('".$nom_du_patient."') AND prenom IN ('".$prenom_du_patient."') AND date_naissance IN ('".$naissance_du_patient."') ORDER BY date ASC");
     
    		while($donneesPatient=$affichagePatient->fetch()){
    			$valeur=$donneesPatient['imc'];
    			$date=$donneespatient['date'];
                $dataY = $valeur;
                $dataX = $date;
    		}
    }
     
     
    // Setup the graph
    $graph = new Graph(800,650);
    $graph->SetScale("textlin");
     
    $theme_class=new UniversalTheme;
     
    $graph->SetTheme($theme_class);
    $graph->img->SetAntiAliasing(false);
    $graph->title->Set('Courbes');
    $graph->SetBox(false);
     
    $graph->img->SetAntiAliasing();
     
    $graph->yaxis->HideZeroLabel();
    $graph->yaxis->HideLine(true);
    $graph->yaxis->HideTicks(false,false);
     
    $graph->xgrid->Show();
    $graph->xgrid->SetLineStyle("solid");
    $graph->xaxis->SetTickLabels(array('A','B','C'));
    $graph->xgrid->SetColor('#E3E3E3');
     
    // Create the first line
    $p1 = new LinePlot($dataY);
    $graph->Add($p1);
    $p1->SetColor("#6495ED");
    $p1->SetLegend('IMC');
     
    $graph->legend->SetFrameWeight(1);
     
     
    // Output line
    $graph->Stroke();
     
    ?>

  2. #2
    Membre éclairé Avatar de ypcman
    Homme Profil pro
    Retraité codeur !
    Inscrit en
    Janvier 2011
    Messages
    595
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations professionnelles :
    Activité : Retraité codeur !
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Janvier 2011
    Messages : 595
    Points : 879
    Points
    879
    Par défaut
    Bonjour.
    new LinePlot() doit prendre un tableau de valeurs en entrée : array. Or tu lui fournis une valeur unique.
    je te conseille de déclarer $dataY comme un tableau avant de boucler puis d'y insérer les différentes valeurs avec Yves
    Participez vous aussi !
    Message utile
    Discussion résolue

  3. #3
    Futur Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2018
    Messages
    29
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mars 2018
    Messages : 29
    Points : 9
    Points
    9
    Par défaut
    Merci beaucoup pour la réponse.
    J'ai initialisé la variable $dataY sous la forme d'un tableau avant la boucle puis dans la boucle $dataY[] = $valeur.
    je pense que c'est sur la bonne voie mais j'ai un message d'erreur : L'image "......." ne peut pas être affichée car elle contient des erreurs.
    Peut être à cause de la date??

    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
    $dataY=array();
    	 $affichagePatient=$bdd->query("SELECT * FROM patient  WHERE nom IN ('".$nom_du_patient."') AND prenom IN ('".$prenom_du_patient."') AND date_naissance IN ('".$naissance_du_patient."') ORDER BY date ASC");
     
    		while($donneesPatient=$affichagePatient->fetch()){
    			$valeur=$donneesPatient['imc'];
    			$date=$donneespatient['date'];
                $dataY[] = $valeur;
                $dataX = $date;
    		}
    }
     
     
    // Setup the graph
    $graph = new Graph(800,650);
    $graph->SetScale("textlin");
     
    $theme_class=new UniversalTheme;
     
    $graph->SetTheme($theme_class);
    $graph->img->SetAntiAliasing(false);
    $graph->title->Set('Courbes');
    $graph->SetBox(false);
     
    $graph->img->SetAntiAliasing();
     
    $graph->yaxis->HideZeroLabel();
    $graph->yaxis->HideLine(true);
    $graph->yaxis->HideTicks(false,false);
     
    $graph->xgrid->Show();
    $graph->xgrid->SetLineStyle("solid");
    $graph->xaxis->SetTickLabels(array('A','B','C'));
    $graph->xgrid->SetColor('#E3E3E3');
     
    // Create the first line
    $p1 = new LinePlot($dataY);
    $graph->Add($p1);
    $p1->SetColor("#6495ED");
    $p1->SetLegend('IMC');
     
    $graph->legend->SetFrameWeight(1);
     
     
    // Output line
    $graph->Stroke();
     
    ?>

  4. #4
    Membre expert
    Avatar de Dendrite
    Femme Profil pro
    Développeuse informatique
    Inscrit en
    Juin 2008
    Messages
    2 129
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 58
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeuse informatique
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Juin 2008
    Messages : 2 129
    Points : 3 627
    Points
    3 627
    Billets dans le blog
    8
    Par défaut
    Pas TA date, mais TES dates... dataX, comme dataY, sera un tableau. Une courbe, c'est un tableau de x et un tableau de y. Donc rebelote.
    PDO, une soupe et au lit !
    Partir de la fin est un bon moyen de retrouver son chemin. Bibi - 2020

  5. #5
    Futur Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2018
    Messages
    29
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mars 2018
    Messages : 29
    Points : 9
    Points
    9
    Par défaut
    J'ai déclaré la variable date en dehors de la boucle:
    $dataY=array();
    $dataX=array();

    Puis déclaré dans la boucle :
    $dataY[] = $valeur;
    $dataX[] = $date;


    Mais je ne sais pas comment ni où indiquer la valeur de la date sur l'axe des abscisses

  6. #6
    Membre éclairé Avatar de ypcman
    Homme Profil pro
    Retraité codeur !
    Inscrit en
    Janvier 2011
    Messages
    595
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations professionnelles :
    Activité : Retraité codeur !
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Janvier 2011
    Messages : 595
    Points : 879
    Points
    879
    Par défaut
    le plus simple consiste à utiliser le type de graphe prévu pour afficher des dates 😊
    Tu as toutes les infos dans la doc : https://jpgraph.net/download/manuals...l/ch14s10.html
    Tu entreras les 2 tableaux de valeurs en arguments à la suite dans LinePlot
    Participez vous aussi !
    Message utile
    Discussion résolue

  7. #7
    Futur Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2018
    Messages
    29
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mars 2018
    Messages : 29
    Points : 9
    Points
    9
    Par défaut
    merci beaucoup pour votre aide!!!!!!!
    je vais lire la doc concernant la date.
    J'arrive à afficher les courbes si l'abscisse n'est pas dans un format date. Pour l'instant si j'essaye de le mettre au format date cela m'indique que le X contient des valeurs non numeriques.
    je vais lire la doc et si je bloque je posterai un nouveau message.
    En tout cas merci pour votre temps consacré et votre aide, cela m'a permis de bien avancer.

  8. #8
    Futur Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2018
    Messages
    29
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mars 2018
    Messages : 29
    Points : 9
    Points
    9
    Par défaut
    Bonsoir à tous,
    je reviens poster car je n'arrive pas à transformer mes dates en valeur numérique.
    j'ai un message qui m'indique qu'il y a des valeurs non numériques.
    Si je teste en remplaçant la date par une autre valeur de ma base de données (par exemple un âge), cela fonctionne.

    $date=$donneesPatient['date'];
    $date=$donneesPatient['age'];

    La date est au format datetime dans ma base de données.

    je pense que le problème est tout bête mais je bloque dessus!!!!

  9. #9
    Membre expert
    Avatar de Dendrite
    Femme Profil pro
    Développeuse informatique
    Inscrit en
    Juin 2008
    Messages
    2 129
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 58
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeuse informatique
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Juin 2008
    Messages : 2 129
    Points : 3 627
    Points
    3 627
    Billets dans le blog
    8
    Par défaut
    C'est une date que tu veux "2018-03-28" pas une datetime "2018-03-28 19:52:12"
    Je suppose qu'en plus, tu veux une date au format français ?
    Teste ceci dans ton PHPmyadmin en mettant quelqu'un qui est dans ta liste.

    Code SQL : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    SELECT date_format(`date`,"%d/%m/%Y") as `date`,imc 
    FROM patient  
    WHERE nom ="DUPONT"
    AND prenom ="Alain" 
    AND date_naissance = "2000-01-01"
    ORDER BY `date` ASC

    edit : attention, tu appelles ta date "date", or c'est un mot réservé en SQL. Tu aurais mieux fait de l'appeler "date_imc" ou alors... pense bien à ajouter les échappements `date`
    PDO, une soupe et au lit !
    Partir de la fin est un bon moyen de retrouver son chemin. Bibi - 2020

  10. #10
    Futur Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2018
    Messages
    29
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mars 2018
    Messages : 29
    Points : 9
    Points
    9
    Par défaut
    Citation Envoyé par Dendrite Voir le message
    C'est une date que tu veux "2018-03-28" pas une datetime "2018-03-28 19:52:12"
    Je suppose qu'en plus, tu veux une date au format français ?
    Teste ceci dans ton PHPmyadmin en mettant quelqu'un qui est dans ta liste.

    Code SQL : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    SELECT date_format(`date`,"%d/%m/%Y") as `date`,imc 
    FROM patient  
    WHERE nom ="DUPONT"
    AND prenom ="Alain" 
    AND date_naissance = "2000-01-01"
    ORDER BY `date` ASC

    edit : attention, tu appelles ta date "date", or c'est un mot réservé en SQL. Tu aurais mieux fait de l'appeler "date_imc" ou alors... pense bien à ajouter les échappements `date`
    en fait le datetime me convient dans la mesure où une pesée peut être faite 2 fois le même jour pour la même personne. je vais modifier la variable date alors et la remplacer par date_imc

  11. #11
    Membre expert
    Avatar de Dendrite
    Femme Profil pro
    Développeuse informatique
    Inscrit en
    Juin 2008
    Messages
    2 129
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 58
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeuse informatique
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Juin 2008
    Messages : 2 129
    Points : 3 627
    Points
    3 627
    Billets dans le blog
    8
    Par défaut
    OK.
    Montre-nous ton code à ce stade et rappelle-nous le message d'erreur ou ce qui ne fonctionne pas comme tu veux.
    Tu t'es bien inspiré de ceci, comme indiqué par ypcman ?

    https://jpgraph.net/download/manuals...l/ch14s10.html
    PDO, une soupe et au lit !
    Partir de la fin est un bon moyen de retrouver son chemin. Bibi - 2020

  12. #12
    Membre éclairé Avatar de ypcman
    Homme Profil pro
    Retraité codeur !
    Inscrit en
    Janvier 2011
    Messages
    595
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations professionnelles :
    Activité : Retraité codeur !
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Janvier 2011
    Messages : 595
    Points : 879
    Points
    879
    Par défaut
    As-tu bien mis datelin dans
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $graph->SetScale( 'datlin' );
    Les dates sont à fournir à LinePlot au format US. Tu peux verifier le format en faisant un var_dump du tableau qui contient tes données
    pour l'affichage au format français, tu peux utiliserSetDateFormat()
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $graph->xaxis->scale->SetDateFormat( 'H:i' );
    ou si tu veux plus personalisé, utilise fonction de callback. c'est aussi expliqué dans le lien que je t'ai fourni
    Participez vous aussi !
    Message utile
    Discussion résolue

  13. #13
    Futur Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2018
    Messages
    29
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mars 2018
    Messages : 29
    Points : 9
    Points
    9
    Par défaut
    Bonjour,
    désole encore pour ne pas être efficace!!
    Oui j'avais bien mis "datelin".
    Les dates sont au format Us avec l'année le mois et le jour. Si je fais un var_dump de $dataX, j'ai plusieurs données (ex:'2018-03-31');
    j'ai modifié le nom d'une colonne dans phmMyadmin: 'date' est devenue 'date_bilan' avec un format date et non plus date_time.

    J'ai essayé comme indiqué : $graph->xaxis->scale->SetDateFormat( 'H:i' ); à la place de $graph-> xaxis-> SetLabelFormatString ('M, Y', true);
    Mais j'ai le même message d'erreur: jpgraph error 25070. Either X or Y data arrays contains non-numeric values...



    Le code en entier:
    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
    <?php // content="text/plain; charset=utf-8"
    require_once ('jpgraph/src/jpgraph.php');
    require_once ('jpgraph/src/jpgraph_line.php');
    require_once ('jpgraph/src/jpgraph_date.php');
     
     
    try
    {
    	$bdd = new PDO('mysql:host=localhost;dbname=projet;charset=utf8', 'root', '');
    }
    catch(Exception $e)
    {
    		die('Erreur : '.$e->getMessage());
    }
     
     
     
    if(isset($_GET['patient'])) {
    	$infopatient=$bdd->query("SELECT * FROM (patient) WHERE id=".$_GET['patient']);
    		while($donnees=$infopatient->fetch())
    		{
    			$nom_du_patient=$donnees['nom'];
    			$prenom_du_patient=$donnees['prenom'];
    			$naissance_du_patient=$donnees['date_naissance'];
    			$imc=$donnees['imc'];			
     }
    	 $dataY=array();
    	 $dataX=array();
    	 $affichagePatient=$bdd->query("SELECT * FROM patient  WHERE nom IN ('".$nom_du_patient."') AND prenom IN('".$prenom_du_patient."') AND date_naissance IN ('".$naissance_du_patient."') ORDER BY date_bilan ASC");
     
    		while($donneesPatient=$affichagePatient->fetch()){
    			$valeur=$donneesPatient['imc'];
    			$date_imc=$donneesPatient['date_bilan'];
                $dataY[] = $valeur;
                $dataX[] = $date_imc;
     
    		}
    }
     
    // Setup the graph
    $graph = new Graph(800,650);
    $graph->SetScale("datlin");
     
     
     
    $theme_class=new UniversalTheme;
     
    $graph->SetTheme($theme_class);
    $graph->img->SetAntiAliasing(false);
    $graph->title->Set('Courbes');
    $graph->SetBox(false);
     
    $graph->img->SetAntiAliasing();
     
    $graph->yaxis->HideZeroLabel();
    $graph->yaxis->HideLine(true);
    $graph->yaxis->HideTicks(false,false);
     
    $graph->xgrid->Show();
    $graph->xgrid->SetLineStyle("solid");
    $graph->xaxis->SetTickLabels(array());
    $graph-> xaxis-> SetLabelFormatString ('M, Y', true);
    $graph->xgrid->SetColor('#E3E3E3');
     
    // Create the first line
    $p1 = new LinePlot($dataY,$dataX);
    $graph->Add($p1);
    $p1->SetColor("#6495ED");
    $p1->SetLegend('IMC');
     
    $graph->legend->SetFrameWeight(1);
     
     
    // Output line
    $graph->Stroke();
     
    ?>

  14. #14
    Membre éclairé Avatar de ypcman
    Homme Profil pro
    Retraité codeur !
    Inscrit en
    Janvier 2011
    Messages
    595
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations professionnelles :
    Activité : Retraité codeur !
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Janvier 2011
    Messages : 595
    Points : 879
    Points
    879
    Par défaut
    Peux-tu nous montrer les résultats des var_dump de $dataX et $dataY ?
    Participez vous aussi !
    Message utile
    Discussion résolue

  15. #15
    Futur Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2018
    Messages
    29
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mars 2018
    Messages : 29
    Points : 9
    Points
    9
    Par défaut
    var_dump de $dataX et $dataY:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    C:\wamp\www\tests\test\projet\courbes.php:39:
    array (size=3)
      0 => string '40' (length=2)
      1 => string '33' (length=2)
      2 => string '50' (length=2)
     
    C:\wamp\www\tests\test\projet\courbes.php:40:
    array (size=3)
      0 => string '2018-03-12' (length=10)
      1 => string '2018-03-12' (length=10)
      2 => string '2018-03-12' (length=10)
     
    JpGraph Error: 25070 Either X or Y data arrays contains non-numeric values. Check that the data is really specified as numeric data and not as strings. It is an error to specify data for example as '-2345.2' (using quotes).

  16. #16
    Membre éclairé Avatar de ypcman
    Homme Profil pro
    Retraité codeur !
    Inscrit en
    Janvier 2011
    Messages
    595
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations professionnelles :
    Activité : Retraité codeur !
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Janvier 2011
    Messages : 595
    Points : 879
    Points
    879
    Par défaut
    Essaye donc
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $dataX[] = date("Y-m-d",$date_imc);
    toutefois, n'est-ce pas étonnant que les 3 dates soient identiques : 2018-03-12 ?
    Participez vous aussi !
    Message utile
    Discussion résolue

  17. #17
    Membre expert
    Avatar de Dendrite
    Femme Profil pro
    Développeuse informatique
    Inscrit en
    Juin 2008
    Messages
    2 129
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 58
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeuse informatique
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Juin 2008
    Messages : 2 129
    Points : 3 627
    Points
    3 627
    Billets dans le blog
    8
    Par défaut
    et ça non, faut aussi modifier ?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $valeur=(int) $donneesPatient['imc'];
    PDO, une soupe et au lit !
    Partir de la fin est un bon moyen de retrouver son chemin. Bibi - 2020

  18. #18
    Futur Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2018
    Messages
    29
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mars 2018
    Messages : 29
    Points : 9
    Points
    9
    Par défaut
    Citation Envoyé par ypcman Voir le message
    Essaye donc
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $dataX[] = date("Y-m-d",$date_imc);
    toutefois, n'est-ce pas étonnant que les 3 dates soient identiques : 2018-03-12 ?
    Si je fais cette modification j'ai un message d'erreur:
    "A non well formed numeric value encountered"

    Oui c'est normal que les dates soient identiques car j'ai fait des tests le même jour (c'est pour cela qu'au début j'avais laissé datetime).

  19. #19
    Futur Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2018
    Messages
    29
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mars 2018
    Messages : 29
    Points : 9
    Points
    9
    Par défaut
    Citation Envoyé par Dendrite Voir le message
    et ça non, faut aussi modifier ?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $valeur=(int) $donneesPatient['imc'];
    je pense pas que ce soit cette donnée qui pose problème
    car si je modifie la donnée qui concerne la date (en la remplaçant par le poids par exemple) j'ai une courbe qui s'affiche


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    $valeur=$donneesPatient['imc'];
    $date_imc=$donneesPatient['poidsactuel'];
    $dataY[] = $valeur;
     $dataX[] = $date_imc;

  20. #20
    Membre éclairé Avatar de ypcman
    Homme Profil pro
    Retraité codeur !
    Inscrit en
    Janvier 2011
    Messages
    595
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations professionnelles :
    Activité : Retraité codeur !
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Janvier 2011
    Messages : 595
    Points : 879
    Points
    879
    Par défaut
    Je te propose de repartir de ce fichier minimal qui fonctionne :
    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 // content="text/plain; charset=utf-8"
    require_once ('jpgraph/jpgraph.php');
    require_once ('jpgraph/jpgraph_line.php');
    require_once ('jpgraph/jpgraph_date.php');
     
    $data = array(30,50,40);
    $xdata = array(2018-03-12,2018-03-13,2018-03-15);
     
    // Create the new graph
    $graph = new Graph(540,300);
     
    // Slightly larger than normal margins at the bottom to have room for
    // the x-axis labels
    $graph->SetMargin(40,40,30,130);
     
    // Fix the Y-scale to go between [0,100] and use date for the x-axis
    $graph->SetScale('datlin',0,100);
    $graph->title->Set("Example on Date scale");
     
    // Set the angle for the labels to 90 degrees
    $graph->xaxis->SetLabelAngle(90);
     
    $line = new LinePlot($data,$xdata);
    $line->SetLegend('Year 2005');
    $line->SetFillColor('lightblue@0.5');
    $graph->Add($line);
    $graph->Stroke();
    ?>
    Tu y ajoutes/remplaces ligne par ligne celle de ton fichier et tu verras bien où ça plante
    Participez vous aussi !
    Message utile
    Discussion résolue

+ Répondre à la discussion
Cette discussion est résolue.
Page 1 sur 2 12 DernièreDernière

Discussions similaires

  1. [JpGraph] Affichage courbe JPGRAPH avec données $_SESSION
    Par steven63 dans le forum Bibliothèques et frameworks
    Réponses: 4
    Dernier message: 14/11/2018, 16h14
  2. [JpGraph] Souci avec Radar Plot
    Par mbagiella dans le forum Bibliothèques et frameworks
    Réponses: 4
    Dernier message: 19/09/2011, 13h36
  3. Réponses: 1
    Dernier message: 17/11/2009, 16h40
  4. Réponses: 3
    Dernier message: 19/04/2007, 11h34
  5. [JpGraph] Error: HTTP headers have already been sent.
    Par haffouff dans le forum Bibliothèques et frameworks
    Réponses: 8
    Dernier message: 09/05/2006, 16h17

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