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

BIRT Discussion :

Fixer les couleurs d'une légende en fonction de la valeur


Sujet :

BIRT

  1. #1
    Membre habitué Avatar de Juwan
    Femme Profil pro
    Data manager
    Inscrit en
    Avril 2011
    Messages
    172
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations professionnelles :
    Activité : Data manager
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2011
    Messages : 172
    Points : 137
    Points
    137
    Par défaut Fixer les couleurs d'une légende en fonction de la valeur
    Bonjour à tous,

    j'ai une difficulté pour la création de graphiques. Je m'explique : j'ai plusieurs pie chart qui représentent l'avancement (prévisionnel, en cours, terminé) des actions menées sur des territoires (un pie chart par territoire).

    Le problème est le suivant : il y a une couleur par avancement (rouge, orange, vert). J'ai beau fixer la valeur de la serie palette par pie chart, comme il n'y a pas toujours tous les niveaux par pie chart, les couleurs des portions varient entre les pie charts..... un coup c'est le niveau prévisionnel qui est en vert, un coup c'est le niveau en cours... cela dépend des données.

    Ca me pose un gros problème au niveau de la compréhension car cela oblige l'utilisateur à consulter la légende pour chaque pie chart.

    Comment faire pour fixer les couleurs de portions et de la légende en fonction de la valeur de l'avancement ?

    Merci pour vos suggestions

  2. #2
    Membre éclairé
    Homme Profil pro
    Consultant en Business Intelligence
    Inscrit en
    Mai 2009
    Messages
    529
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Consultant en Business Intelligence

    Informations forums :
    Inscription : Mai 2009
    Messages : 529
    Points : 836
    Points
    836
    Par défaut
    J'ai vu passer ce cas dans le bugzilla d'Eclipse en tant que bug 165667. Il faut voter dans bugzilla pour faire remonter les fonctionnalités qui t'intéressent.

    Sinon il faut utiliser un script dans l'évènement beforeDrawDatapoint, comme dans cet exemple.

  3. #3
    Membre habitué Avatar de Juwan
    Femme Profil pro
    Data manager
    Inscrit en
    Avril 2011
    Messages
    172
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations professionnelles :
    Activité : Data manager
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2011
    Messages : 172
    Points : 137
    Points
    137
    Par défaut
    Merci, je vais étudier ca.
    Est il possible de faire la même chose dans un histogramme ?

  4. #4
    Membre éclairé
    Homme Profil pro
    Consultant en Business Intelligence
    Inscrit en
    Mai 2009
    Messages
    529
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Consultant en Business Intelligence

    Informations forums :
    Inscription : Mai 2009
    Messages : 529
    Points : 836
    Points
    836
    Par défaut
    Oui, par exemple je me suis déjà servi de ce type de script dans un histogramme pour mettre en surbrillance certains batons en fonction de leur valeur

  5. #5
    Membre habitué Avatar de Juwan
    Femme Profil pro
    Data manager
    Inscrit en
    Avril 2011
    Messages
    172
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations professionnelles :
    Activité : Data manager
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2011
    Messages : 172
    Points : 137
    Points
    137
    Par défaut
    super merci ! je vais regarder ca.

  6. #6
    Membre habitué Avatar de Juwan
    Femme Profil pro
    Data manager
    Inscrit en
    Avril 2011
    Messages
    172
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations professionnelles :
    Activité : Data manager
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2011
    Messages : 172
    Points : 137
    Points
    137
    Par défaut
    Bonjour, j'ai utilisé l'exemple sur un pie chart, ca marche nickel mais pour un histogramme, ca ne marche pas...

    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
      function beforeDrawDataPoint( dph, fill, icsc )
    {
    	if( dph.getBaseDisplayValue() == "Prévisionnelle" ){
    		importPackage( Packages.org.eclipse.birt.chart.model.attribute.impl );
            fill.set(9, 170, 182);
    	}
    	if( dph.getBaseDisplayValue() == "Initiée" ){
    		importPackage( Packages.org.eclipse.birt.chart.model.attribute.impl );
            fill.set(121, 181, 28);
    	}
    	if( dph.getBaseDisplayValue() == "Engagée" ){
    		importPackage( Packages.org.eclipse.birt.chart.model.attribute.impl );
            fill.set(232, 91, 129);
    	}
    	if( dph.getBaseDisplayValue() == "Terminée" ){
    		importPackage( Packages.org.eclipse.birt.chart.model.attribute.impl );
            fill.set(238, 127, 1);
    	}
    }
    sachant que "avancement" est le "Optional Y Series Grouping" et que je veux fixer la couleur selon l'avancement.

  7. #7
    Membre éclairé
    Homme Profil pro
    Consultant en Business Intelligence
    Inscrit en
    Mai 2009
    Messages
    529
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Consultant en Business Intelligence

    Informations forums :
    Inscription : Mai 2009
    Messages : 529
    Points : 836
    Points
    836
    Par défaut
    Ah pour affecter la couleur des "optional Y series" je ne sais pas comment faire, perso je n'ai changé la couleur que pour l'axe X

  8. #8
    Membre habitué Avatar de Juwan
    Femme Profil pro
    Data manager
    Inscrit en
    Avril 2011
    Messages
    172
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations professionnelles :
    Activité : Data manager
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2011
    Messages : 172
    Points : 137
    Points
    137
    Par défaut
    je viens de trouver en fait. Il faut utiliser getSeriesDisplayValue() avec un contains

  9. #9
    Membre à l'essai
    Inscrit en
    Février 2008
    Messages
    11
    Détails du profil
    Informations forums :
    Inscription : Février 2008
    Messages : 11
    Points : 11
    Points
    11
    Par défaut Fixer les couleurs d'une légende en fonction de la categorie
    Citation Envoyé par Juwan Voir le message
    je viens de trouver en fait. Il faut utiliser getSeriesDisplayValue() avec un contains
    Bonjour,

    Merci pour les explications pour ce sujet.
    Cependant ou faut-il mettre le code

    function beforeDrawDataPoint( dph, fill, icsc )
    {
    if( dph.getBaseDisplayValue() == "Prévisionnelle" ){
    importPackage( Packages.org.eclipse.birt.chart.model.attribute.impl );
    fill.set(9, 170, 182);
    }
    if( dph.getBaseDisplayValue() == "Initiée" ){
    importPackage( Packages.org.eclipse.birt.chart.model.attribute.impl );
    fill.set(121, 181, 28);
    }
    if( dph.getBaseDisplayValue() == "Engagée" ){
    importPackage( Packages.org.eclipse.birt.chart.model.attribute.impl );
    fill.set(232, 91, 129);
    }
    if( dph.getBaseDisplayValue() == "Terminée" ){
    importPackage( Packages.org.eclipse.birt.chart.model.attribute.impl );
    fill.set(238, 127, 1);
    }
    }

    et ou trouver le getSeriesDisplayValue()
    Merci

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

Discussions similaires

  1. Réponses: 2
    Dernier message: 24/02/2010, 16h27
  2. Réponses: 4
    Dernier message: 04/08/2009, 12h12
  3. rendre invisible les partie d'une form en fonction de leur couleur?
    Par Jayceblaster dans le forum Windows Forms
    Réponses: 1
    Dernier message: 09/07/2007, 14h41
  4. couleur d'une police en fonction d'une condition
    Par floune dans le forum Access
    Réponses: 1
    Dernier message: 15/04/2006, 21h43
  5. [Graphique] Comment compter les couleurs d'une image ?
    Par yoghisan dans le forum API, COM et SDKs
    Réponses: 27
    Dernier message: 16/02/2005, 18h17

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