縦棒チャートは、プロットエリアの水平軸上に、データを縦棒として表します。縦棒チャートは、複数のカテゴリ間でデータを比較、分析する場合に最適です。
縦棒チャートには、ワークシートの列または行ごとにまとめたデータをプロットできます。
Spread.Sheetsでは、以下の3種類の縦棒チャートがサポートされます。以下の例では、それぞれの種類の縦棒チャートを使用して、さまざまな電子機器カテゴリ(携帯電話、ラップトップ、タブレット)に対する第1四半期、第2四半期、および第3四半期の年間売上記録を表しています。
集合縦棒チャートを使用すると、異なるカテゴリ間でさまざまな値を比較し、値を2次元または3次元の縦向きの長方形として表示できます。このチャートは通常、他のチャートと同様に、基本的な積み上げスタイルで表示することもできます。
次に、集合縦棒チャートの例を示します。
積み上げ縦棒チャートを使用すると、異なるカテゴリ間で、特定の項目の全体との関係を表し、値を2次元または3次元の縦向きの長方形として表示できます。このチャートでは、データ系列を垂直方向(縦向き)に積み上げます。
次に、積み上げ縦棒チャートの例を示します。
100%積み上げ縦棒チャートを使用すると、スプレッドシート内のすべてのカテゴリ間で、個々の値が全体に対してどれだけ貢献しているかを百分率(%)で比較できます。このチャートでは、データ系列を垂直方向に積み上げると同時に、プロットする各値が全体で100%になるように均一化されます。プロットする値は、2次元または3次元の長方形として表示されます。
次に、100%積み上げ縦棒チャートの例を示します。
次のコードは、スプレッドシートに3種類の縦棒チャートを追加する方法を示します。
JavaScript |
コードのコピー
|
---|---|
var chart_columnClustered, chart_columnStacked, chart_columnStacked100, sheet; window.onload = function () { // チャートのデータを準備します。 // 集合縦棒チャートを追加します。 // 積み上げ縦棒チャートを追加します。 // 100%積み上げ縦棒チャートを追加します。 sheet.resumePaint(); |
縦棒チャートでは、gapWidthプロパティを使用して、データ系列(第1軸のさまざまなカテゴリ)間のギャップ幅を指定できます。このプロパティに使用できる範囲は0~5の値です。デフォルト値は1です。
また、overlapプロパティを使用して、データ系列(第1軸の同じカテゴリにある)の重なりの量を設定できます。このプロパティの値は-1から1までの範囲内である必要があります。-1に設定すると、列と列の間に1つの列のギャップが指定されます。1に設定すると、列は互いに重なり合うように配置されます。
次の図は、チャートでギャップ幅と系列のオーバーラップの例を示します。
次のサンプルコードは、縦棒チャートでギャップ幅とオーバーラップ表示を設定します。
JavaScript |
コードのコピー
|
---|---|
// Spreadを初期化します。 var spread = new GC.Spread.Sheets.Workbook(document.getElementById('ss'), { sheetCount: 1 }); // アクティブシートを取得します。 var activeSheet = spread.getSheet(0); // チャートのデータを準備します。 var dataArray = [ ['年', '実績 (00円)', '目標 (00円)'], ['2013', 20, 50], ['2014', 24, 50], ['2015', 34, 50], ['2016', 32, 50], ['2017', 51, 100], ['2018', 62, 100], ['2019', 89, 100] ]; // チャートのデータを設定します。 activeSheet.setArray(0, 0, dataArray); // 列幅を設定します。 activeSheet.setColumnWidth(1, 90); activeSheet.setColumnWidth(2, 90); // 集合縦棒チャートを追加します。 chart_colClustured = activeSheet.charts.add('chart_colClustured', GC.Spread.Sheets.Charts.ChartType.columnClustered, 270, 20, 500, 400); // 集合縦棒チャートに系列を追加します。 var series = chart_colClustured.series(); series.add({ chartType: GC.Spread.Sheets.Charts.ChartType.columnClustered, axisGroup: GC.Spread.Sheets.Charts.AxisGroup.primary, name: "Sheet1!$C$1", xValues: "Sheet1!$A$2:$A$8", yValues: "Sheet1!$C$2:$C$8", }); series.add({ chartType: GC.Spread.Sheets.Charts.ChartType.columnClustered, axisGroup: GC.Spread.Sheets.Charts.AxisGroup.primary, name: "Sheet1!$B$1", xValues: "Sheet1!$A$2:$A$8", yValues: "Sheet1!$B$2:$B$8" }); // チャートからグリッド線を非表示にします。 var gridLinesAxes = chart_colClustured.axes(); gridLinesAxes.primaryCategory.majorGridLine.visible = false; gridLinesAxes.primaryValue.majorGridLine.visible = false; chart_colClustured.axes(gridLinesAxes); // タイトルを取得し、テキストを設定します。 var title = chart_colClustured.title(); title.fontSize = "24.00"; title.text = "年間販売分析"; chart_colClustured.title(title); // 系列(0)の背景色を設定します。 var seriesItem = chart_colClustured.series().get(0); seriesItem.backColor = "#A9CCE3"; chart_colClustured.series().set(0, seriesItem); // 系列(1)の背景色を設定します。 var seriesItem = chart_colClustured.series().get(1); seriesItem.backColor = "#1F618D"; // 系列のギャップ幅を設定します。 seriesItem.gapWidth = 2; // 系列のオーバーラップ表示を設定します。 seriesItem.overlap = 0.6; chart_colClustured.series().set(1, seriesItem); // チャートのデータラベルを設定します。 chart_colClustured.dataLabels ({ showValue: true, color: "black" }); // セルのスタイルを設定します。 var style = new GC.Spread.Sheets.Style(); style.font = "bold 12px Arial"; style.foreColor = "white"; style.backColor = "#5B9BD5"; style.hAlign = GC.Spread.Sheets.HorizontalAlign.center; style.vAlign = GC.Spread.Sheets.VerticalAlign.center; for (var i = 0; i < 3; i++) activeSheet.setStyle(0, i, style, GC.Spread.Sheets.SheetArea.viewport); |