Bonjour

Je continue avec mes graphs, et cette fois, il faut que je génère plusieurs graphs a partir d'une boucle dans un LinearLayout.

La génération des plusieurs graph fonctionne bien, mais il s'emmelle les pinceaux avec les données.

Quant je force la boucle a 1 ou a 2 sur un seul graph, les données sont correct, mais quand je boucle 1 et 2, les 2 graphs apparaissent, mais les données sont mélangées. Il n'affiche que les données de la valeur 2. mais les coordonnées X*sont correctes

Voici un exemple de mon code:

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
48
49
50
 
        regle = datasource.getScoreJoueur(idjeux, 1);
        for (int i =0;i < /*regle.size()*/2;i++)
        {
            meilleur_Regle_data.clear();
            meilleur_Regle.clear();
            if (regle.get(i).getValeur() != 0 )
                meilleur_Regle_data.add(myPlayer);
            //.. Je charge plusieurs données avec cette méthode
 
            //On ajoute un graph a la suite
            BarChart chart = new BarChart(getBaseContext());
            LinearLayout ll = (LinearLayout)findViewById(R.id.stats_regles);
            LinearLayout.LayoutParams layoutParam = new LinearLayout.LayoutParams(LinearLayout.LayoutParams.MATCH_PARENT, 500);
            ll.addView(chart,layoutParam);
            chart.setLayoutParams(layoutParam);
 
            //Ici on remplace l'axe X par le nom des joueurs
            IAxisValueFormatter formatterr = new IAxisValueFormatter() {
                @Override
                public String getFormattedValue(float value, AxisBase axis) {
                    String ret;
                    if (value < meilleur_Regle_data.size())
                        ret = meilleur_Regle_data.get((int) value).getnomJoueur();
                    else
                        ret = "";
                    return ret;
                }
 
            };
 
            //On initialise l'axe X
            xAxis = chart.getXAxis();
            xAxis.setGranularity(1f); // minimum axis-step (interval) is 1
            xAxis.setTextSize(12);
            xAxis.setValueFormatter(formatterr);
 
            //Enfin on parametre le graph et l'affiche (Meilleur Score)
            BarDataSet dataSet_meilleur_regle = new BarDataSet(meilleur_Regle, regle.get(i).getNomregle());
            dataSet_meilleur_regle.setColors(R.color.rouge);
            dataSet_meilleur_regle.setValueTextSize(12);
            dataSet_meilleur_regle.setValueFormatter(new MyValueFormatter());
            BarData lineData_meilleur_regle = new BarData(dataSet_meilleur_regle);
            chart.setData(lineData_meilleur_regle);
            chart.setVisibleXRangeMaximum(6);
            chart.setScaleXEnabled(true);
            chart.setDescription(null);
            chart.invalidate();
 
        }
Je ne peux pas mettre plusieurs barre sur un seul graph car je risque d'avoir 15-30 graphs, ca serait illisible.
Comment puis je fixer le graph avant d'en générer un autre ?