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 :

[2.2.2][Chart] taille du graphique dynamique


Sujet :

BIRT

  1. #1
    Membre averti

    Profil pro
    Inscrit en
    Novembre 2005
    Messages
    385
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2005
    Messages : 385
    Points : 321
    Points
    321
    Par défaut [2.2.2][Chart] taille du graphique dynamique
    Bonjour à tous,

    j'affiche des données sous la forme d'un graphique (barres). Mon jeu de données peu me retourner de 2-3 enregistrements à plus d'une trentaine. J'aimerais modifier adapter la taille (hauteur) de mon graphique suivant le nombre d'enregistrements. Je n'ai pas de difficultés pour récupérer le nombre de résultats mais par contre je ne sais pas comment faire pour modifier la taille du graphique via les scripts.

    Il faudrait pouvoir modifier cette propriété ici :

    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
     
    /**
     * Called before generation of chart model to GeneratedChartState.
     * 
     * @param chart
     *            Chart
     * @param icsc
     *            IChartScriptContext
     */
     
    function beforeGeneration(chart, icsc) {
      var nb_resultats = icsc.getExternalContext().getScriptable().getPersistentGlobalVariable("nb_resultats");
      var chart_height = 130; //px
      if(nb_resultats < 5) {
        chart_height = 50;
      }
      else if (nb_resultats < 15) {
        chart_height = 100;
      }
     
      //chart.[...].setHeight = chart_height;
    }
    Voici un bout de code que j'ai trouvé mais que je n'arrive pas à utiliser :
    http://www.birt-exchange.com/modules...ead.php?t=9628

  2. #2
    Membre averti

    Profil pro
    Inscrit en
    Novembre 2005
    Messages
    385
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2005
    Messages : 385
    Points : 321
    Points
    321
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    function afterDataSetFilled(series, dataSet, icsc) {
    	if(series.getSeriesIdentifier() == "serie1") {
     		var nb_results = dataSet.getValues().length;
     		if(nb_results > 20) {
       			icsc.getChartInstance().getBlock().getBounds().setHeight(nb_results * 10);
       		}
       		else {
       			icsc.getChartInstance().getBlock().getBounds().setHeight(nb_results * 20);
       		}
     	}
    }

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

Discussions similaires

  1. [Image] Graphique dynamique
    Par navis84 dans le forum Bibliothèques et frameworks
    Réponses: 5
    Dernier message: 23/05/2006, 09h15
  2. [Map] comment generer une interface graphique dynamiquement?
    Par hby dans le forum Interfaces Graphiques en Java
    Réponses: 7
    Dernier message: 20/04/2006, 16h01
  3. [Librairies] Graphique dynamique
    Par piloup dans le forum Bibliothèques et frameworks
    Réponses: 1
    Dernier message: 01/12/2005, 19h56
  4. listbox ajustement de la taille de façon dynamique
    Par ana2sb dans le forum Access
    Réponses: 3
    Dernier message: 14/10/2005, 17h11
  5. Interface graphique dynamique
    Par gmonta dans le forum Windows Forms
    Réponses: 7
    Dernier message: 05/10/2005, 14h47

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