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 & Frameworks Discussion :

Graphique Charts js avec barre verticale


Sujet :

Bibliothèques & Frameworks

  1. #1
    Membre à l'essai
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Décembre 2017
    Messages
    34
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Mayenne (Pays de la Loire)

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Associations - ONG

    Informations forums :
    Inscription : Décembre 2017
    Messages : 34
    Points : 14
    Points
    14
    Par défaut Graphique Charts js avec barre verticale
    Bonjour à tous,

    Tout d'abord désoler si je ne suis pas dans la bonne section.

    J'utilise Chart.js pour faire des graphiques.

    J'ai un graphique avec trois séries de données ; minimum, moyenne et maximum et jusque là pas de soucis.

    voici le code :

    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
     
     
                    var ctx =document.getElementById('GraphPoids').getContext('2d');
     
    var myChart = new Chart(ctx,{
        type:'line',
        data:{
                labels:ArrLabelSaison,
                datasets:[{
                    label:"Poids minimum",
                    pointStyle:'line',
                    showLine : false,
                    radius:'10',
                    data:dataMin,
                    backgroundColor:'rgba(0,0,0,0)',
                    borderColor:'rgba(53,53,53,0.5)',
                    fill:false,
                    lineTension : 0
                },{
                    label:"Poids moyen",
                    pointStyle:'crossRot',
                    radius:'10',
                    data:dataMoy,
                    backgroundColor:'rgba(0,0,0,0)',
                    borderColor:'rgba(0,0,255,0.5)',
                    fill:false,
                    lineTension : 0
                },{
                    label:"Poids maximun",
                    pointStyle:'line',
                    showLine : false,
                    radius:'10',
                    data:dataMax,
                    backgroundColor:'rgba(0,0,0,0)',
                    borderColor:'rgba(26,188,156,0.5)',
                    fill:false,
                    lineTension : 0
     
     
                }
     
                ]
            },
        options:{
     
                responsive: true,
                title: {
                        display: true,
                        text: 'Evolution du poids'
                        },
                tooltips: {
                            mode: 'index'
                            },
                scales: {
                            xAxes: [{
                                        display: true,
                                        scaleLabel: {
                                                        display: true
                                                    }
                                    }],
                            yAxes: [{
                                        display: true,
                                        scaleLabel: {
                                                        display: true,
                                                        labelString: 'Poids en kg'
                                                    },
                                        //ticks: {
                                                    //suggestedMin: -10,
                                                    //suggestedMax: 200,
                                                //}
                                    }]
                        },
                legend : {
                            display : true
                        },
     
     
                }
    });
    Maintenant j'aimerai pouvoir relier les points minimum et maximum par une barre verticale mais je ne trouve pas de solution.
    Si quelqu'un peut me donner un coup de main, je suis preneur.
    Merci à tous et bon courage !

  2. #2
    Modérateur

    Avatar de NoSmoking
    Homme Profil pro
    Inscrit en
    Janvier 2011
    Messages
    16 955
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations forums :
    Inscription : Janvier 2011
    Messages : 16 955
    Points : 44 103
    Points
    44 103
    Par défaut
    Bonjour,
    ChartJS et simple mais pas très configurable, cependant tu peux regarder du côté du plugin : Chart.js Error Bars qui devrait te permettre de faire ce que tu souhiates.

  3. #3
    Membre à l'essai
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Décembre 2017
    Messages
    34
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Mayenne (Pays de la Loire)

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Associations - ONG

    Informations forums :
    Inscription : Décembre 2017
    Messages : 34
    Points : 14
    Points
    14
    Par défaut
    Ok je vais regardé ça et je vous tiens au courant. Je n'ai jamais utilisé de plugin mais je vais essayer d'en trouver le fonctionnement.
    Encore merci pour votre réactivité !

  4. #4
    Membre à l'essai
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Décembre 2017
    Messages
    34
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Mayenne (Pays de la Loire)

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Associations - ONG

    Informations forums :
    Inscription : Décembre 2017
    Messages : 34
    Points : 14
    Points
    14
    Par défaut
    Bonjour,
    Le plugin Chart.js Error Bars semble correspondre à mes attentes. Mais après plusieurs essais je n'arrive pas à l'utiliser ce plugin. Est ce que quelqu'un pourrait m'expliquer la démarche à suivre pour incorporer ce plugin à ma page ?
    Merci à vous tous.

  5. #5
    Expert confirmé Avatar de Toufik83
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Janvier 2012
    Messages
    2 405
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : Suisse

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Janvier 2012
    Messages : 2 405
    Points : 4 841
    Points
    4 841
    Par défaut
    Bonjour,

    Voilà un exemple en ligne avec les errorBars, c'est l'option errorBars de chaque item de datasets qu'il faut intégrer.

  6. #6
    Membre à l'essai
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Décembre 2017
    Messages
    34
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Mayenne (Pays de la Loire)

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Associations - ONG

    Informations forums :
    Inscription : Décembre 2017
    Messages : 34
    Points : 14
    Points
    14
    Par défaut
    Mon problème est plutôt d’intégrer le plugin à mon script pas trop dans son utilisation ensuite.

  7. #7
    Expert confirmé Avatar de Toufik83
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Janvier 2012
    Messages
    2 405
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : Suisse

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Janvier 2012
    Messages : 2 405
    Points : 4 841
    Points
    4 841
    Par défaut
    Bonjour,

    Dans l'exemple que je t'ai montré, clic sur "Settings" en haut a droite puis va sur l'onglet "JS", tu verras qu'il y'a des fichiers externes importés https://unpkg.com/chart.js/dist/Chart.bundle.js et https://unpkg.com/chartjs-plugin-error-bars@1.2.2.

    Le premier lien est Chartjs et le deuxième est Chartjs-error-bars.

    Copies ces deux liens et tu les ajoutes dans <head> de ta page html :
    Code html : 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
     
    <!DOCTYPE html>
    <html lang="fr">
    <head>
       <meta charset="utf-8" />
        <title>Chartjs Exemple</title>
       <script src="https://unpkg.com/chart.js/dist/Chart.bundle.js"></script>
       <script src="https://unpkg.com/chartjs-plugin-error-bars@1.2.2"></script> 
    </head>
    <body>
       <canvas id="canvas"></canvas>
        <script>
           <!-- et ici tu mets le code de Chartjs -->
        </script>
    </body>
    </html>

  8. #8
    Membre à l'essai
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Décembre 2017
    Messages
    34
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Mayenne (Pays de la Loire)

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Associations - ONG

    Informations forums :
    Inscription : Décembre 2017
    Messages : 34
    Points : 14
    Points
    14
    Par défaut
    C'est top ! Merci pour ta réponse.
    Je m'empresse d'essayer et je vous tiens au courant.

  9. #9
    Modérateur

    Avatar de NoSmoking
    Homme Profil pro
    Inscrit en
    Janvier 2011
    Messages
    16 955
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations forums :
    Inscription : Janvier 2011
    Messages : 16 955
    Points : 44 103
    Points
    44 103
    Par défaut
    Il existe donc au moins deux plugins pour faire cela, ce n'est pas celui qu'a présenté Toufik83 que j'avais repéré.

    Celui de datavisyn diffère quand même pas mal sur la présentation des données que je trouve plus parlante sur celui de sgratzl.
    sgratzl :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
          datasets: [{
            data: [{},{
                y: 4,
                yMin: 3,
                yMax: 5,
              },
    datavisyn :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
      data: {
        labels: ['January', 'February', 'March', 'April', 'May', 'June', 'July'],
        datasets: [{
          ...
          errorBars: {
            'February': {plus: 15, minus: -34},
            'March': {plus: 5, minus: -24},
            'May': {plus: 35, minus: -14},
            'June': {plus: 45, minus: -4}
          }, ...
    mais bon c'est une affaire de goût et cela ne préjuge pas du reste des possibilités offertes.

  10. #10
    Membre à l'essai
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Décembre 2017
    Messages
    34
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Mayenne (Pays de la Loire)

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Associations - ONG

    Informations forums :
    Inscription : Décembre 2017
    Messages : 34
    Points : 14
    Points
    14
    Par défaut
    Voilà mon retour d'expérience comme promis.

    J'ai utilisé chartjs-chart-error-bars de sgratzl.

    Je vous joint une image du graph :

    Nom : graph.png
Affichages : 408
Taille : 29,0 Ko

    C'est plutôt déjà pas mal mais on en veut toujours plus !

    J'aurai aimer savoir si je peux styliser la barre verticale et afficher dans la légende que les bornes représentent le poids minimum et maximum.

    En tout cas merci pour votre aide.

  11. #11
    Modérateur

    Avatar de NoSmoking
    Homme Profil pro
    Inscrit en
    Janvier 2011
    Messages
    16 955
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations forums :
    Inscription : Janvier 2011
    Messages : 16 955
    Points : 44 103
    Points
    44 103
    Par défaut
    J'ai utilisé chartjs-chart-error-bars de sgratzl.
    Cela m'a l'air d'être un bon choix


    J'aurai aimer savoir si je peux styliser la barre verticale ...
    tu as des propriétés mises à disposition qui te permettent de modifier l'aspect mais c'est assez limité.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
      var defaults = {
      errorBarLineWidth: [[1, 3]],
      errorBarColor: [['#2c2c2c', '#1f1f1f']],
     
      errorBarWhiskerLineWidth: [[1, 3]],
      errorBarWhiskerRatio: [[0.2, 0.25]],
      errorBarWhiskerSize: [[20, 24]],
      errorBarWhiskerColor: [['#2c2c2c', '#1f1f1f']],
    };

    ... et afficher dans la légende que les bornes représentent le poids minimum et maximum.
    La légende ne fait apparaître que les séries prises en compte et rien de plus.

Discussions similaires

  1. Problème avec barre verticale (évalué en)
    Par JoFloSa dans le forum Débuter
    Réponses: 4
    Dernier message: 09/01/2018, 17h44
  2. Réponses: 2
    Dernier message: 24/02/2011, 09h23
  3. Onglet avec Barre de défilement verticale
    Par BRUNO71 dans le forum VBA Access
    Réponses: 4
    Dernier message: 21/05/2008, 21h38
  4. Label avec barre de défilement verticale
    Par BMT_Benoît dans le forum Windows Forms
    Réponses: 10
    Dernier message: 13/08/2007, 12h08
  5. [VBA-E] barre verticale dans un graphique
    Par Igloobel dans le forum Macros et VBA Excel
    Réponses: 15
    Dernier message: 02/02/2006, 22h33

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