MESCIUS SPREAD for Windows Forms 17.0J > 開発者ガイド > シート > チャートシートの追加 |
チャートシートとは、チャートのみを含んだシートです。ワークブックに チャートシートを追加するには、EnhancedShapeEngine プロパティを True に設定して、新しいシェイプエンジンを有効にする必要があります。その後、IWorkbook インタフェースの Charts.Add() メソッドを使用して、ワークブックに チャートシートを追加できます。Charts プロパティは、指定したワークブック内のチャートのコレクションを返します。
チャートをチャット シートの現在のビューポートに収めて表示するには、以下に示すように、View.ZoomToFit プロパティを true に設定します。
fpSpread1.AsWorkbook().Charts[0].View.ZoomToFit = true;
ただし、グリッド線、セル、データなどの他の項目を含むワークシートにチャートを埋め込む場合には、ワークシートにChartを追加する必要があります。
次の図は 、チャートシートの例です。
以下のサブセクションでは、ワークブック内のさまざまなチャートシートの操作について説明します。
チャートシートはアクティブなワークシートの前後に追加できます。また、チャート シートを追加するときに、チャートシートの位置と数を指定することもできます。
次のサンプルコードは、さまざまな状況でチャートシートを追加する方法を示しています。
C# |
コードのコピー
|
---|---|
fpSpread1.Features.EnhancedShapeEngine = true; fpSpread1.AsWorkbook().ActiveSheet.SetValue(1, 1, new int[,] { { 1, 4 }, { 2, 5 }, { 3, 6 } }); //アクティブシートの前にチャートを追加します fpSpread1.AsWorkbook().Charts.Add(); fpSpread1.Sheets[0].Charts[0].DataFormula = "Sheet1!B2:C4"; fpSpread1.Sheets[0].Charts[0].ViewType = ChartViewType.View3D; //Sheet1 の前にチャートを2 つ追加します fpSpread1.AsWorkbook().Charts.Add(before: 1, count: 2); //または //fpSpread1.AsWorkbook().Charts.Add(before: "Sheet1", count: 2); fpSpread1.Sheets[1].Charts[0].DataFormula = "Sheet1!B2:B4"; fpSpread1.Sheets[2].Charts[0].DataFormula = "Sheet1!C2:C4"; //Sheet1 の後にチャートを 1 つ追加します fpSpread1.AsWorkbook().Charts.Add(after: 3, count: 1); //または //fpSpread1.AsWorkbook().Charts.Add(after: "Sheet1", count: 1); fpSpread1.Sheets[4].Charts[0].DataFormula = "Sheet1!B2:C2"; |
Visual Basic |
コードのコピー
|
---|---|
fpSpread1.Features.EnhancedShapeEngine = True fpSpread1.AsWorkbook().ActiveSheet.SetValue(1, 1, New Integer(,) { {1, 4}, {2, 5}, {3, 6}}) ' アクティブシートの前にチャートを追加します fpSpread1.AsWorkbook().Charts.Add() fpSpread1.Sheets(0).Charts(0).DataFormula = "Sheet1!B2:C4" fpSpread1.Sheets(0).Charts(0).ViewType = ChartViewType.View3D ' Sheet1 の前にチャートを2 つ追加します fpSpread1.AsWorkbook().Charts.Add(before:=1, count:=2) ' または fpSpread1.Sheets(1).Charts(0).DataFormula = "Sheet1!B2:B4" fpSpread1.Sheets(2).Charts(0).DataFormula = "Sheet1!C2:C4" ' Sheet1 の後にチャートを 1 つ追加します fpSpread1.AsWorkbook().Charts.Add(after:=3, count:=1) ' または fpSpread1.AsWorkbook().Charts.Add(after:="Sheet1", count:=1) fpSpread1.Sheets(4).Charts(0).DataFormula = "Sheet1!B2:C2" |
実行時に、ワークブックにチャートシートを追加するには、次の手順に従います。
C# |
コードのコピー
|
---|---|
fpSpread1.Features.EnhancedShapeEngine = true; fpSpread1.TabStrip.Editable = true; |
Visual Basic |
コードのコピー
|
---|---|
fpSpread1.Features.EnhancedShapeEngine = True fpSpread1.TabStrip.Editable = True |
次の図は、実行時にワークブックに チャートシートを追加する方法を示しています。
SPREADでは、ワークシート内にチャートがすでに存在する場合は、そのチャートを チャートシートに移動することができます。
次のサンプルコードは、ワークシートからチャートを チャートシートに移動する方法を示しています。
C# |
コードのコピー
|
---|---|
fpSpread1.Features.EnhancedShapeEngine = true; fpSpread1.AsWorkbook().ActiveSheet.SetValue(1, 1, new int[,] { { 1, 4 }, { 2, 3 }, { 3, 2 } }); fpSpread1.AsWorkbook().Charts.Add(before: 0, count: 2); fpSpread1.Sheets[0].Charts[0].DataFormula = "Sheet1!C2:C3"; fpSpread1.Sheets[0].Charts[0].ViewType = ChartViewType.View3D; fpSpread1.Sheets[1].Charts[0].DataFormula = "Sheet1!B2:B4"; IChart chart1 = fpSpread1.AsWorkbook().Charts[1]; IChart chart2 = fpSpread1.AsWorkbook().Charts[0]; chart1.Location(ChartLocation.Object, "Chart2"); // Chart1 を Chart2 に移動します。 chart2.Location(ChartLocation.NewSheet, "NewChartSheet"); // Chart2を新しいシートに移動します。 |
Visual Basic |
コードのコピー
|
---|---|
fpSpread1.Features.EnhancedShapeEngine = True fpSpread1.AsWorkbook().ActiveSheet.SetValue(1, 1, New Integer(,) { {1, 4}, {2, 3}, {3, 2}}) fpSpread1.AsWorkbook().Charts.Add(before:=0, count:=2) fpSpread1.Sheets(0).Charts(0).DataFormula = "Sheet1!C2:C3" fpSpread1.Sheets(0).Charts(0).ViewType = ChartViewType.View3D fpSpread1.Sheets(1).Charts(0).DataFormula = "Sheet1!B2:B4" Dim chart1 As IChart = fpSpread1.AsWorkbook().Charts(1) Dim chart2 As IChart = fpSpread1.AsWorkbook().Charts(0) chart1.Location(ChartLocation.Object, "Chart2") ' Chart1 を Chart2 に移動します chart2.Location(ChartLocation.NewSheet, "NewChartSheet") ' Chart2を新しいシートに移動します |
チャート シートは、チャートコレクションおよびシートコレクションから取得することもできます。
次のサンプルコードは、チャート コレクションおよびシートコレクションからチャートシートを取得する方法を示しています。
C# |
コードのコピー
|
---|---|
fpSpread1.Features.EnhancedShapeEngine = true; fpSpread1.AsWorkbook().ActiveSheet.SetValue(1, 1, new int[,] { { 1, 4 }, { 2, 5 }, { 3, 6 } }); fpSpread1.AsWorkbook().Charts.Add(); fpSpread1.Sheets[0].Charts[0].DataFormula = "Sheet1!B2:C4"; IChart chart1 = fpSpread1.AsWorkbook().Charts[0]; // チャートコレクションから取得します chart1 = (IChart)fpSpread1.AsWorkbook().Sheets[0]; // シートコレクションから取得します |
Visual Basic |
コードのコピー
|
---|---|
fpSpread1.Features.EnhancedShapeEngine = True fpSpread1.AsWorkbook().ActiveSheet.SetValue(1, 1, New Integer(,) { {1, 4}, {2, 5}, {3, 6}}) fpSpread1.AsWorkbook().Charts.Add() fpSpread1.Sheets(0).Charts(0).DataFormula = "Sheet1!B2:C4" Dim chart1 As IChart = fpSpread1.AsWorkbook().Charts(0) ' チャートコレクションから取得します Dim chart1 As IChart = CType(fpSpread1.AsWorkbook().Sheets(0), IChart) ' シートコレクションから取得します |