Problème avec Google Chart
-
19-09-2019 - |
Question
Je développe une application qui dessine des graphiques et j'utilise Google Chart. Après avoir toutes les données nécessaires, je construire l'URL dinamically. Le problème est que Google Chart ne sont pas toujours fixer le maximum et le minimum du graphique pour les valeurs que je donne. Je calcule les valeurs Max et Min à partir des données du panier. Je les ai mis à toujours un entier pour éviter tout problème.
Je vais donner l'exemple avec des chiffres: (Je l'écris dans différentes lignes avec « commentaires (//) » afin qu'il puisse être lu facilement, mais il est dans la même ligne avec un commentaire du tout)
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'obtenir ce tableau. Comme vous pouvez le voir la ligne zéro est sur zéro, car les données n'a pas été réduite ISN une bonne façon.
Si je change le maximum et minumum du graphique pour -60,80 je l'obtenir dans le bon sens
Il 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:
Quelqu'un peut-il me dire pourquoi Google Chart se comporte de cette façon?
Merci
La solution
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) I choisir une valeur entière
- si la valeur est à l'intérieur (10100) Je choisis 10,20,30 ... 1000
- Je choisis 100,200,300 ... 10000 si la valeur est à l'intérieur (100,1000) et ainsi de suite.
Avec ces valeurs Google Chart semble fonctionner.