注: 以下の翻訳の正確性は検証されていません。AIPを利用して英語版の原文から機械的に翻訳されたものです。

チャート

チャートウィジェットのカテゴリーには、次のウィジェットが含まれます。

このページでは、チャートウィジェットで利用可能なプロパティ、ウィジェットの例、および共通 CSSについて説明します。

チャートウィジェットのプロパティ

次のテーブルでは、チャートウィジェットで利用可能なプロパティの使用方法を詳しく説明します。

属性説明データ型必須変更方法
dataSelectionEnabledユーザーが棒や散布図の点を選択できるかどうかを指定します。「Multiple」モードでは凡例の選択も利用可能です。選択されたデータは、チャートの selection.data プロパティを通じて公開されます。(パン/ズームが有効な場合は無効になります)ブール値はい直接編集
dataSelectionModeデータ選択の動作を指定します。「Single」モードでは、シングルクリックのインタラクションのみが可能です。「Multiple」モードでは、矩形による選択と cmd/ctrl+クリックのインタラクションが可能です。(パン/ズームが有効な場合は無効になります)文字列いいえ直接編集
animateチャートのデータを読み込み時、変更時、および更新時にアニメーション表示するかどうかを指定します。ブール値はい直接編集
areaSelectionEnabledユーザーがチャート上に選択領域を描画できるかどうかを指定します。(軸の種類が「Category」、データ選択が「Multiple」、軸が複数ある場合、またはパン/ズームが有効な場合は無効になります)ブール値はい直接編集
autorangePanZoomEnabled単一の軸でパンとズームが有効な場合、範囲の自動調整を適用して、データに合わせてもう一方の軸のスケールを動的に調整できます。ブール値はい直接編集
datasets以下の IDatasetModel とそのサブタイプを参照してください。IDatasetModel[]はい直接編集
zeroBoundYAxisEnabledデータセットの Y 値が0をまたがない定量的なチャートで、Y 軸の境界を0に設定できるようにします。警告:このオプションを無効にすると、視覚的に誤解を招くチャートになる可能性があります。ブール値はい直接編集
hovertooltipsEnabled = true の場合、このプロパティによってホバーしている値が決まります。ほかの場所からこの変数にリンクするには、まずテンプレート “hover”: { “xValue”: null, “yValue”: null } を使って変数を宣言する必要があります。詳しくは、IHover を参照してください。このプロパティは stackedArea を除くすべてのチャートで機能し、デフォルトは yValue です。IHoverいいえユーザーのインタラクション
labelsEnabled常時表示のラベルを有効にします。棒グラフでのみ利用可能です。選択肢には「start」、「middle」、「end」、または「outside」があります。ブール値はい直接編集
labelsPosition棒グラフのラベルの位置を指定します。選択肢には「start」、「middle」、「end」、または「outside」があります。文字列いいえ直接編集
legendEnabled凡例の表示を有効にします。位置として利用可能な選択肢には「top」、「bottom」、「left」、または「right」があります。ブール値はい直接編集
legendPosition凡例の位置です。利用可能な選択肢には「top」、「bottom」、「left」、または「right」があります。文字列いいえ直接編集
panZoomEnabledチャートでパンとズームを許可するかどうかを指定します。数値軸でのみ利用可能です。このオプションを無効にすると、スケールがリセットされます。保存してもスケールは保持されません。(データ選択が有効、領域選択が有効、またはすべての軸の種類が「Category」の場合は無効になります)ブール値はい直接編集
panZoomAxesパンとズームを有効にする軸です。利用可能な選択肢は「X and Y」、「X Only」、または「Y Only」です。文字列いいえ直接編集
selection.area現在の選択領域です。領域選択が有効な場合にのみ関連します。以下の IAreaSelection を参照してください。IAreaSelectionいいえユーザーのインタラクション
selection.data現在選択されているチャートのデータです。データ選択が有効な場合にのみ関連します。以下の IDataSelection を参照してください。IDataSelectionいいえユーザーのインタラクション
tooltipsEnabledツールチップを有効にするかどうかを指定します。ツールチップには hover で設定されたデータ値が表示されます(デフォルトは y 値です)。ブール値はい直接編集
tooltipTextツールチップに表示されるテキストです(tooltipsEnabled が true である必要があります)。通常、ホバーした値の表示に使用します。tooltipText が省略されているか空の文字列の場合、横棒グラフを除くすべてのチャートでツールチップに yValue が表示されます(横棒グラフでは xValue が表示されます)。文字列いいえ直接編集
xAxesx 軸の配列です。IAxis[]はい直接編集
yAxesy 軸の配列です。IAxis[]はい直接編集
titleチャートのタイトルです。文字列いいえ直接編集

IAxis

属性説明データ型必須変更方法
formatter軸の目盛りの書式を設定します。書式文字列は軸の種類によって異なります。linear/log については Numeral.js ドキュメント ↗を、時系列については moment.js ドキュメント ↗を参照してください。category では利用できません。小数の精度は20桁に制限されています。文字列いいえ直接編集
gridlinesEnabled軸のグリッド線を表示するかどうかを指定します。現在、カテゴリー軸以外の軸でのみ利用可能です。ブール値はい直接編集
betweenTicks軸のグリッド線を目盛りの間に配置するかどうかを指定します。デフォルトは false で、目盛り上にグリッド線を描画します。ブール値はい直接編集
name軸の名前です。ISeries の xAxisName および yAxisName で参照されます。文字列はい直接編集
position軸の位置です。x 軸の場合、位置は top または bottom にできます。y 軸の場合は left または right にできます。文字列はい直接編集
label軸に関連付けられたラベルです。文字列いいえ直接編集
scale軸の種類です。y 軸(位置が left および right)の場合、scale は linear、modifiedlog、または category にできます。x 軸(位置が top および bottom)の場合、scale は timeseries にもできます。注:現在、timeseries スケールでは、日付をエポックからの経過時間をミリ秒で表す整数として指定する必要があります。SQL の日付形式は Slate に文字列として渡されることが多いため、時系列チャートが機能しない場合は、次のように整数へのキャストを試してください。MySQL: SELECT UNIX_TIMESTAMP(date_column)*1000 AS date_number または Postgres: SELECT EXTRACT(epoch FROM date_column)*1000 AS date_number。上記の例では、新しく作成された数値列「{{query1.date_number}}}」に合わせて xValues を更新することを忘れないでください。文字列いいえ直接編集
scaleMax軸の最大値です(指定しない場合、軸の範囲は自動調整されます)。numberいいえ直接編集
scaleMin軸の最小値です(指定しない場合、軸の範囲は自動調整されます)。numberいいえ直接編集
tickInterval目盛りの値の間隔です。線形スケールの軸でのみ利用可能です。numberいいえ直接編集
tickLabelAngleカテゴリー軸の目盛りラベルを回転させます。90、0、および90を指定できます。カテゴリースケールの軸でのみ利用可能です。numberいいえ直接編集
visible軸を表示するかどうかを指定します。ブール値はい直接編集
maxZoomSpan縮小時に軸に表示される値の最大範囲です。この値を超える縮小はできません。numberいいえ直接編集
minZoomSpan拡大時に軸に表示される値の最小範囲です。この値を超える拡大はできません。numberいいえ直接編集

IAreaSelection

属性説明データ型必須変更方法
selected領域が選択されているかどうかです。ブール値はいユーザーのインタラクション
xMax選択領域の x 値の最大値です。numberはいユーザーのインタラクション
xMin選択領域の x 値の最小値です。numberはいユーザーのインタラクション
yMax選択領域の y 値の最大値です。numberはいユーザーのインタラクション
yMin選択領域の y 値の最小値です。numberはいユーザーのインタラクション

IDatasetModel

属性説明データ型必須変更元
nameデータセットの名前です。系列の値が指定されていない場合は、凡例のラベルとして使用されます。プロットの表示要素には、この名前の CSS クラスが付与されます。stringはい直接編集
rendererデータセットの描画に使用するレンダラーです。stringはい直接編集
seriesColors「系列名」項目に指定された系列名の配列に対応付けられる色の値の配列です。色は16進数(例: “#FF0000”)または CSS の色名(例: “red”)で指定できます。「系列名」配列に系列名が指定されていない場合は、色の配列で最初に指定された色がグラフ全体に適用されます。色の値が指定されていない場合は、グラフにデフォルトの Blueprint 配色が使用されます。string[]いいえ直接編集
seriesNames「色」項目に指定された色の配列の対応先となる、一意の系列名の配列です。any[]いいえ直接編集
seriesValuesデータを「系列」にグループ化するラベル(数値または文字列)の配列です。x = [1, 1]、y = [1, 2]、series = [“series1”, “series2”] の積み上げ棒グラフのデータセットでは、x=1 に1本の積み上げ棒が生成され、「series1」の棒の上に「series2」の棒が配置されます。複数の系列を持つ折れ線グラフのデータセットでは、複数の線が生成されます。any[]いいえ直接編集

ILabelsModel

属性説明データ型必須変更元
labelsグラフの値に対応するラベルの配列です。any[]はい直接編集

IRangeDatasetModel

属性説明データ型必須変更元
endValues終了値に使用するデータです。any[]はい直接編集
startValues開始値に使用するデータです。any[]はい直接編集

IXYDatasetModel

属性説明データ型必須変更元
radiusValues散布図レンダラーで、散布図の点の半径を決定するデータです。number[]いいえ直接編集
xAxisNameこの系列に関連付けられた x 軸の名前です。値を指定しない場合は、最初の x 軸になります。stringいいえ直接編集
xValuesx 値に使用するデータです。any[]はい直接編集
yAxisNameこの系列に関連付けられた y 軸の名前です。値を指定しない場合は、最初の y 軸になります。stringいいえ直接編集
yValuesy 値に使用するデータです。any[]はい直接編集
symbolValues散布図レンダラーでの各点の形状です。有効な値は “circle”、“square”、“diamond”、“cross”、“triangle”、“wye”、“star” です。凡例を使用する場合は、系列の最後の記号が凡例の記号として使用されます。最後の記号が無効または未定義の場合は、凡例は円になります。string[]いいえ直接編集

IHover

属性説明データ型必須変更元
indexグラフで現在カーソルが置かれている値の、関連するデータセット内のインデックスです。numberはいユーザーインタラクション
xValueグラフで現在カーソルが置かれている x 値です。anyはいユーザーインタラクション
yValueグラフで現在カーソルが置かれている y 値です。anyはいユーザーインタラクション

IDataSelection

属性説明データ型必須変更元
indices指定されたデータ内で選択された値のインデックスです。number[]はいユーザーインタラクション
xValuesクリックで選択された離散的な x 値です。any[]はいユーザーインタラクション
yValuesクリックで選択された離散的な y 値です。any[]はいユーザーインタラクション

アクション

アクション名説明
redrawこのアクションをトリガーすると、グラフが再描画されます。

グラフウィジェットの例

デフォルト

Copied!
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 { "animate": true, "areaSelectionEnabled": false, "dataSelectionEnabled": false, "datasets": [ { "name": "dataset1", "renderer": "line", "xValues": [], "yValues": [] } ], "labelsEnabled": false, "panZoomEnabled": false, "tooltipsEnabled": false, "xAxes": [ { "gridlinesEnabled": false, "name": "x1", "position": "bottom", "scale": "linear" } ], "yAxes": [ { "gridlinesEnabled": false, "name": "y1", "scale": "linear", "position": "left" } ] }

凡例付き棒グラフ

Copied!
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 { "animate": true, "areaSelectionEnabled": false, "dataSelectionEnabled": false, "datasets": [ { "name": "dataset1", "renderer": "bar", "xValues": "{{query1.state}}", "yValues": "{{query1.avgIncome}}" } ], "labelsEnabled": false, "legendPosition": "top", "panZoomEnabled": false, "tooltipsEnabled": false, "xAxes": [ { "gridlinesEnabled": false, "name": "x1", "position": "bottom", "label": "State", "scale": "category" } ], "yAxes": [ { "gridlinesEnabled": false, "name": "y1", "formatter": "$0,0.00", "position": "left", "label": "Average Income ($)", "scale": "linear", "scaleMax": 1000000, "scaleMin": 10000 } ] }

積み上げ棒グラフ

Copied!
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 { "animate": true, "areaSelectionEnabled": false, "dataSelectionEnabled": false, "datasets": [ { "name": "dataset1", "renderer": "stackedBar", "seriesValues": "{{query1.gender}}", "xValues": "{{query1.state}}", "yValues": "{{query1.avgIncome}}" } ], "labelsEnabled": false, "panZoomEnabled": false, "tooltipsEnabled": false, "xAxes": [ { "gridlinesEnabled": false, "name": "x1", "position": "bottom", "label": "State", "scale": "category" } ], "yAxes": [ { "gridlinesEnabled": false, "name": "y1", "formatter": "$0,0.00", "position": "left", "label": "Average Income ($)", "scale": "linear", "scaleMax": 1000000, "scaleMin": 10000 } ] }

横棒グラフ

Copied!
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 { "animate": true, "areaSelectionEnabled": false, "dataSelectionEnabled": false, "datasets": [ { "name": "dataset1", "renderer": "horizontalBar", "xValues": "{{query1.avgIncome}}", "yValues": "{{query1.state}}" } ], "labelsEnabled": false, "panZoomEnabled": false, "tooltipsEnabled": false, "xAxes": [ { "gridlinesEnabled": false, "name": "x1", "position": "bottom", "label": "Average Income ($)", "scale": "linear", } ], "yAxes": [ { "gridlinesEnabled": false, "name": "y1", "position": "left", "label": "State", "scale": "category" } ] }

複数系列のグラフ

Copied!
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 { "areaSelectionEnabled": false, "dataSelectionEnabled": false, "datasets": [ { "name": "dataset1", "renderer": "line", "seriesValues": "{{query1.series}}", "xValues": "{{query1.key}}", "yValues": "{{query1.doc_count}}" } ], "labelsEnabled": false, "panZoomEnabled": false, "tooltipsEnabled": false, "xAxes": [ { "gridlinesEnabled": false, "name": "x1", "position": "bottom", "scale": "linear" } ], "yAxes": [ { "gridlinesEnabled": false, "name": "y1", "scale": "linear", "position": "left" } ] }

散布図

Copied!
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 { "animate": true, "areaSelectionEnabled": false, "dataSelectionEnabled": false, "datasets": [ { "name": "dataset1", "radiusValues": "{{query1.pop}}", "renderer": "scatter", "xValues": "{{query1.gdp}}", "yValues": "{{query1.cpi}}" } ], "labelsEnabled": false, "panZoomEnabled": false, "tooltipsEnabled": false, "xAxes": [ { "gridlinesEnabled": false, "name": "x1", "position": "bottom", "scale": "linear" } ], "yAxes": [ { "gridlinesEnabled": false, "name": "y1", "scale": "linear", "position": "left" } ] }

チュートリアル:散布図ウィジェットを追加する

距離と時間の値を示す経路メトリクスを表示するために、散布図ウィジェットを作成するとします。左上隅のウィジェットボタンを選択し、次にグラフ > 散布図を選択して、アプリケーションに散布図ウィジェットを追加します。ウィジェットにはサンプルデータがあらかじめ入力されています。先に進む前に、右側のエディターパネルからこのデータをクリアできます。

まず、グラフウィジェットの名前を、w_routeMetrics などの識別しやすい名前に変更します。

経路の平均距離を x 軸に沿ってプロットします。そのためには、X 値を "{{q_routeMetrics.avg_distance}}" に設定する必要があります。

次に、経路の所要時間を y 軸に沿ってプロットします。データタブで、Y 値を "{{q_routeMetrics.avg_time}}" に設定します。

散布図を読み取りやすくするため、軸にラベルを追加します。軸タブを選択し、最初の X 軸オブジェクトの名前を x1 から Distance に変更して、Distance (miles) など、プロットされた情報を説明するラベルを追加します。グリッド線をオンにすると、グラフ上の各点の位置を把握しやすくなります。

散布図の x 軸

Y 軸に Duration という名前を付け、次のように設定します。

散布図の y 軸

最後に、点のサイズに変化を付けます。経路の混雑度に応じて点のサイズが変わるようにします。そのためには、データタブに戻り、半径: を "{{q_routeMetrics.num_flights}}" に設定します。

グラフをもう一度確認します。グラフが塗りつぶされてしまい、何かが正しくないように見えます。これは、半径: の値では指定された値と半径のピクセル数が1対1で対応して描画される一方、一部の経路には150便を超えるフライトがあるためです。半径の値をスケーリングする必要があります。クエリで「表示用」の値を計算すると、スケーリングできます。この値をハードコードすることもできますが、変数を使用すれば、クエリを編集せずに後から簡単に変更できます。

上部バーの変数タブを選択して、変数ウィンドウを開きます。右下で新しい変数を作成します。新しい変数に v_routeCountDisplayScale という名前を付け、値を 100 に設定します。

q_routeMetrics ウィジェットに戻り、新しい列を追加します。

COUNT(flight_id)/{{v_routeCountDisplayScale}} as num_flights_disp

ここで、各行の表示用ラベルも生成します。

CONCAT(origin, ' -> ', dest) as route_name

クエリ全体は次のようになります。

Copied!
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 SELECT origin, dest, AVG(distance) as avg_distance, AVG(actual_elapsed_time) as avg_time, COUNT(flight_id) as num_flights, COUNT(flight_id)/{{v_routeCountDisplayScale}} as num_flights_disp, CONCAT(origin, ' -> ', dest) as route_name FROM "foundry_sync"."{{v_flightTable}}" GROUP BY origin, dest ORDER BY COUNT(flight_id) DESC LIMIT 50

w_routeMetrics ウィジェットに戻り、半径: の設定を変更して、num_flights ではなく num_flights_disp 列を参照するようにします。

グラフを仕上げるために、w_routeMetrics 設定パネルの上部にあるタイトルの入力項目に、タイトル Route Metrics を入力します。

最終的に、アプリケーションは次のようになります。

散布図を含むドキュメント

X 範囲と Y 範囲を持つ折れ線グラフ

Copied!
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 { "animate": true, "areaSelectionEnabled": false, "dataSelectionEnabled": false, "datasets": [ { "name": "dataset1", "renderer": "line", "xValues": [1,2,3,4,5,6,7,8,9], "yValues": [3,4,1,4,5,4,2,4,1], "seriesValues": null, "xAxisName": "x1", "yAxisName": "y1" }, { "endValues": [3], "name": "dataset2", "renderer": "yRange", "startValues": [2] }, { "endValues": [3.5,8], "name": "dataset3", "renderer": "xRange", "startValues": [2.5,6], "seriesValues": ["Range A","Range B"] } ], "labelsEnabled": false, "panZoomEnabled": false, "tooltipsEnabled": false, "xAxes": [ { "gridlinesEnabled": true, "name": "x1", "position": "bottom", "scale": "linear", "label": "", "formatter": "\"0\"" } ], "yAxes": [ { "gridlinesEnabled": false, "name": "y1", "position": "left", "scale": "linear", "formatter": "\"0\"" } ] }

ガントチャート

ガントチャートは、時間ベースのデータをカテゴリ軸の y 軸に沿った水平バーとして表示します。ガントチャートを使用して、スケジュール、プロジェクトのタイムライン、イベントの継続時間、および項目に開始時刻と終了時刻がある任意のデータセットを可視化できます。ガントチャートは、上記で説明したチャートウィジェットのプロパティを共有します。

時系列の x 軸に沿った水平バーとして3個のイベントを表示するガントチャート。

プロパティ

IGanttDatasetModel

ガントデータセットモデルは IRangeDatasetModel と ILabelsModel を拡張します。startValues、endValues、labels プロパティについては、上記の IRangeDatasetModel と ILabelsModel のテーブルで説明しています。共通の name、renderer、seriesColors、seriesNames、seriesValues プロパティについては、IDatasetModel のテーブルで説明しています。

属性説明データ型必須変更方法
yValues各バーの y 位置を決めるカテゴリ値の配列です。各値は y 軸上の行に対応します。この配列の長さは、startValues と endValues の長さと一致する必要があります。any[]はい直接編集

x 軸には timeseries スケール、y 軸には category スケールを使用し、データセットの renderer を "gantt" に設定する必要があります。startValues、endValues、yValues の配列はすべて同じ長さである必要があります。labels を指定する場合、その長さも yValues と一致する必要があります。

アクション

アクション名説明
redrawこのアクションをトリガーすると、チャートが再描画されます。

デフォルト

Copied!
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 { "animate": true, "areaSelectionEnabled": false, "autorangePanZoomEnabled": false, "dataSelectionEnabled": false, "datasets": [ { "endValues": ["4/3/2015 9:00", "4/5/2015 9:00", "4/7/2015 9:00"], "labels": ["Label 1", "Label 2", "Label 3"], "name": "dataset1", "renderer": "gantt", "seriesValues": ["a", "b", "a"], "startValues": ["4/1/2015 9:00", "4/2/2015 9:00", "4/4/2015 9:00"], "yValues": ["Event 1", "Event 2", "Event 3"] } ], "labelsEnabled": false, "legendEnabled": false, "panZoomEnabled": false, "tooltipsEnabled": false, "xAxes": [ { "betweenTicks": false, "gridlinesEnabled": false, "name": "x1", "position": "bottom", "scale": "timeseries", "visible": true } ], "yAxes": [ { "betweenTicks": false, "gridlinesEnabled": false, "name": "y1", "position": "left", "scale": "category", "visible": true } ], "zeroBoundYAxisEnabled": true }

例

基本的なガントチャート

Copied!
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 { "animate": true, "areaSelectionEnabled": false, "dataSelectionEnabled": false, "datasets": [ { "endValues": "{{query1.endDate}}", "labels": "{{query1.taskName}}", "name": "dataset1", "renderer": "gantt", "seriesValues": "{{query1.phase}}", "startValues": "{{query1.startDate}}", "yValues": "{{query1.taskName}}" } ], "labelsEnabled": false, "legendEnabled": true, "legendPosition": "top", "panZoomEnabled": false, "tooltipsEnabled": true, "tooltipText": "{{w_ganttChart.hover.yValue}}", "xAxes": [ { "gridlinesEnabled": true, "name": "x1", "position": "bottom", "scale": "timeseries", "label": "Date" } ], "yAxes": [ { "gridlinesEnabled": false, "name": "y1", "position": "left", "scale": "category", "label": "Task" } ] }

系列の色を設定したガントチャート

Copied!
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 { "animate": true, "areaSelectionEnabled": false, "dataSelectionEnabled": false, "datasets": [ { "endValues": ["4/5/2015 9:00", "4/8/2015 9:00", "4/12/2015 9:00", "4/15/2015 9:00"], "labels": ["Design", "Develop", "Test", "Deploy"], "name": "dataset1", "renderer": "gantt", "seriesColors": ["#2965CC", "#29A634", "#D99E0B", "#D13913"], "seriesNames": ["Planning", "Engineering", "QA", "Operations"], "seriesValues": ["Planning", "Engineering", "QA", "Operations"], "startValues": ["4/1/2015 9:00", "4/4/2015 9:00", "4/8/2015 9:00", "4/11/2015 9:00"], "yValues": ["Design", "Develop", "Test", "Deploy"] } ], "labelsEnabled": false, "legendEnabled": true, "legendPosition": "right", "panZoomEnabled": false, "tooltipsEnabled": true, "tooltipText": "{{w_ganttChart.hover.yValue}}", "xAxes": [ { "gridlinesEnabled": true, "name": "x1", "position": "bottom", "scale": "timeseries", "label": "Timeline" } ], "yAxes": [ { "gridlinesEnabled": false, "name": "y1", "position": "left", "scale": "category", "label": "Phase" } ] }

ヒートグリッド

以下のテーブルでは、ヒートグリッドチャートウィジェットで利用可能なプロパティの使用方法を詳しく説明します。テーブルの後にいくつかの例を示します。

プロパティ

IAxis

属性説明データ型必須変更方法
label軸に関連付けられたラベルです。stringいいえ直接編集
position軸の位置です。x 軸の場合は上または下、y 軸の場合は左または右に配置できます。stringはい直接編集
visible軸を表示するかどうかを指定します。booleanはい直接編集

IHeatGridModel

属性説明データ型必須変更方法
cellValues各セルの値を決めるために使用するデータです。number[]はい直接編集
colorScaleヒートグリッドのセルの色を設定する線形グラデーションの作成に使用する、2色以上の色の配列です。例:cellValues = [0, 5, 10] で、色の配列が [“red”, “blue”] の場合、生成される色は赤、紫、青になります。色は16進数(例: “#FF0000”)または CSS の色名(例: “red”)で指定できます。値を指定しない場合、または色数が2より小さい場合、デフォルトでは Blueprint の @blue5 (#B9D7EA) の不透明度50%から @blue1 (#1f6b9a) までの色範囲が使用されます。string[]はい直接編集
labelFormatヒートグリッドのセルのラベル形式です。Numeral.js ↗ の書式文字列を使用します。たとえば、$0.00 は 1000.23 を $1000.23 として書式設定します。小数点以下の精度は20桁に制限されます。stringいいえ直接編集
labelsEnabled各セルの値をデフォルトのテキストとして使用する、常時表示のラベルを有効にします。booleanはい直接編集
legendLabel凡例ラベルに使用するテキストです。stringいいえ直接編集
legendPosition凡例の位置です。利用可能な選択肢は “top”、“bottom”、“left”、“right” です。値を指定しない場合は、凡例は表示されません。stringいいえ直接編集
selection選択されたヒートグリッドのセルの値です。選択が有効になっており、ユーザーが選択を行った場合にのみ関係します。以下の IHeatGridSelection を参照してください。IHeatGridSelectionいいえユーザーのインタラクション
selectionEnabledユーザーがヒートグリッド上のセルを選択できるかどうかを指定します。booleanはい直接編集
selectionMode選択時の動作を指定します。「単一」モードでは通常のクリックによるインタラクションのみを許可します。「複数」モードでは cmd/ctrl+クリックによるインタラクションを許可します。stringいいえ直接編集
xAxisカテゴリースケールの x 軸です(IAxis を参照)。IAxisはい直接編集
xValues各セルの x 座標に関連付けられたデータです。any[]はい直接編集
yAxisカテゴリースケールの y 軸です(IAxis を参照)。IAxisはい直接編集
yValues各セルの y 座標に関連付けられたデータです。any[]はい直接編集
titleチャートのタイトルです。stringいいえ直接編集

IHeatGridSelection

属性説明データ型必須変更方法
cellValuesクリックによって選択された個々の cellValues です。number[]はいユーザーのインタラクション
indices指定されたデータ内で選択された値のインデックスです。number[]はいユーザーのインタラクション
xValuesクリックによって選択された個々の x 値です。any[]はいユーザーのインタラクション
yValuesクリックによって選択された個々の y 値です。any[]はいユーザーのインタラクション

アクション

アクション名説明
redrawこのアクションをトリガーすると、チャートが再描画されます。

デフォルト

Copied!
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 { "cellValues": [], "colorScale": ["#B9D7EA", "#1F6B9A"], "labelsEnabled": false, "xAxis": { "gridlinesEnabled": false, "name": "x1", "position": "bottom", "scale": "category", "visible": true }, "xValues": [], "yAxis": { "gridlinesEnabled": false, "name": "y1", "position": "bottom", "scale": "category", "visible": true }, "yValues": [] }

円グラフ

以下のテーブルでは、円グラフウィジェットで利用可能なプロパティの使用方法を説明します。テーブルの後にいくつかの例を示します。

プロパティ

属性説明データ型必須変更方法
colors「キー」項目で指定されたキー値の配列に対応する色値の配列です。色は16進数(例: "#FF0000")または CSS の色名(例: "red")で指定できます。色値が指定されていない場合、グラフはデフォルトの Blueprint 配色を使用します。文字列[]いいえ直接編集
hovertooltipsEnabled = true の場合、このプロパティにはカーソルが置かれた円グラフのスライスに関連するデータが格納されます。詳細は、IPieHover を参照してください。IPieHoverいいえユーザーインタラクション
innerPaddingドーナツの穴を作成するために使用する、半径に対する割合です。数値いいえ直接編集
keys凡例に表示されるキーです。any[]はい直接編集
labelFormat円グラフのスライスのラベル形式です。Numeral.js ↗ の書式文字列を使用します。たとえば、$0.00 は1000.23を $1000.23 として表示します。Decimal の精度は20桁に制限されています。文字列いいえ直接編集
labelsEnabled円グラフのスライスで常時表示のラベルを有効にします。ブール値はい直接編集
legendPosition凡例の位置です。文字列はい直接編集
selection選択された円グラフのスライスの値です。選択が有効で、ユーザーが選択を行った場合にのみ適用されます。以下の IPieSelection を参照してください。IPieSelectionいいえユーザーインタラクション
selectionEnabledユーザーが円グラフのスライスと凡例の項目を選択できるかどうかを指定します。ブール値はい直接編集
selectionMode選択の動作を指定します。「単一」モードでは、単一クリックのインタラクションのみが可能です。「複数」モードでは、cmd/ctrl+クリックのインタラクションが可能です。文字列いいえ直接編集
tooltipsEnabledツールチップを有効にするかどうかを指定します。デフォルトでは、カーソルが置かれた円グラフのスライスの値がツールチップのテキストになります。ブール値はい直接編集
tooltipTextツールチップに表示されるテキストです(tooltipsEnabled が true である必要があります)。通常、ホバー時の値を表示するために使用します。tooltipText が省略されているか空の文字列の場合、ツールチップには円グラフのスライスに関連する値が表示されます。文字列いいえ直接編集
values各スライスのサイズを決定する値です。数値[]はい直接編集
titleグラフのタイトルです。文字列いいえ直接編集

IPieHover

属性説明データ型必須変更方法
indexカーソルが置かれた円グラフのスライスのインデックスです。数値はいユーザーインタラクション
keyカーソルが置かれた円グラフのスライスのキーです。anyはいユーザーインタラクション
valueカーソルが置かれた円グラフのスライスの値です。数値はいユーザーインタラクション

IPieSelection

属性説明データ型必須変更方法
indices指定されたデータ内で選択された値のインデックスです。数値[]はいユーザーインタラクション
keysクリックによって選択された、関連するキーです。any[]はいユーザーインタラクション
valuesクリックによって選択された個別の値です。数値[]はいユーザーインタラクション

アクション

アクション名説明
redrawこのアクションをトリガーすると、グラフが再描画されます。

例

円グラフ

Copied!
1 2 3 4 5 6 7 8 { "keys": "{{query1.teamName}}", "labelsEnabled": false, "legendPosition": "right", "selectionEnabled": false, "tooltipsEnabled": false, "values": "{{query1.headCount}}" }

ドーナツグラフ

Copied!
1 2 3 4 5 6 7 8 9 { "innerPadding": 0.6, "keys": "{{query1.teamName}}", "labelsEnabled": false, "legendPosition": "right", "selectionEnabled": false, "tooltipsEnabled": false, "values": "{{query1.headCount}}" }

デフォルト

Copied!
1 2 3 4 5 6 7 8 { "keys": [], "labelsEnabled": false, "legendPosition": "right", "selectionEnabled": false, "tooltipsEnabled": false, "values": [] }

ツリーマップ

ツリーマップウィジェットは、入れ子になった長方形で階層データを柔軟に可視化できます。ほかの可視化では見つけにくいパターンを把握するのに役立ちます。

ツリーマップは、エンティティ(label)の絶対量(size)を可視化するために使用します。エンティティには、任意で category と相対量(density)を設定できます。 各セルの長方形には、size に比例する面積、density と category によって定義される色、label によって指定される名前があります。

このチャートで可視化できるデータセットの例を示します。

  • 業種(category)に属する株式(label)の市場シェア(size)と価格変動率(density)

tree-map-intro-example-stocks

  • リージョン(category)別の工場所在地(label)の製品生産量(size)と偽陽性率(density)

tree-map-intro-example-factories.png

  • クラスターのノード(label)のストレージ容量(size)とストレージ使用率(density)

tree-map-intro-example-node-sizes.png

  • 世界のリージョン(category)に属する国(label)の人口(size)

tree-map-intro-example-populations.png

データ設定

  • label(任意):各セルに表示される名前
  • size:セルの長方形のサイズを決定します
  • density(任意):セルの色の濃淡を決定します
  • category(任意):セルのグループ化を決定し、それによってセルの色が決まります

デフォルトの例では、セルの長方形はセルの size に対応しています。カテゴリーは I と II の2つです。H はサイズが最も大きい(45)ため、最も大きい長方形になっています。また、H は密度が最も小さい(3)ため、最も暗い色になっています(グラデーションは色パネルの下にあるチェックボックスで反転できます)。

tree-map-default-tree-map.png

tree-map-default-data.png

色の設定

categories と densities のどちらか、または両方が有効になっているかに応じて、異なる色分け設定を利用できます。

カテゴリーと密度が有効

categories と densities の両方が有効な場合、セルの色は Hue-Saturation-Value(HSV)↗ 色空間のグラデーションに従って定義されます。各カテゴリーには色相が定義されます。色相のリスト(0から360までの数値)、またはカテゴリー名を色相にマッピングする辞書を指定できます。すべてのカテゴリーのグラデーションには、同じ開始彩度と明度が使用されます。グラデーションは、グラデーションの種類(明るくする、暗くする、彩度を上げる、彩度を下げる)と強さによって定義されます。

tree-map-all-enabled-widget.png

tree-map-all-enabled-config.png

カテゴリーのみ有効

categories のみが有効な場合、カテゴリーに対して色のリスト、またはカテゴリー名を色にマッピングする辞書を指定できます。

色は16進数(#FF0000、#00FF00)または標準の色名(例:red、green)で指定できます。

tree-map-category-enabled-widget.png

tree-map-category-enabled-config.png

密度のみ有効

densities のみが有効な場合、グラデーションの範囲として適用される色のリストを定義できます。色のグラデーションを定義するには、少なくとも2色を指定する必要があります。ただし、色を追加してグラデーションをより細かく定義することもできます。

色は16進数(#FF0000、#00FF00)または標準の色名(例:red、green)で指定できます。

tree-map-density-enabled-widget.png

tree-map-density-enabled-config.png

カテゴリーと密度が無効

categories と densities の両方が無効な場合、カラーパレットとなる色のリストを定義できます。この色のリストの長さは、データポイントの数と同じでなければなりません。

色は16進数(#FF0000、#00FF00)または標準の色名(例:red、green)で指定できます。

tree-map-all-disabled-widget.png

tree-map-all-disabled-config.png

その他の設定

次の設定を任意で行えます。

  • セルのスタイル

    • 各セルの枠線の幅
    • 枠線の色
    • セルのラベル
    • セルのツールチップ
  • 凡例

    • 凡例の位置(上、下、左、右)
    • 凡例のラベル(凡例のタイトル)
  • セルの生成方法を決めるタイリング方式。タイリング方式は d3 ↗ によって定義されています: Binary、Dice、Resquarify、Slice、Slice Dice、Squarify。

  • 選択(複数または単一)

tree-map-misc-widget.png

tree-map-misc-config.png

例

この一連の例では、投資家がポートフォリオの保有資産を可視化しようとしています。データには、株式の名前(label)、各株式への投資額(size)、株価の変動率(density)、株式の業種(category)といういくつかのディメンションがあります。

このデータをツリーマップチャートウィジェットに読み込みます。

Copied!
1 2 3 4 5 6 7 labels: ["MSFT", "AAPL", "NFLX", "AMZN", "GS", "MS", "BLK", "JPM", "XOM", "BP"] sizes: [10, 20, 5, 25, 8, 15, 18, 30, 10, 40] densities: [8, 15, -10, 10, 3, -5, -3, 4, 20, 8] categories: ["Tech", "Tech", "Tech", "Tech", "Finance", "Finance", "Finance", "Finance", "Energy", "Energy"]

例1:カテゴリーと密度が有効

tree-map-ex-1-widget.png

tree-map-ex-1-config.png

例2:密度のみ有効

この設定では、ポートフォリオのアナリストは、価格変動が最も大きい株式を確認できます。

tree-map-ex-2-widget.png

tree-map-ex-2-config.png

例3:カテゴリーのみ有効

この設定では、ポートフォリオのアナリストは、ポートフォリオ内で最も大きな割合を占める業種と、それらの業種で保有額が最も大きい株式を確認できます。

この設定を使用すると、データをより細かく表現できる点にも注目してください。たとえば、ポートフォリオ内の株式の規模を可視化し、赤、黄、緑のリスク評価に応じて色分けできます。

tree-map-ex-3-widget.png

tree-map-ex-3-config.png

例4:カテゴリーと密度が無効

この設定では、ポートフォリオのアナリストは、各株式がポートフォリオに占める割合の大きさだけを確認します。デフォルトでは、これは実質的に円グラフと同じです。

カスタムの色分け方式が必要な場合(デフォルトで設定できる範囲を超える場合)は、この設定で各四角形の色を個別に指定できる点にも注目してください。

tree-map-ex-4-widget.png

tree-map-ex-4-config.png

共通 CSS

折れ線グラフ

系列の色:

Copied!
1 .line-plot .render-area g:nth-of-type(1) path {stroke: #6a2d9f;}.line-plot .render-area g:nth-of-type(2) path {stroke:#c993f1;}

凡例の色:

Copied!
1 .legend .legend-row .legend-entry:nth-of-type(1) path {fill: #6a2d9f;}

または、

Copied!
1 .legend .legend-row .legend-entry:nth-of-type(2) path,.legend .content .legend-row:nth-of-type(2) path {fill: #c993f1;}

line-css

棒グラフ

以下は、積み上げ棒グラフ、集合棒グラフ、通常の棒グラフに適用されます。

棒の色:

Copied!
1 .bar-plot .render-area g:nth-of-type(1) rect,.bar-plot:nth-of-type(1) .render-area rect {fill: #6a2d9f;}.bar-plot .render-area g:nth-of-type(2) rect,.bar-plot:nth-of-type(2) .render-area rect {fill: #c993f1;}

凡例の色:

Copied!
1 2 3 4 5 6 7 8 .legend .legend-row .legend-entry:nth-of-type(1) path { fill: #6a2d9f; } .legend .legend-row .legend-entry:nth-of-type(2) path, .legend .content .legend-row:nth-of-type(2) path { fill: #c993f1; }

bars-css

面グラフ

以下は、積み上げ面グラフと通常の面グラフに適用されます。

面の色:

Copied!
1 .area-plot .render-area g:nth-of-type(1) path,.area-plot:nth-of-type(1) path {fill: #009900;}.area-plot .render-area g:nth-of-type(2) path,.area-plot:nth-of-type(2) path {fill: #99CC00;}

線の色:

Copied!
1 .area-plot:nth-of-type(1) .area,.line-plot .render-area g:nth-of-type(1) path {stroke: #009900;}.area-plot:nth-of-type(1) .area,.line-plot .render-area g:nth-of-type(2) path {stroke: #99CC00;}

凡例の色:

Copied!
1 .legend .legend-row .legend-entry:nth-of-type(1) path {fill: #009900;}

または:

Copied!
1 .legend .legend-row .legend-entry:nth-of-type(2) path,.legend .content .legend-row:nth-of-type(2) path {fill: #99CC00;}

area-css

円グラフ

スライスはインデックスまたは CSS クラス名で選択できます(サニタイズされたラベル名が CSS クラス名として使用されます)。

インデックスによるスタイル設定:

円グラフのスライスの色:

Copied!
1 .pie-plot .render-area .arc:nth-of-type(1) {fill: #009900;}

または:

Copied!
1 .arc:nth-of-type(2) { fill: #99CC00; }

凡例の色:

Copied!
1 2 sl-pie .legend .legend-row:nth-of-type(1) path { fill: #009900; } sl-pie .legend .legend-row:nth-of-type(2) path { fill: #99CC00; }

名前によるスタイル設定:

円グラフのスライスの色:

Copied!
1 .pie-plot .render-area .arc._A {fill: #009900;}

または:

Copied!
1 .arc._B { fill: #99CC00; }

凡例の色:

Copied!
1 2 sl-pie .legend .legend-row ._A path { fill: #009900; } sl-pie .legend .legend-row ._B path { fill: #99CC00; }

pie-css