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

Android Discussion :

Affichage graphique dynamique


Sujet :

Android

  1. #1
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Juin 2011
    Messages
    40
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Juin 2011
    Messages : 40
    Points : 22
    Points
    22
    Par défaut Affichage graphique dynamique
    bonjour,

    Je suis entrain de développer une application et je voudrais pouvoir afficher un graphique dans mon application. J'utilise Eclipse et la version d'Android est la 3.0 (application destiné aux tablettes).

    J'ai vu qu'il existait un site qui parlait des graphiques pour android : http://androidplot.com

    j'arrive actuellement à afficher un graphique (importation des bonnes bibliothèques etc...) mais je n'arrive pas à mettre à jour les données de graphique. Je m'explique :
    - je récupère des données dans des tableaux toutes les 5sec environ(dans un thread)
    - ensuite un handler permet d'afficher ses valeurs

    les données s'affichent comme ça :
    au départ le tableau contient : 0 ; 0 ; 0 ; 0
    après acquisition : 24 ; 0 ; 0 ; 0
    après 2eme acquisition : 24 ; 25 ; 0 ; 0
    etc jusqu'à remplir le tableau.

    j'affiche à chaque fois les valeurs ("j'appelle" donc le handler périodiquement)

    Et mon problème c'est que le graphique ne se met pas à jour. il fonctionne seulement pour la 1ere valeur.
    J'ai donc un point à l'ordonnée 24 abscisse 0 et tous les autres points ont comme coordonnée (0,0)...alors que j'aimerai qu'il se mette à jour au fur et à mesure de l'acquisition.

    voilà mon code (un peu long désolé):
    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
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    Number[] series1Numbers = data00;
         	  	Number[] series2Numbers = data01;
     
         	  	mtextviewText = new String(
         	  	"\n"+ "series1Numbers : " + series1Numbers[0] + "," +
         		 						series1Numbers[1] + "," +
         		 						series1Numbers[2] + "," +
         		 						series1Numbers[3]  + "," +
         		 						series1Numbers[4]  + "," +
         		 						series1Numbers[5] + "," +
         		 						series1Numbers[6]  + "," +
         		 						series1Numbers[7]  + "," +
         		 						series1Numbers[8]  + "\n" 
         		 					);
         	  	textview1.setText(mtextviewText);
     
         	  	XYSeries series1 = new SimpleXYSeries(
         	  	        Arrays.asList(series1Numbers),          
         	  	        SimpleXYSeries.ArrayFormat.Y_VALS_ONLY, 
         	  	        "Series1");                             
     
     
         	  	XYSeries series2 = new SimpleXYSeries(
         	  			Arrays.asList(series2Numbers), 
         	  			SimpleXYSeries.ArrayFormat.Y_VALS_ONLY, 
         	  	        "Series2");
     
     
         	  	LineAndPointFormatter series1Format = new LineAndPointFormatter(
         	  	        Color.rgb(0, 200, 0),                   // line color
         	  	        Color.rgb(0, 100, 0),                   // point color
         	  	        Color.rgb(150, 190, 150));              // fill color (optional)
     
         	  	// Add series1 to the xyplot:
         	  	mySimpleXYPlot.addSeries(series1, series1Format);
     
         	  	// Same as above, with series2:
         	  	mySimpleXYPlot.addSeries(series2, new LineAndPointFormatter(Color.rgb(0, 0, 200), Color.rgb(0, 0, 100),
         	  	        Color.rgb(150, 150, 190)));
     
     
         	  	// Reduce the number of range labels
         	  	mySimpleXYPlot.setTicksPerRangeLabel(3);
     
         	  	// By default, AndroidPlot displays developer guides to aid in laying out your plot.
         	  	// To get rid of them call disableAllMarkup():
         	  	mySimpleXYPlot.disableAllMarkup();
    j'ai récupéré ce bout de code ici (http://androidplot.com/wiki/Quickstart)
    le data00 est un tableau de Float (car la fonction nécessite des "Number") qui contient les données en question

    je ne sais pas trop comment m'y prendre...si qq'un pourrait m'éclairer ça m'aiderait beaucoup

    merci
    oxford

  2. #2
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Juin 2011
    Messages
    40
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Juin 2011
    Messages : 40
    Points : 22
    Points
    22
    Par défaut
    Finalement, j'ai réussi à résoudre mon problème ! Pour éviter que d'autres personnes cherchent pendant des heures comme moi, voici la solution :

    Pour mettre à jour le graphique à chaque itération il suffisait de rajouter :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    mySimpleXYPlot.invalidate()
    mySimpleXYPlot.clear
    avant le mySimpleXYPlot.addSeries

    voilà !

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

Discussions similaires

  1. [XL-2010] Affichage graphique à partir d'une colonne dynamique
    Par rihab92 dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 10/04/2015, 10h03
  2. Affichage de graphique dynamique
    Par Christophe39 dans le forum Graphisme
    Réponses: 0
    Dernier message: 29/03/2014, 17h42
  3. [AC-2003] Affichage d'un formulaire en graphique dynamique croisé
    Par facteur dans le forum VBA Access
    Réponses: 0
    Dernier message: 31/08/2012, 11h04
  4. Quel technologie pour un affichage graphique dynamique ?
    Par Papy214 dans le forum Windows Forms
    Réponses: 12
    Dernier message: 20/10/2008, 14h40
  5. [TP]Affichage graphique
    Par maleklegolas dans le forum Turbo Pascal
    Réponses: 5
    Dernier message: 02/11/2003, 19h42

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