JavaScriptで折れ線グラフ。
折れ線グラフを描いてみようと思って、いろいろ弄ってみた。HTML5.JPで配布されている『折れ線グラフ』というスクリプトをカスタマイズ。
出来たページはコチラ → パ・リーグ順位変動グラフ / セ・リーグ順位変動グラフ
canvas要素内にJavaScriptで折れ線グラフを表示します。スクリプトの設置方法とかパラメータの設定方法などは元のページに詳しく書かれているので省略。
さて、JavaScriptで面倒なのが IEへの対処方法。
Internet Explorer 8 以前のバージョンでは canvas要素に対応していないので、この『折れ線グラフ』では、パッケージに同梱されているExplorerCanvasというスクリプトを間に噛ませて IEにも対応させています。
説明にも書かれているとおり、htmlのヘッダ部分に
と記述してやれば、IEでアクセスしたときにだけ excanvas.js が読み込まれて、仕事をしてくれます。このパッケージには、ファイルサイズを小さくした excanvas.compiled.js というファイルも含まれているので、そちらを読み込む設定にしたほうが良いかも。
で、IE 9。
ちょっと今、手元に IE 9 を動かせる環境が無いので、IE9がどこまで canvas要素に対応しているのか把握していないのですが、もし完全に動くよ! ということならば、IE 9未満のバージョンの時だけ excanvas.js を読み込む設定に変えてしまいましょう。
そして、折れ線グラフ描画スクリプト本体( line.js )も弄ってみる。オリジナルスクリプトではグラフの線の色を変えることができないので、そこを変えてみます。
線色を設定しているのは、line.js の 212行めあたり。
10個の要素が、それぞれ 1本めのグラフ、2本めのグラフ… に対応しています。値は RGB。
→ Color converter : 色の8進数表記( #ffffff など)と RGB表記を相互変換
もう恒久的に色を変えてしまいたいのだったら、この部分を直接書き換えてしまえば良いし、その時々に応じて色を設定したいのならば、ラインの色を設定するためのパラメータを渡す仕様に変更してしまえば良いのです。
例えば line.js の212行めあたりを、
な感じに書き換えて、色の変更をしたいときにはグラフ描画の際に設定するパラメータリストに、
てな具合に、新しく定義したパラメータ gLineColors を追加してやれば良いですね。
出来たページはコチラ → パ・リーグ順位変動グラフ / セ・リーグ順位変動グラフ
canvas要素内にJavaScriptで折れ線グラフを表示します。スクリプトの設置方法とかパラメータの設定方法などは元のページに詳しく書かれているので省略。
さて、JavaScriptで面倒なのが IEへの対処方法。
Internet Explorer 8 以前のバージョンでは canvas要素に対応していないので、この『折れ線グラフ』では、パッケージに同梱されているExplorerCanvasというスクリプトを間に噛ませて IEにも対応させています。
説明にも書かれているとおり、htmlのヘッダ部分に
<!--[if IE]><script type="text/javascript" src="path_to/excanvas/excanvas.js"></script><![endif]-->
と記述してやれば、IEでアクセスしたときにだけ excanvas.js が読み込まれて、仕事をしてくれます。このパッケージには、ファイルサイズを小さくした excanvas.compiled.js というファイルも含まれているので、そちらを読み込む設定にしたほうが良いかも。
で、IE 9。
ちょっと今、手元に IE 9 を動かせる環境が無いので、IE9がどこまで canvas要素に対応しているのか把握していないのですが、もし完全に動くよ! ということならば、IE 9未満のバージョンの時だけ excanvas.js を読み込む設定に変えてしまいましょう。
<!--[if lt IE 9]> 〜 <![endif]-->
そして、折れ線グラフ描画スクリプト本体( line.js )も弄ってみる。オリジナルスクリプトではグラフの線の色を変えることができないので、そこを変えてみます。
線色を設定しているのは、line.js の 212行めあたり。
var colors = ["24,41,206", "198,0,148", "214,0,0", "255,156,0", "33,156,0", "33,41,107", "115,0,90", "132,0,0", "165,99,0", "24,123,0"];
10個の要素が、それぞれ 1本めのグラフ、2本めのグラフ… に対応しています。値は RGB。
→ Color converter : 色の8進数表記( #ffffff など)と RGB表記を相互変換
もう恒久的に色を変えてしまいたいのだったら、この部分を直接書き換えてしまえば良いし、その時々に応じて色を設定したいのならば、ラインの色を設定するためのパラメータを渡す仕様に変更してしまえば良いのです。
例えば line.js の212行めあたりを、
if( params.gLineColors ){
var colors = params.gLineColors ; /* カスタマイズ */
}else{
var colors = ["24,41,206", "198,0,148", "214,0,0", "255,156,0", "33,156,0", "33,41,107", "115,0,90", "132,0,0", "165,99,0", "24,123,0"]; /* デフォルト */
}
var colors = params.gLineColors ; /* カスタマイズ */
}else{
var colors = ["24,41,206", "198,0,148", "214,0,0", "255,156,0", "33,156,0", "33,41,107", "115,0,90", "132,0,0", "165,99,0", "24,123,0"]; /* デフォルト */
}
な感じに書き換えて、色の変更をしたいときにはグラフ描画の際に設定するパラメータリストに、
var params = {
その他のさまざまなパラメータ ...,
gLineColors : ["255,156,0", "40,120,210", "0,0,0", "0,40,200", "80,80,80", "200,0,0", "115,0,90", "132,0,0", "165,99,0", "24,123,0"]
};
その他のさまざまなパラメータ ...,
gLineColors : ["255,156,0", "40,120,210", "0,0,0", "0,40,200", "80,80,80", "200,0,0", "115,0,90", "132,0,0", "165,99,0", "24,123,0"]
};
てな具合に、新しく定義したパラメータ gLineColors を追加してやれば良いですね。
カテゴリ:
このブログ記事に対するトラックバックURL: http://freefielder.jp/ffmt/mtb.cgi/1209
検索
iTunes Store検索
tyz@freefielder.jp
カテゴリ
- Amazon Webサービス (4)
- Bossa Nova in Japan (8)
- Bossaカバー (19)
- ForeGround Music (299)
- Let's Note (10)
- Macintosh (48)
- PHP (37)
- Song Title Fetcher (1)
- Webアプリ (3)
- facebook (3)
- iPhone (65)
- via mobile
- どBossa (9)
- むかし福岡 (10)
- インターネットラジオ (7)
- クラフト (4)
- スタイルシート (5)
- スポーツ (1)
- ポ・リーグ (3)
- 今日の小室哲哉 (6)
- 嘘ネタ (2)
- 旅 (55)
- 日々 (112)
- 縦書き (30)
- 自転車 (24)
- 雑記 (233)
- 青空文庫 (8)
- 風物詩を撮る (1)
タグクラウド
- ホークス
- カバー曲
- 福岡
- iPhone
- CMソング
- 80's
- Masterpieces
- php
- bossa nova
- Macintosh
- パリーグ2008
- iPod
- 90's
- 映画
- 縦書き
- JavaScript
- 自転車
- パリーグ2009
- CSS3
- 最速でパリーグの優勝の行方を計算するページ
- パリーグ2010
- 珈琲
- 野球場
- 小ネタ
- 70's
- パリーグ2011
- ドラゴンズ
- カープ
- ファイターズ
- 台湾
- スタイルシート
- ヤフードーム
- ライオンズ
- itunes store
- 台湾プロ野球
- 笑ひ
- 新垣結衣
- マリーンズ
- UK
- 戦力外通告
- イーグルス
- WBC
- 通販
- 家電
- サッカー
- むかし福岡
- タイ
- バファローズ
- 羊毛とおはな
- Let's Note
- MacPorts
- 別府
- 迷惑アクセス
- 女優シンガー
- マカオ
- Bossaバブル
- NetRadio
- sotte bosse
- Xubuntu
- 助っ人
- 名古屋
- 椎名林檎
- 交流戦2008
- おみくじ
- オープン戦2008
- パリーグ2012
- ブログ
- ベイスターズ
- 煙草
- 著作権
- 香港
- 高橋幸宏
- 魚眼レンズ
- Movable Type
- OASIS
- Punk
- TVの音
- 原田知世
- 二軍
- うれすじキャッチャー
- アジアシリーズ
- スワローズ
- 統一ライオンズ
- Jazz
- John Lennon
- PowerBook G4
- Sex Pistols
- windows
- 小室哲哉
- 最速で2010年パリーグの優勝の行方を計算するページ
- オープン戦2009
- ドアラ
- パクチー
- Bruce Springsteen
- CentOS
- Coldplay
- 矢追純一
- 笑い
- 鳥居みゆき
- h2v.js
- IE9
- Windows
- 岡村ちゃん
- 星野JAPAN
- .htaccess
- 20世紀少年
- AWS
- コブクロ
- サンボマスター
- メタルバラード
- リモートデスクトップ
- レゲエ
- 稲尾和久
- 高品質CD
- HVT-BCT300
- Kids Bossa
- MacBook Air
- phpFreeChat
- RED HOT CHILLI PEPPERS
- THE BLUE HEARTS
- Tom Waits
- 平和台球場
- 海外旅行
- 佐野元春
- さくら
- イチロー
- イマココ。
- クレヨンしんちゃん
- ケツメイシ
- ポ・リーグ
- 王貞治
- 空気公団
- 菅野よう子
- 裸になって何が悪い
- 西鉄ライオンズ
- 鯨
- FON
- Guns N' Roses
- imageFlow
- JASRAC
- Joao Gilberto
- Michael Jackson
- Rickie-G
- TeN
- 冨田ラボ
- 午後の紅茶
- 原辰徳
- 原恵一
- 城島健司
- 小泉今日子
- 忌野清志郎
- 松山ケンイチ
- 板尾創路
- 浅野いにお
- 浅井健一
- 清原和博
- 中西健太
- 交流戦2009
- 交流戦2010
- 15秒ルール
- 2ちゃんねる
- かまやつひろし
- くるり
- さだまさし
- アスパラガス
- カオリーニョ藤原
- ジャイアンツ
- スタートレック
- スパム
- ソラニン
- タイガース
- ピアノポップ
- ファンキーモンキーベイビーズ
- ヘッドホン
- マクロレンズ
- BUMP OF CHICKEN
- 筒井康隆
- eastern youth
- enka bossa
- 都市伝説
- 野球英語
- 藤岡藤巻
- 雪
- 赤外線写真
- GPS
- Iggy Pop
- leonard cohen
- MeCab
- Monkey Majik
- My Chemical Romance
- NPB
- pupa
- Rage Against The Machine
- roots rock
- The Beatles
- UFO
- VNC
- WebDAV
- X JAPAN
- 刻印
- 加山雄三
- 坂本龍一
- 岡田准一
- 怪談
- 江頭2:50
- 世界のナベアツ
- 1941
- AKIRA
- Antony and The Johnsons
- おさかな天国
- さくらと一郎
- さよならポニーテール
- たむらぱん
- つじあやの
- つボイノリオ
- のあのわ
- ばっかじゃなかろか
- ほっともっと
- みかん
- アイドル
- アントニオ猪木
- イエティ
- ウミネコサウンズ
- オウンゴール
- カコイミク
- カルロス・リラ
- クリスマス
- サザンオールスターズ
- サーバー
- デジカメ
- ナメクジ
- ブルース・リー
- ヘチマ
- ベテランの味
- ペタンク
- ホタテ
- ポール・ポッツ
- マラドーナ
- ミッキー・ローク
- ユリオカ超特Q
- ライジング福岡
- レツゴー三匹
- ロバのパン
- bjリーグ
- Chrome
- 甘いもの
- 真島昌利
- 福岡市動植物園
- 税金
- 笹倉慎介
- David Bowie
- EXILE
- 酒
- 野茂英雄
- 頭から離れない
- 餃子
- 高田純次
- 高野寛
- 迷惑電話
- FDH
- Galaxie 500
- Green Day
- GX100
- GyaO
- HIDE
- JUJU
- Lou Reed
- mlb
- New Balance
- Nirvana
- Norah Jones
- Perfume
- plenty
- STF
- Tete
- The Rolling Stones
- UA
- UNICORN
- yumeiroecho
- 劇団ひとり
- 吉田えり
- 坂本真綾
- 夏への扉
- 大西ライオン
- 大分
- 尾道
- 川村かおり
- 布袋寅泰
- 新耳袋
- 旅
- 日野良一
- 映日紅はイチジクと読む
- 未映子
- 株
- 歯
- 清水ミチコ
- 湯川潮音
月別 アーカイブ
- 2012年
- 2011年
- 2010年
- 2009年
- 2008年
- 2007年
こちらの記事もどうぞ
- 交流戦の優勝クリンチナンバーを計算してみようと思ったら…。
- プロ野球・ゲーム差 -0.5。
- line.js を改造して垂直補助線を描けるようにする。
- プロ野球・順位可能性早見表、完成。
- プロ野球・消滅クリンチナンバー。
- クリンチナンバー計算ページ、2012シーズン新機能のまとめ。
- 四月。桜。
- 2012シーズンもプロ野球・クリンチナンバーを計算するぞ宣言。
- 楽天市場のショップレビューページに簡単にアクセス。
- ホークス日本一の確率。
- Yahoo! Japanの Web API、アプリケーションIDを外部に晒さないようにする。
- ツイートボタンのカスタマイズまとめ。
- getCurrentPosition は精度が出ないので watchPosition を使う。
- [ iPhone ]今居る場所の「住所」が知りたいのだ。
- Safari @iPhoneで、meta viewportを動的に生成。いつでも横幅ピッタリに収める。

コメントする