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 :

Plusieurs types de marqueurs par séries sur un chart


Sujet :

BIRT

  1. #1
    Membre du Club
    Profil pro
    Consultant informatique
    Inscrit en
    Novembre 2007
    Messages
    76
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Consultant informatique
    Secteur : Finance

    Informations forums :
    Inscription : Novembre 2007
    Messages : 76
    Points : 50
    Points
    50
    Par défaut Plusieurs types de marqueurs par séries sur un chart
    Bonjour,

    J'ai une série contenant un faible nombre d'éléments (<5), et j'aimerais pouvoir avoir un type de marqueur pour chaque élément (élément un : un losange, élément 2 : un triangle, élément 3 un carré par exemple).

    J'ai vu qu'on pouvait attribuer une couleur (voire même un "pattern" dans la version 2.6 de BIRT) par élément d'une série, j'aimerais donc savoir si on peut changer aussi le type de marqueur soit avant génération, soit de façon dynamique.

    Merci d'avance pour votre aide

  2. #2
    BiM
    BiM est déconnecté
    Expert éminent sénior
    Avatar de BiM
    Femme Profil pro
    Consultante/Formatrice BIRT & Ingénieur Java/J2EE/GWT
    Inscrit en
    Janvier 2005
    Messages
    7 796
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 38
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Consultante/Formatrice BIRT & Ingénieur Java/J2EE/GWT

    Informations forums :
    Inscription : Janvier 2005
    Messages : 7 796
    Points : 10 765
    Points
    10 765
    Par défaut
    Bonjour,

    Il ne me semble pas qu'on puisse changer de marqueur ni de couleur pour chaque élément d'une série mais il est possible de change de marqueur et de couleur pour chaque série.

  3. #3
    Membre du Club
    Profil pro
    Consultant informatique
    Inscrit en
    Novembre 2007
    Messages
    76
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Consultant informatique
    Secteur : Finance

    Informations forums :
    Inscription : Novembre 2007
    Messages : 76
    Points : 50
    Points
    50
    Par défaut
    Si, je viens de réussir avec des scripts!!!
    Voilà comment j'ai fait:

    Dans la partie "initialize" du rapport :
    Code javascript : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    reportContext.setPersistentGlobalVariable("pointNumber","0");

    et dans la partie onRender de mon chart, fonction "beforeDrawMarker" :
    Code javascript : 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
     
    importPackage(Packages.org.eclipse.birt.chart.model.type.impl);
    	importPackage(Packages.org.eclipse.birt.chart.model.attribute.impl);
    	importPackage(Packages.org.eclipse.birt.chart.model.attribute);
     
    	if (dph ==null)
    	{
    		marker.setVisible(false);
    	}
    	else
    	{
    		this.pointNum = parseInt(icsc.getExternalContext().getScriptable().getPersistentGlobalVariable('pointNumber'));
     
    		switch(this.pointNum)
    		{
    			case 0: 
    				marker.setType(MarkerType.CROSS_LITERAL);
    				marker.setSize(5);
    				break;
    			case 1:
    				marker.setType(MarkerType.STAR_LITERAL);
    				marker.setSize(5);
    				break;
    			default:
    				marker.setType(MarkerType.FOUR_DIAMONDS_LITERAL);
    				marker.setSize(5);
    			break;		
    		}
    		if (this.pointNum<2)
    		this.pointNum++;
    		else
    		this.pointNum=0;
     
     
    		icsc.getExternalContext().getScriptable().setPersistentGlobalVariable("pointNumber",this.pointNum.toString());
    }
    }

    Donc j'ai un code qui va me changer la forme des marqueurs des 3 premiers éléments d'une série.
    Si j'ai un quatrième élément, alors il prendra la forme du premier marqueur, un 5ème prendra la forme du second marqueur, etc.
    Bien sur, là c'est en dur, mais dans l'absolu, il faudrait récupérer le nombre d'éléments de la série et prévoir autant de formes que d'éléments.

    Bim, je ne sais pas comment on fait pour mettre quelque chose dans la FAQ, mais je pense que ça peut intéresser les gens d'avoir une solution à ce problème... à toi de voir

  4. #4
    BiM
    BiM est déconnecté
    Expert éminent sénior
    Avatar de BiM
    Femme Profil pro
    Consultante/Formatrice BIRT & Ingénieur Java/J2EE/GWT
    Inscrit en
    Janvier 2005
    Messages
    7 796
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 38
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Consultante/Formatrice BIRT & Ingénieur Java/J2EE/GWT

    Informations forums :
    Inscription : Janvier 2005
    Messages : 7 796
    Points : 10 765
    Points
    10 765
    Par défaut
    En effet, je regardais dans un premier temps en passant uniquement par l'interface. Félicitations ! Ce n'est pas forcément facile de se plonger dans les scripts (surtout ceux des Charts).

    Tu peux rajouter ta Q/R ici : Contribuez à la FAQ BIRT

    Elle sera ajoutée à la prochaine mise à jour.

  5. #5
    Membre du Club
    Profil pro
    Consultant informatique
    Inscrit en
    Novembre 2007
    Messages
    76
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Consultant informatique
    Secteur : Finance

    Informations forums :
    Inscription : Novembre 2007
    Messages : 76
    Points : 50
    Points
    50
    Par défaut
    Citation Envoyé par BiM Voir le message
    En effet, je regardais dans un premier temps en passant uniquement par l'interface. Félicitations ! Ce n'est pas forcément facile de se plonger dans les scripts (surtout ceux des Charts).
    J'avoue que c'est pas super facile et je suis bien content quand j'arrive à quelque chose comme ça

    Citation Envoyé par BiM Voir le message
    Tu peux rajouter ta Q/R ici : Contribuez à la FAQ BIRT

    Elle sera ajoutée à la prochaine mise à jour.
    Je m'en occupe!

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

Discussions similaires

  1. Réponses: 13
    Dernier message: 24/12/2009, 11h45
  2. Réponses: 5
    Dernier message: 10/05/2008, 18h11
  3. Réponses: 2
    Dernier message: 10/05/2008, 17h53
  4. tri par moyenne sur plusieurs colonnes
    Par adr22 dans le forum Langage SQL
    Réponses: 2
    Dernier message: 11/12/2007, 16h19
  5. Réponses: 10
    Dernier message: 07/06/2007, 10h48

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