Skip to main content

This is documentation for Caché & Ensemble. See the InterSystems IRIS version of this content.Opens in a new tab

For information on migrating to InterSystems IRISOpens in a new tab, see Why Migrate to InterSystems IRIS?

Highcharts のヘルパー・プラグイン

Highcharts ヘルパー・プラグインは、Highcharts ライブラリのサポートを提供します。このプラグインは、モバイル・デバイスでの使用に最も適しています。Highcharts の詳細は、http://www.highcharts.com/Opens in a new tab を参照してください。

ページ・クラスへの Highcharts の追加

必要な Highcharts ファイルの追加

このセクションにリストされているファイルは、Highcharts 4.0.4 リリースおよび jQuery 2.0.3 リリースに含まれています。これらがまだシステムにインストールされていない場合、Highcharts は http://code.highcharts.com/zips/Highcharts-4.0.4.zipOpens in a new tab で、jQuery は https://code.jquery.com/jquery/Opens in a new tab で入手できます。

説明では、Highcharts ファイルは、<install-dir>/csp/broker のサブディレクトリ (名前は highcharts-4-0-4) にあることを前提としています (詳細は、“ページ・クラスへのプラグインの追加” を参照)。以下のファイルを使用可能にする必要があります。

  • /js/highcharts.js

Highcharts は jQuery 2.0.3 ライブラリも必要とします。以下のファイルが /csp/broker に含まれている必要があります。

  • jquery-2.0.3.min.js

以下のファイル名文字列を、ページ・クラスの JSINCLUDES パラメータに追加します。Caché では、/csp/broker がすべての相対パスのルート・ディレクトリであると想定しています。

  • JSINCLUDES ファイル名は以下のとおりです。

    "jquery-2.0.3.min.js, js/highcharts.js"

    ファイルは、パラメータにリストされる順序でロードされることに注意してください。この場合、Highcharts ライブラリは jQuery ライブラリに依存するため、jQuery ライブラリが最初にリストされる必要があります。

Highcharts ヘルパー・プラグインの登録

以下の例は、Chart.js ヘルパーを pageContents XData ブロックで登録する方法を示しています (詳細は、“ページ・クラスへのプラグインの追加” を参照)。この例では、既定のページ・マネージャを使用していますが、どのページ・マネージャでも動作します。

  <mojo:mojoDefaultPageManager>
    <mojo:highCharts-4.0.4-Helper/>
  </mojo:mojoDefaultPageManager>

Highcharts ヘルパー・プラグインは、他のページ・マネージャおよびヘルパー・プラグインと共に使用できます。Chart.js ヘルパー・プラグインも使用されている場合、いくつかのプラグイン競合が発生します (詳細は、この章で後述する “Highcharts ヘルパー・レイアウト・オブジェクト” を参照してください)。

その他のオプションおよび要件

このプラグインの詳細は、"クラス・リファレンス" の %ZEN.Mojo.Plugin.highCharts404HelperOpens in a new tab を参照してください。

Note:
Highcharts バージョン 4.0.1 のサポート

%ZEN.Mojo.Plugin.highCharts401HelperOpens in a new tab プラグイン・クラスも使用可能で、以前の Highcharts バージョン 4.0.1 のサポートを提供します。使用法は、バージョン 4.0.1 の highcharts.js が使用されている点を除き、バージョン 4.0.4 と同じです。また、pageContents XData ブロックにプラグインを登録するために、以下の要素を使用します。

  <mojo:highCharts-4.0.1-Helper/>

テンプレート・クラスでの Highcharts の使用

Highcharts レイアウト・オブジェクト

$chart レイアウト・オブジェクトには、タイプ別に指定されたグラフが表示されます (既定では $barchart)。特定のグラフ・タイプを表示するレイアウト・オブジェクトのリストについては、“Highcharts ヘルパー・レイアウト・オブジェクト” を参照してください。

カスタム Highcharts レイアウト・オブジェクト・メソッド

以下のメソッドは、すべての適切なレイアウト・オブジェクト内で使用できます。

  • $refresh() — レイアウト・オブジェクトの HTML を再レンダリングします。

Highcharts ヘルパー・プラグイン・メソッド

このヘルパー・プラグインには、%ZEN.Mojo.Plugin.baseHelperPluginOpens in a new tab から継承されたもの以外のユーティリティ・メソッドは含まれていません。

Highcharts ライブラリへの直接アクセス

このプラグインは、Highcharts ライブラリ関数への直接アクセスを提供しません。

イベント処理

この章で後述する “Highcharts イベントへの onselect() の実装” を参照してください。

Highcharts ヘルパー・レイアウト・オブジェクト

$chart レイアウト・オブジェクトには、タイプ別に指定されたグラフが表示されます (既定では $barchart)。また、Highcharts ヘルパー・プラグインは、以下のリストに記載された個々のグラフ・タイプのレイアウト・オブジェクトを提供します。このリストは、Highcharts ヘルパー・プラグインで提供されるレイアウト・オプションのクイック・リファレンスとして使用できます。詳細なリファレンス情報については、プラグイン・ドキュメント・アプリケーションを使用してください (“プラグイン・ドキュメントおよびウィジェット・リファレンス・アプリケーションの使用” を参照)。

$areachart $boxplotchart $errorbarchart $piechart $splinechart
$arearangechart $bubblechart $funnelchart $pyramidchart $waterfallchart
$areasplinechart $chart $gaugechart $scatterchart  
$areasplinerangechart $columnchart $heatmapchart $serieschart  
$barchart $columnrangechart $linechart $solidgaugechart

Highcharts ヘルパーと Chart.js ヘルパーの両方が同じ pageContents XData ブロックに登録されている場合、次のオブジェクトのプラグイン競合を解決する必要があります。$chart$barchart$linechart$piechart。Highcharts に有利になるようにすべてのプラグイン競合を解決するには、pageContents で Chart.js の前に Highcharts をリストします。詳細は、“プラグイン競合の検出と解決” を参照してください。

Highcharts イベントへの onselect() の実装

クリック・イベントでは、すべての HighCharts レイアウト・オブジェクトに既定のイベント・ハンドラを割り当てられます。これらの既定を変更するには、イベントを処理するために contentTemplate.onselect() メソッドのオーバーライドを実装します ("Zen Mojo の使用法" の “イベント処理” を参照)。

グラフ・レイアウト・オブジェクトがクリックされると、プラグインは以下の引数を onselect() に渡します。

  • key — 選択されたレイアウト・オブジェクトのキー

  • value — 値の配列

  • docViewIddocumentView の ID

グラフは value データ・オブジェクトによって決定されます。onselect() に渡される既定の value 引数は、レイアウト・オブジェクトがクリックされる場所に応じて変わります。

  • グラフ内のあるポイントがクリックされると、value のプロパティは seriesIndexdataIndex になります。これらのプロパティにはそれぞれシリーズとデータ・ポイントのインデックスが含まれます。

    動作をオーバーライドするには、レイアウト・オブジェクトの options.plotOptions.series.point.events プロパティを定義します (オプションの詳細は、http://api.highcharts.com/highcharts#plotOptions.series.point.events.clickOpens in a new tab を参照)。

  • (グラフ内のあるポイントでなく) グラフの背景がクリックされると、value のプロパティは chartXchartY になります。これらのプロパティにはクリックされたスポットの X と Y の位置が含まれます。

    この動作をオーバーライドするには、レイアウト・オブジェクトの options.chart.events.click プロパティを定義します (オプションの詳細は、http://api.highcharts.com/highcharts#chart.events.clickOpens in a new tab を参照してください)。

"ウィジェット・リファレンス" の Highcharts コードには、これらのイベント・オーバーライドの実施例が含まれています。

Highcharts プラグインのサンプル・コードの使用

"ウィジェット・リファレンス" では、Highcharts ヘルパーのインタラクティブ・ウィジェットのサンプルを提供します。このリファレンスには、実施例、詳細な説明、およびユーザ自身のアプリケーションに切り取って貼り付けることができるソース・コードが含まれています。

FeedbackOpens in a new tab