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 :

Animation dynamique graphique linéaire basé sur 3 index (x) indépendants qui se recharge en 10min [Chart.js]


Sujet :

Bibliothèques & Frameworks

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre du Club
    Homme Profil pro
    Apprenti webmaster
    Inscrit en
    Novembre 2019
    Messages
    8
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Tarn et Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Apprenti webmaster

    Informations forums :
    Inscription : Novembre 2019
    Messages : 8
    Par défaut Animation dynamique graphique linéaire basé sur 3 index (x) indépendants qui se recharge en 10min
    Je débute mon apprentissage du Javascript en autodidactie et j'ai de nouvelles questions.
    J'ai un graphique à faire (exemple en piece jointe), il s'agit d'un linéaire doté de 3 index (x) indépendants doté d'une seul valeur chacun qui se recharge dynamiquement toutes les 10 min en random si possible. Je ne souhaite pas l'effet de défilement en créant et supprimant les index, les courbe des 3 index doivent fluctuer sur place. Pourriez vous me conseiller car la je suis légèrement perdu.

    Merci d'avance

    Ps: même avec la doc je galère...
    Images attachées Images attachées  

  2. #2
    Modérateur

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

    Informations forums :
    Inscription : Janvier 2011
    Messages : 17 211
    Par défaut
    Bonjour,
    j'ai fourni il y à peu une contribution qui présente, entre autres, une fonctionnalité d'update des données qui semble correspondre à ce que tu cherches.

    Ci dessous les fonctions concernées :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    function getRandomDatas() {
      const min = 15;
      const max = 100;
      const nbr = 12;
      const datas = [];
      for (let i = 0; i < nbr; i += 1) {
        datas.push(Math.floor(Math.random() * (max - min)) + min);
      }
      return datas;
    }
    function updateDatas(){
      oChart.data.datasets[0].data = getRandomDatas();
      oChart.update();
    }
    elles font parties de l'exemple suivant :
    <canvas> Download & print image.

    Ouvre le fichier et appui sur l'icône pour voir ce que font ces fonctions.

  3. #3
    Membre du Club
    Homme Profil pro
    Apprenti webmaster
    Inscrit en
    Novembre 2019
    Messages
    8
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Tarn et Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Apprenti webmaster

    Informations forums :
    Inscription : Novembre 2019
    Messages : 8
    Par défaut suite projet chart.js
    Pour l'instant j'ai réussi à bricolé ça mais je crois qu' il me manque des index dans le graph car il s'agit de 3 donnée indépendante qui represente les 3 courbes qui se recharge dynamiquement toute les 10mins. (temps de rafraîchissement inférieur dans la pièce-jointe juste pour voir ce que ça donne mon animation.)
    Ensuite je voulais savoir s'il y a une possibilité de choisir un écart type pour les données insérer en "random"? (je souhaite faire osciller mes valeurs sur une plage definie)
    Je vous montre ou j'en suis pour l'instant.
    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
    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
    <!doctype html>
    <html>
    <head>
        <meta name="viewport" content="width=device-width, initial-scale=1">
        <script src="https://cdnjs.cloudflare.com/ajax/libs/Chart.js/1.0.2/Chart.min.js"></script>
    </head>
    <body>
        <div style="width: 50%">
            <canvas id="canvas">
    		</canvas>
        </div>
        <script>
            var dData = function() {
                return Math.round(Math.random() * 1500) + 10
            };
            var lineChartData = {
                labels: ["", "", ""],
                datasets: [{
                    fillColor: "#47c1bf",
                    strokeColor: "#47c1bf",
                    data: [dData(), dData(), dData()]
                }]
            }
            var index = 3;
            var ctx = document.getElementById("canvas").getContext("2d");
            var lineChartDemo = new Chart(ctx).Line(lineChartData, {
                responsive: true,
                pointDotRadius: 1,
                bezierCurve: true,
                barValueSpacing: 1,
                scaleShowVerticalLines: false,
                scaleGridLineColor: 'none'
            });
            setInterval(function() {
                lineChartDemo.addData([dData()], "");
                lineChartDemo.removeData([dData()], "" + index);
                index++;
            }, 3000);
        </script>
    </body>
    </html>

  4. #4
    Modérateur

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

    Informations forums :
    Inscription : Janvier 2011
    Messages : 17 211
    Par défaut
    Visiblement tu n'as pas choisi le bon type de représentation graphique, d'après ton image j'opterais plutôt pour une Char "type": "bar".

    Ensuite je voulais savoir s'il y a une possibilité de choisir un écart type pour les données insérer en "random"?
    C'est ce que fait la fonction que je t'ai mis
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    function getRandomDatas() {
      const min = 15;    // valeur mini souhaitée
      const max = 100;   // valeur maxi souhaitée
      const nbr = 12;    // nombre de valeur en retour
      const datas = [];  // l'Array retourné
      for (let i = 0; i < nbr; i += 1) {
        datas.push(Math.floor(Math.random() * (max - min)) + min);
      }
      return datas;
    }

  5. #5
    Membre du Club
    Homme Profil pro
    Apprenti webmaster
    Inscrit en
    Novembre 2019
    Messages
    8
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Tarn et Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Apprenti webmaster

    Informations forums :
    Inscription : Novembre 2019
    Messages : 8
    Par défaut suite projet chart.js
    Merci pour le coup de main,
    Voici l'exemple de graph une fois déployé que je souhaite essayer de faire en dynamique.
    Chaque courbe est indépendante de sa voisine, mais les 3 se recharge en même temps (10mins).
    Images attachées Images attachées  

  6. #6
    Membre du Club
    Homme Profil pro
    Apprenti webmaster
    Inscrit en
    Novembre 2019
    Messages
    8
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Tarn et Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Apprenti webmaster

    Informations forums :
    Inscription : Novembre 2019
    Messages : 8
    Par défaut suite projet chart.js
    Bonjour, je suis toujours bloqué pour mon graphique si quelqu'un à la solution...

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

Discussions similaires

  1. Graphique basé sur 2 tableaux croisés dynamiques
    Par lolmaroc dans le forum Excel
    Réponses: 1
    Dernier message: 26/02/2019, 12h48
  2. [CR XI] graphique basé sur un tableau croisé
    Par kikidrome dans le forum SAP Crystal Reports
    Réponses: 3
    Dernier message: 27/03/2008, 11h26
  3. Réponses: 1
    Dernier message: 08/03/2008, 17h25
  4. [plot] Modifier dynamiquement les valeurs tracées sur un graphique
    Par mr_samurai dans le forum Interfaces Graphiques
    Réponses: 4
    Dernier message: 19/02/2008, 15h37
  5. Réponses: 2
    Dernier message: 07/10/2007, 16h59

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