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

2D Java Discussion :

[JFreeChart] Probleme de taille automatique des graphes


Sujet :

2D Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Mai 2005
    Messages
    82
    Détails du profil
    Informations forums :
    Inscription : Mai 2005
    Messages : 82
    Par défaut [JFreeChart] Probleme de taille automatique des graphes
    Bonjour,

    J'ai place dans un JPanel (layout GridLayout) trois graphes jFreeChart. Ces graphes ne contiennent pas les memes donnees. Cote taille, je n'ai rien modifie sur les graphes, ils se resize donc automatiquement (voir image jointe).

    Cependant, pour plus de clarte, je souhaiterai que les axes des ordonees soient tous aligne, pour pouvoir faire des comparaisons visuelles facilement entre les graphes. Or, vu qu'ils se resize automatiquement et qu'ils ne contiennent pas les memes donnees, ils ne sont pas aligne.

    Une idee de quelle sont les methodes a utiliser? Je ne les trouve pas (surtout celle pour definir ou forcer la taille des chart).

    Merci.

    Dazdh
    Images attachées Images attachées  

  2. #2
    Membre Expert Avatar de Ivelios
    Homme Profil pro
    Développeur Java
    Inscrit en
    Juillet 2008
    Messages
    1 031
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur Java

    Informations forums :
    Inscription : Juillet 2008
    Messages : 1 031
    Par défaut
    Salutation,
    Je me penche sur ce problème aussi, j'ai trouvé une solution temporaire et pas idylliques du tout... Mais peut être qu'elle te conviendra :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    plot = chart.getXYPlot();
    NumberAxis rangeAxis = (NumberAxis) plot.getRangeAxis();
    rangeAxis.setStandardTickUnits(NumberAxis.createIntegerTickUnits());
    Cela ne t'affichera que les entier dans l'axe des Y.
    L'idéal serait de pouvoir définir un écart entre les valeurs indiquées en Y.

    Si tu as trouvé un solution, je suis preneur

  3. #3
    Expert confirmé

    Femme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    5 793
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations forums :
    Inscription : Juillet 2005
    Messages : 5 793
    Par défaut
    Ivelios, pour n'afficher que les valeurs de Y avec un écart déterminé, tu peux utiliser ceci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    rangeAxis.setTickUnit(new NumberTickUnit(100.0));
    ça te génèrera un "Tick" tous les 100, soit 100, 200, 300, ...

    Tu peux aussi spécifier la borne inférieure et la borne supérieure de l'axe des ordonnées avec les méthodes setLowerBound et setUpperBound de NumberAxis :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    rangeAxis.setLowerBound(100.0);
    rangeAxis.setUpperBound(1000.0);
    Mais ceci ne réglera pas le problème d'alignement des axes des ordonnées évoqué par Dazdh.

  4. #4
    Membre Expert Avatar de Ivelios
    Homme Profil pro
    Développeur Java
    Inscrit en
    Juillet 2008
    Messages
    1 031
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur Java

    Informations forums :
    Inscription : Juillet 2008
    Messages : 1 031
    Par défaut
    Merci à toi c_nvy , je viens juste de trouver la même solution sur le forum de JFreeChart

    Cette solution règle mon problème puisque mes graphiques vont des valeurs 2 à -2

    plus qu'à faire :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    rangeAxis.setTickUnit(new NumberTickUnit(0.25));
    Dazdh, je te post un message si je trouve autre chose pour toi

  5. #5
    Expert confirmé

    Femme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    5 793
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations forums :
    Inscription : Juillet 2005
    Messages : 5 793
    Par défaut
    De rien Ivelios.

    J'ai fait un tour également sur le forum de JFreeChart et je me suis aperçue que Dazdh y avait ouvert une discussion.

    Apparemment, la solution c'est d'utiliser un CombinedDomainXYPlot et d'y ajouter chaque XYPlot.

Discussions similaires

  1. Taille automatique des cellules d'un report
    Par mehdi.cheddani dans le forum VB.NET
    Réponses: 8
    Dernier message: 17/04/2013, 14h13
  2. Réponses: 1
    Dernier message: 10/04/2012, 16h57
  3. Réponses: 0
    Dernier message: 02/08/2011, 12h15
  4. taille automatique des subplots
    Par Lucier dans le forum MATLAB
    Réponses: 2
    Dernier message: 02/09/2009, 08h52
  5. Réponses: 3
    Dernier message: 15/04/2004, 08h44

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