チャートライブラリー jqPlot

チャートライブラリー jqPlot

jqPlotは無料のチャートライブラリーで
株価チャートなども扱える

ライセンスはGPL ver2になり
商用プロダクトやオープンソースで使える

http://www.jqplot.com
からダウンロードできる

ダウンロードしたら解凍し
この中で使うのは
jquery.jqplot.min.js
jquery.jqplot.min.css
pluginフォルダー

まずは簡単なグラフから
jqPlotは、プラグインを組み合わせて
グラフの描画をする

プラグインは
レンダラと呼ばれるグラフや
線を描画するプラグインと

その他のプラグインがある
チャート用のレンダラには
棒グラフ、円グラフを担当

軸ラベル用のレンダラは、x,y軸を担当

メモり用のレンダラは、日付、対数、斜め描画を担当

その他のプラグインでは、
ズーム、値の表示、トレンド線などを担当する

jqPlotでは、これらのプラグインを組み合わせて、いろいろなグラフを描画する

簡単な線を書くには
まず、HTMLファイルで

<link rel="stylesheet" href="js/jqplot/jquery.jqplot.min.css">
<script src="js/jquery.jqplot.min.js"></script>
<script src="js/jqplot/plugins/jqplot.canvasTextReaderer.min.js"></script>
<script src="js/jqplot/plugins/jqplot.canvasAxisLabelReaderer.min.js"></script>
<script src="js/jqplot/plugins/jqplot.curssor.min.js"></script>
<script src="js/jqplot/plugins/jqplot.mobile.min.js"></script>
<script src="js/jqplot/plugins/custom-basicchart.js"></script>

で必要なライブラリーを読み込む

表示領域については

<div data-role="page" id="chartbasic">
<div data-role="header">
<h1>jqPlotの基本</h1>
</div>
<div data-role="content">
<div id="chart"></div>
</div>
</div>

となる

Javascript部分は
custom-basicchart.jsで書く
var data = [
[[1,1],[2,2],[3,5],[4,2],[5,4]], //データ1
[[1,6],[2,4],[3,3],[4,4],[5,5]] //データ2
];

//プラグインの有効化
$.jqplot.configenablePlugins = true;

var opts={
title:’グラフタイトル’,

series:[
{label:’データ1′,
showMarker:false},
{label:’データ2′,
showMarker:false},
],

legend:{
show:true;
location:’ne’,
},

xaxis:{
label:’x軸ラベル’,
labelReaderer:$.jqplot.CanvasAxisLabelReaderer,
tickReaderer:$.jqplot.CanvasAxisTickReaderer,
tickOptions:{angle- 30}
},

yaxis:{
label:’y軸ラベル’,
labelReaderer:$.jqplot.CanvasAxisLabelReaderer,
tickReaderer:$.jqplot.CanvasAxisTickReaderer,
}
},
cursor:{zoom:true}
};

$(document).on(“pageshow”,”#chartbasic”,function(e){
plot = $.jqplot(“chart”,data,opts);
});

$(window).on(“orientationchange”,function(e){
plot.replot();
});

$(document).on(“pagehide”,”#chartbasic”,function(e){
plot.destroy();
});

なんとなく書き方はGoogle chart に似ている

では、解説
まず、スタイルの
jquery.jqplot.min.css

jqPlot本体になる
jquery.jqplot.min.js

そして、プラグインの
jqplot.xxx
で始まるプラグインを読み込む

ここで軸とか目盛りのカスタマイズに必要なプラグインを読み込んでいる

スマートフォンで利用するときに便利なプラグインとして
jqplot.cursor
jqplot.mobile
を入れておく

これは、スマートフォンだと
グラフの描画領域が狭くなるけど
この2つのプラグインを入れることで
グラフをタッチしてなぞると指定領域の拡大表示が可能になる

次に、jqplotでのグラフ作成

処理のJavascriptは

$.jqplot.config.enablePlugins = true;

plot = $.jqplot("chart",data,opts);

描画領域は

<div id="chart"></div>

となる

$.jqplot.config.enablePlugins
は、プラグインの利用設定
これは、ほとんどの場合プラグインは使うから true

plot = $.jqplot(“chart”,data,opts);

一番目の引数の
“chart”は、グラフを描画する要素のid
つまり、今回なら

<div id="chart"></div>

で id=”chart”になっているから

2番目の引数はデータ
3番目の引数はオプションになる

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です