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

Symfony PHP Discussion :

Affichage des données dans une charte graphique


Sujet :

Symfony PHP

  1. #1
    Membre habitué
    Femme Profil pro
    Architecte de système d'information
    Inscrit en
    Février 2012
    Messages
    404
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations professionnelles :
    Activité : Architecte de système d'information
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Février 2012
    Messages : 404
    Points : 127
    Points
    127
    Par défaut Affichage des données dans une charte graphique
    Bonsoir,

    Je suis entrain d'afficher des charts graphiques avec des données dynamiques dans mon projet. J'ai fais des recherches sur google et je trouve le "highCharts".
    Donc j'ai l'intégré étape par étape dans mon projet.
    L'encadrant de ce projet a choisi le type de charte suivant : ICI

    En effet, Je cherche a créer un graphe statistique(barChart) avec les données suivantes:

    Nom : ww.png
Affichages : 523
Taille : 23,7 Ko

    Le code de ma vue:
    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
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
     
    <script type="text/javascript">
            $(function () {
                $('#container').highcharts({
                    chart: {
                        type: 'bar'
                    },
                    title: {
                        text: 'Graphe Conformité ISO 27002'
                    },
                    colors: [
                        '#eb0600',
                        '#ff7a09',
                        '#008b3a'
                    ],
                    xAxis: {
                        categories:
                         [
     
                             {% for st in stat %}
     
                                 '{{ st.prefixe }}.{{ st.nom_chapitre }}',
     
                             {% endfor %}
                         ],
                        title: {
                            text: null
                        }
                    },
                    yAxis: {
                        min: 0,
                        title: {
                            text: ' [0..4]',
                            align: 'high'
                        },
                        labels: {
                            overflow: 'justify'
                        },
                        tickInterval: 1000
                    },
                    tooltip: {
                        valueSuffix: '  Note'
                    },
                    plotOptions: {
                        bar: {
                            dataLabels: {
                                enabled: true
                            }
                        }
                    },
                    legend: {
                        layout: 'vertical',
                        align: 'right',
                        verticalAlign: 'top',
                        x: -40,
                        y: 80,
                        floating: true,
                        borderWidth: 1,
                        backgroundColor: ((Highcharts.theme && Highcharts.theme.legendBackgroundColor) || '#FFFFFF'),
                        shadow: true
                    },
                    credits: {
                        enabled: false
                    },
                    series:
                     [
                       //***ici le probléme***
                         {% set previous ="" %}
                         {% for note in stat %}
     
                         {% if note.noteChp in range(0, 0,99) or previous in range(0, 0,99) %}
     
                            {
                             name: 'Faible',
                             data: [ {{ note.noteChp|round(2,'floor') }} ]
                            },
                         {% set previous = note.noteChp|round(2,'floor') %}
     
                         {% elseif note.noteChp >=1 and  note.noteChp <= 1.99 or ( previous >=1 and  previous <= 1.99) %}
     
                             {
                             name: 'Moyen',
                             data: [ {{ note.noteChp|round(2,'floor') }} ]
                             },
                         {% set previous = note.noteChp|round(2,'floor') %}
                         {% else %}
     
                           {
                             name: 'haute',
                             data: [ {{ note.noteChp|round(2,'floor') }} ]
                           }
                         {% endif %}
     
                       {% endfor %}
     
                     ]
                });
            });
        </script>
    le probléme toujours proviens d’après la variable "data" de script car dans ce cas j'ai 2 variables (2 et 3) appartiennent au même intervalle v £ [2 ..4].

    Voilà ce que j'obtiens . Il n'affiche pas tous les données du tableau que j'ai montré en haut.

    Nom : qq.png
Affichages : 464
Taille : 10,7 Ko

    merci de m'aider pour avoir graphe complète ,

  2. #2
    Membre éprouvé
    Homme Profil pro
    Développeur Web
    Inscrit en
    Novembre 2013
    Messages
    739
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Novembre 2013
    Messages : 739
    Points : 1 022
    Points
    1 022
    Par défaut
    Bonjour,
    j'ai commencé par voir le lien Edit fiddle pour comprendre de quoi il s'agit.
    le " data " qui est peut etre la partie dynamique et responsable de générer les graphes etc ..
    data est un array javascript , alors je propose que tu le crée au début et tu insère la dedans une par une tes valeurs pour ensuite l'utiliser rempli .

    Ce code n'est qu'une proposition

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
    <script type="text/javascript">
            $(function () {
              var data =[];
                     {% for note in stat %}
                              data.push({{note }});
                     {% endfor %}
                $('#container').highcharts({
     ///
            series: [{
                name: //,
                data: data
    ///

Discussions similaires

  1. [AC-2010] Mise en forme de l'affichage des données dans une liste de choix déroulante
    Par Nephi dans le forum Requêtes et SQL.
    Réponses: 9
    Dernier message: 17/09/2010, 13h40
  2. Affichage des données dans une LISTE dans projet GWT
    Par sino100100 dans le forum GWT et Vaadin
    Réponses: 0
    Dernier message: 27/04/2009, 19h03
  3. affichage des donnes dans une datagridview
    Par daloul dans le forum VB.NET
    Réponses: 1
    Dernier message: 25/04/2008, 08h04
  4. limite de l'affichage des donnés dans une Bdgrid
    Par helmis dans le forum Bases de données
    Réponses: 3
    Dernier message: 19/07/2006, 09h15

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