2010-02-11 9 views
1

Je développe une application qui dessine des graphiques et j'utilise Google Chart. Après avoir toutes les données nécessaires, je construis l'URL de façon dinamique. Le problème est que Google Chart ne fixe pas toujours le maximum et le minimum du graphique aux valeurs que je fournis. Je calcule les valeurs Max et Min en fonction des données du panier. Je les ai définies pour être toujours un nombre entier pour éviter n'importe quel problème. Je vais donner un exemple avec des nombres: (je l'écris dans différentes lignes avec "comments (//)" pour qu'il puisse être lu facilement, bien qu'il soit dans la même ligne que n'importe quel commentaire)Problème avec Google Chart

http://chart.apis.google.com/chart? 
cht=bvs&          //chart type 
chs=250x250&         //chart size 
chd=t:10,0|4.48,0|15,-58.42|0,4.73|0,73.44&  //chart data 
chco=4D89D9,C6D9FD,FF0000,00FF00,0000FF&  //chart colors 
chds=-59,80&         //data scaling 
chf=bg,s,edf5ff|c,s,f6e426&      //chart fill color 
chtt=my_title&         //chart title 
chdl=A|B|C|D|E&         //chart legend 
chdlp=r&          //legend position 
chxt=x,y&          //chart axis 
chxl=0:|Col_1|Col_2&       //Axis labels 
chxr=1,-59,80&         //Axis range 
chbh=r,1,0&          //Bar thickness and spacing 
chg=0,12.5          //Grid Lines 

Avec cette configuration, j'obtiendrais ce tableau. Comme vous pouvez le voir, la ligne zéro est sur zéro car les données n'ont pas été mises à l'échelle.

alt text

mais si je change le maximum et minumum du graphique pour -60,80 j'obtenir dans une bonne façon

Ce serait ce code:

http://chart.apis.google.com/chart? 
cht=bvs&          //chart type 
chs=250x250&         //chart size 
chd=t:10,0|4.48,0|15,-58.42|0,4.73|0,73.44&  //chart data 
chco=4D89D9,C6D9FD,FF0000,00FF00,0000FF&  //chart colors 
chds=-60,80&         //data scaling (CHANGE IN THIS LINE) 
chf=bg,s,edf5ff|c,s,f6e426&      //chart fill color 
chtt=my_title&         //chart title 
chdl=A|B|C|D|E&         //chart legend 
chdlp=r&          //legend position 
chxt=x,y&          //chart axis 
chxl=0:|Col_1|Col_2&       //Axis labels 
chxr=1,-60,80&         //Axis range (CHANGE IN THIS LINE) 
chbh=r,1,0&          //Bar thickness and spacing 
chg=0,12.5          //Grid Lines 

Et ce tableau qui semble être OK:

alt text

Quelqu'un peut-il me dire pourquoi Google Chart se comporte de cette manière?

Merci

Répondre

1

j'ai changé itsetI obtenir les valeurs max et min à un nombre qui correspond aux divisions communes à une échelle logarithmique. Je veux dire:

  • si la valeur est à l'intérieur (0,10) choisir une valeur entière
  • si la valeur est à l'intérieur (10100) choisir 10,20,30 ... 1000
  • si la valeur est à l'intérieur (100,100) je choisis 100,200,300 ... 10000 et ainsi de suite.

Avec ces valeurs, Google Chart semble fonctionner.

Questions connexes