Spread.Sheets
パレートスパークラインの作成
Spread.Sheets > 開発者の手引き > データ視覚化とオブジェクトの管理 > スパークラインの概要 > パレートスパークラインの作成

ParetoSparklineの数式とセル値を使用して、パレートスパークラインを作成できます。

パレートスパークラインには、次のオプションを使用できます。

オプション 説明
points すべての値を保持するセル範囲を表す参照。「B2:B7」など。
pointIndex セグメントのデータ点に対応するインデックスを表す数値または参照。「1」、「D2」など。pointIndexは1以上の値である必要があります。
colorRange セグメントボックスの色を保持するセル範囲を表す参照。「D2:D7」など。オプションの設定値であり、デフォルト値は「なし」です。
target 目標線の位置を表す数値または参照。「0.5」など。オプションの設定値であり、デフォルト値は「なし」です。目標線を表示する場合、この色は「#8CBF64」となります。
target2 第2目標線の位置を表す数値または参照。「0.8」など。オプションの設定値であり、デフォルト値は「なし」です。第2目標線を表示する場合、この色は「#EE5D5D」となります。
highlightPosition 赤色で表示するセグメントの順位を表す数値または参照。「3」など。オプションの設定値であり、デフォルト値は「なし」です。たとえば、highlightPositionを「4」に設定すると、4番目のセグメントボックスの色が「#CB0000」に設定されます。highlightPositionを設定しない場合、セグメントボックスの色はcolorRangeに割り当てた色、またはデフォルト色である「#969696」に設定されます。
label セグメントのラベルを累積パーセンテージとして表示するのか(label = 1)、単一のパーセンテージとして表示するのか(label = 2)、または表示しないか(label = 0)を表す数値。オプションの設定値であり、デフォルト値は0です。
vertical ボックスの向きを垂直方向にするか水平方向にするかを表すブール値。オプションの設定値であり、デフォルト値はfalseです。

パレートスパークラインの数式には、次の書式を使用します。

=PARETOSPARKLINE(points, pointIndex, colorRange, target, target2, highlightPosition, label, vertical)

1つのスパークラインは、1グループの数式によって構成されます。したがって、グループ内のすべての数式に対し、verticalの値をtrueまたはfalseに統一する必要があります。

pointIndex(2番目の数式パラメータ)は、データ点の範囲における、各データ点の値に対応するインデックスを表します。たとえば、次の例では、インデックス「2」は「15」を参照しています。

コードの使用

次のサンプルコードは、数式グループを使用して、パレートスパークラインを作成します。

JavaScript
コードのコピー
activeSheet.addSpan(0, 0, 1, 3);
 activeSheet.getCell(0, 0, GC.Spread.Sheets.SheetArea.viewport).value("Reason for Being Late")
     .font("20px Arial")
     .hAlign(GC.Spread.Sheets.HorizontalAlign.center)
     .vAlign(GC.Spread.Sheets.VerticalAlign.center)
     .backColor("purple")
     .foreColor("white");
 activeSheet.getRange(1, 2, 6, 1, GC.Spread.Sheets.SheetArea.viewport).setBorder(new GC.Spread.Sheets.LineBorder("transparent", GC.Spread.Sheets.LineStyle.thin),
     { inside: true });
 activeSheet.setValue(1, 0, "Traffic");
 activeSheet.setValue(2, 0, "Child care");
 activeSheet.setValue(3, 0, "Public transportation");
 activeSheet.setValue(4, 0, "Weather");
 activeSheet.setValue(5, 0, "Overslept");
 activeSheet.setValue(6, 0, "Emergency");
 activeSheet.setValue(7, 0, "target");
 activeSheet.setValue(8, 0, "target2");
 activeSheet.setValue(1, 1, 20);
 activeSheet.setValue(2, 1, 15);
 activeSheet.setValue(3, 1, 13);
 activeSheet.setValue(4, 1, 5);
 activeSheet.setValue(5, 1, 4);
 activeSheet.setValue(6, 1, 1);
 activeSheet.setValue(7, 1, 0.5);
 activeSheet.setValue(8, 1, 0.8);
 activeSheet.setValue(1, 2, "#FF1493");
 activeSheet.setValue(2, 2, "#FFE7BA");
 activeSheet.setValue(3, 2, "#FFD700");
 activeSheet.setValue(4, 2, "#FFAEB9");
 activeSheet.setValue(5, 2, "#FF8C69");
 activeSheet.setValue(6, 2, "#FF83FA");
 activeSheet.addSpan(7, 2, 2, 2);
 activeSheet.getCell(7, 2, GC.Spread.Sheets.SheetArea.viewport).wordWrap(true);
 activeSheet.setValue(7, 2, 'Result: The reason 80% of the employees are late - "traffic", "child care" and "public  transportation".');
 activeSheet.setColumnWidth(0, 120);
 activeSheet.setColumnWidth(1, 80);
 activeSheet.setColumnWidth(2, 80);
 activeSheet.setColumnWidth(3, 340);
 activeSheet.setRowHeight(0, 30);
 activeSheet.setRowHeight(1, 30);
 activeSheet.setRowHeight(2, 30);
 activeSheet.setRowHeight(3, 30);
 activeSheet.setRowHeight(4, 30);
 activeSheet.setRowHeight(5, 30);
 activeSheet.setRowHeight(6, 30);
 activeSheet.setRowHeight(7, 30);
 activeSheet.setFormula(1, 3, '=PARETOSPARKLINE(B2:B7,1,C2:C7,B8,B9,4,2,false)');
 activeSheet.setFormula(2, 3, '=PARETOSPARKLINE(B2:B7,2,C2:C7,B8,B9,4,2,false)');
 activeSheet.setFormula(3, 3, '=PARETOSPARKLINE(B2:B7,3,C2:C7,B8,B9,4,2,false)');
 activeSheet.setFormula(4, 3, '=PARETOSPARKLINE(B2:B7,4,C2:C7,B8,B9,4,2,false)');
 activeSheet.setFormula(5, 3, '=PARETOSPARKLINE(B2:B7,5,C2:C7,B8,B9,4,2,false)');
 activeSheet.setFormula(6, 3, '=PARETOSPARKLINE(B2:B7,6,C2:C7,B8,B9,4,2,false)');
関連トピック