人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

Google Chart APIで質問です。
折れ線グラフを作っていたのですが、グラフのy軸に当たる場所の値を変更してもグラフが変化しません。
値によってグラフを変化させるにはどうしたらいいでしょうか?


プログラムのコードです。
1行目 <img src="http://chart.apis.google.com/chart?cht=lc
2行目 &amp;chs=300x125
3行目 &amp;chg=20,50,1,5
4行目 &amp;chxt=x,y
5行目 &amp;chxl=0:|1|2|3|4|5|6|7|1:|0|150|300
6行目 &amp;chd=t:10,10,14,30,80,40,100
7行目 &amp;chm=s,FF9904,0,-1,6" />
<!--5行目の0|150|300というところを変えてもグラフが変化しません-->

実際のグラフの画像です。
http://screencast.com/t/4BEYDyrbnhCf

●質問者: tsukasa343
●カテゴリ:ウェブ制作
○ 状態 :終了
└ 回答数 : 1/1件

▽最新の回答へ

1 ● Silvanus
ベストアンサー

Google Chart API では、Y軸の座標は"0?100"で固定です。
Y軸に書かれているラベル(chxl/chxp/chxrで設定)に関係無く
chdのデータはY軸下端を0~上端を100としてプロットされます。
実際、貴方のソースコードに書かれている
チャートデータ(chd)の最後の値(100)に対応するプロットは
必ずY軸の最上端に位置していることがお判りいただけると思います。
よって、実際にY軸のラベルとプロットするYの値に正しい関係を
持たせるためには、予めYの値を、表示するY軸のラベルに対応した
0~100のスケールに変換した上で、chdとして記述する必要があります。
Google Chart APIについては
下記のウェブサイトを勉強されると良いかと思います。
http://www.ajaxtower.jp/googlechart/


Silvanusさんのコメント
あうう、間違えまくってますので、書き直します。 ????? 【計算方法】※Y軸は単純な線形軸とします。 ・プロットしたいデータ Y ・Y軸の下端の値 Y1 ・Y軸の上端の値 Y2 ・記述すべきチャートデータ chd → chd = (y - y1)/(y2-y1)*100 例) y = 10,10,14,30,80,40,100 でY軸が 0~300 chd = 3.33,3.33,4.67,10,26.67,13.33,33.33 <img src="http://chart.apis.google.com/chart?cht=lc&amp;chs=300x125&amp;chg=16.66,50,1,5&amp;chxt=x,y&amp;chxl=0:|1|2|3|4|5|6|7|1:|0|150|300&amp;chd=t:3.33,3.33,4.67,10,26.67,13.33,33.33&amp;chm=s,FF9904,0,-1,6" /><br> 例) y = 10,10,14,30,80,40,100 でY軸が 0~1000 chd = 1,1,1.4,3,8,4,10 <img src="http://chart.apis.google.com/chart?cht=lc&amp;chs=300x125&amp;chg=16.66,50,1,5&amp;chxt=x,y&amp;chxl=0:|1|2|3|4|5|6|7|1:|0|500|1000&amp;chd=t:1,1,1.4,3,8,4,10&amp;chm=s,FF9904,0,-1,6" />

tsukasa343さんのコメント
ありがとうございます。 参考にさせていただきます。
関連質問

●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ