「Wijmo(ウィジモ)」アップデートで追加された新ウィジェットや機能を紹介
jQuery UIの標準ウィジェットを補完する高機能ライブラリ「Wijmo」の活用 第6回
ダウンロード サンプルファイル (150.3 KB)
スパークラインは軽量なチャート部品
2014J v2アップデートで盛り込まれたスパークライン(wijsparkline)は、小型のチャートをインラインで表示するウィジェットです。他のチャートウィジェットよりも小型、軽量で、図2のように1ページ内に複数のスパークラインを表示する使い方が想定されています。
図2ではWijmoが提供するグリッド(wijgrid)の要素としてスパークラインを表示しています。スパークライン指定の記述をリスト1に示します。
columns: [
// 中略
{
dataKey: "diff",
headerText: "月次純増数",
textAlignment: "center",
cellFormatter: function (args) {
if (args.row.type & $.wijmo.wijgrid.rowType.data) {
var diffSparkline = $("<div></div>") // ... (1)
.css({
height: 80,
width: 200
});
args.$container.empty() // ... (2)
.append(diffSparkline);
diffSparkline.wijsparkline({ // ... (3)
data: args.row.data.diff,
type: "area",
valueAxis: true,
origin: 0
});
return true;
}
}
},
// 中略
]
(1)でスパークラインを表示するdiv要素を作成し、(2)でグリッドに設定しています。そのdiv要素に対して(3)でスパークラインの指定を記述しています。001_wijmo_sparkline1.htmlでは純増数とMNPでこの処理を2組記述しているため、グリッドの各行にスパークラインが2個ずつ描画されます。
スパークラインの基本
それではスパークラインウィジェットの利用法をより詳しく説明します。シンプルなスパークラインを表示する例はリスト2のようになります
<script type="text/javascript">
require(["wijmo.wijsparkline"], function(){
$(function(){
$("#wijsparkline1").wijsparkline({ // スパークラインの設定 ...(1)
data: [23, 15, 3, -2, -10, 0, 10, 25, 12, -8, -15, 5, 3, 18, 14, -10],
type: "area"
});
});
});
</script>
...中略...
<!-- スパークラインを表示する要素 ...(2) -->
<div id="wijsparkline1" style="width:320px; height:240px;">
</div>
</body>
</html>
(1)でスパークラインを表示するwijsparklineの設定を行っています。ここではオプションとしてdataにグラフデータ、typeにグラフ種類("area")を設定しています。オプションについては後述します。この設定により(2)のHTML要素にスパークラインが表示されます。
リスト1を実行すると、図3のように設定されたデータがグラフ表示されます。
wijsparklineメソッドにJavaScriptオブジェクトを設定することでオプションを指定できます。主なオプションを表1に示します。
| パラメータ名 | 内容 | 初期値 |
|---|---|---|
| data | 表示するデータ(配列) | null |
| type | グラフの種類 | "line" |
| valueAxis | 正負の値を区別する | false |
| origin | 値軸をセンタリングする位置 | 0 |
| seriesStyles | 各系列のスタイル指定 | [](空配列) |
ここでグラフの種類(type)は線グラフ("line")、面グラフ("area")、棒グラフ("column")が指定できます。
オプションを指定した例をリスト3に示します。seriesStylesには正・負・ゼロのそれぞれについて色を指定しています。
$("#wijsparkline1").wijsparkline({
type: "column", // グラフ種類
seriesStyles: [{ // 表示型式
fill: "#0066ff", // 正の値の色
zeroStyle:{fill: "green"}, // ゼロの値の色
negStyle: {fill: "#ff8080"}, // 負の値の色
}],
valueAxis: true, // 正負を区別
origin: 0 // 値軸をセンタリングする位置
});
リスト3を実行すると、図5のように、正の値・ゼロの値・負の値がそれぞれ指定された色で棒グラフが表示されます。
この記事は参考になりましたか?
- jQuery UIの標準ウィジェットを補完する高機能ライブラリ「Wijmo」の活用連載記事一覧
-
- 今話題の「AngularJS」と「Wijmo(ウィジモ)」連携で広がる可能性
- 「Wijmo(ウィジモ)」アップデートで追加された新ウィジェットや機能を紹介
- jQuery Mobileを拡張する「Wijmo(ウィジモ)」モバイル対応機能
- この記事の著者
-
山田 祥寛(ヤマダ ヨシヒロ)
静岡県榛原町生まれ。一橋大学経済学部卒業後、NECにてシステム企画業務に携わるが、2003年4月に念願かなってフリーライターに転身。Microsoft MVP for Visual Studio and Development Technologies。執筆コミュニティ「WINGSプロジェクト」代表。主な著書に「独習シリーズ(Java・C#・Python・PHP・Ruby・JSP&サーブレットなど)」「速習シリーズ(ASP.NET Core・Vue.js・React・TypeScript・ECMAScript、Laravelなど)」「改訂3版JavaScript本格入門」「これからはじめるLaravel実践入門」「はじめてのAndroidアプリ開発 Kotlin編 」他、著書多数。
※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です
-
WINGSプロジェクト 吉川 英一(ヨシカワ エイイチ)
<WINGSプロジェクトについて>有限会社 WINGSプロジェクトが運営する、テクニカル執筆コミュニティ(代表 山田祥寛)。主にWeb開発分野の書籍/記事執筆、翻訳、講演等を幅広く手がける。 2026年時点での登録メンバは約50名で、現在も執筆メンバを募集中。興味のある方は、どしどし応募頂きたい。著書、記事多数。 RSS X: @WingsPro_info(公式)、@WingsPro_info/wings(メンバーリスト) Facebook
※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です
この記事は参考になりましたか?
この記事をシェア


