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] tooltips et informations


Sujet :

2D Java

  1. #1
    Membre confirmé Avatar de zolotaya
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    93
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 93
    Par défaut [JFreeChart] tooltips et informations
    Bonjour,

    j'aimerais mettre en place un graphique "dynamique". J'ai actuellement un tableau de données avec plein de colonne. A partir de deux de ces données je trace un ScatterPlot avec JfreeChart (aucun problème jusque là) .
    La ou ca se complique est que pour chaque point tracé sur mon graphique j'aimerais le mettre en correspondance avec la ligne de mon tableau (la surlignée).
    Ayant un grand nombre d'informations sur ce graphique, je suis presque obligé de laisser le zoom et je propose en plus un affichage des données à l'aide de NumberAxis ou LogarithmicAxis. La récupération des coordonnées de la souris me parait donc pas trop approprié voir un peu trop complexe à mettre en place .
    J'avais donc pensé essayer de récupérer les informations contenu dans les tooltips (lex et le y). J'ai fait quelques recherche mais je n'ai rien trouvé de satisfaisant. Quelqu'un aurait'ilo une idée ou un début de quelques chose pour me mettre sur la voie?

    Zolotaya

  2. #2
    Membre confirmé Avatar de zolotaya
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    93
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 93
    Par défaut
    Re salut,

    Bon pour ce que ca interesse, j'ai trouvé un moyen de faire ce que je voulais .

    il faut mettre un écouteur sur le chartPanel

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    chartPanel.addMouseMotionListener(new ecouteurchartPanel());
    aprés il y a une fonction getToolTipText qui permet de récupérer le contenu du tooltip. Pour avoir les informations, il suffit de le formater à l'aide des regex.

    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
     
    	private class ecouteurchartPanel implements MouseMotionListener {
     
    		public void mouseDragged(MouseEvent e) {
    		}
     
    		public void mouseMoved(MouseEvent e) {
    			String tooltips = "";
    			tooltips = chartPanel.getToolTipText(e);
    			if (tooltips != null){
    				//System.out.println("tooltips : " + tooltips);
    				String values = tooltips.replaceAll("^.+\\(([^\\(]+)\\)$", "$1");
    				String[] vals = values.split(", ");
    				if ( vals.length==2 ) {
    					vals[0] = vals[0].replaceAll(",", "");
    					vals[1] = vals[1].replaceAll(",", "");
    					double v1 = Double.parseDouble( vals[0] );
    					double v2 = Double.parseDouble( vals[1] );
    					System.out.println("tooltips : " + tooltips + " - val1="+v1+", val2="+v2);
    				}
    			}
    		}
     
    	}

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

Discussions similaires

  1. Bulle d'information (tooltip) dans Oracle Forms
    Par teddi dans le forum Forms
    Réponses: 6
    Dernier message: 27/09/2013, 15h42
  2. Réponses: 0
    Dernier message: 25/05/2009, 14h34
  3. [JFreeChart] Modification Tooltips
    Par MasterChief78 dans le forum 2D
    Réponses: 2
    Dernier message: 05/05/2008, 17h10
  4. Réponses: 12
    Dernier message: 08/03/2006, 17h27
  5. [PRO*C] Recherche information
    Par Anonymous dans le forum Interfaces de programmation
    Réponses: 2
    Dernier message: 04/04/2002, 17h53

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