1

C# (interop) を使用して Excel チャートを作成しています。get_Range 関数を使用して、Excel のデータ シートから取得しています。グラフを正しく取得しています。しかし、グラフの横に凡例の名前が表示されません。series0、series1 として表示されます。私は次のコードを使用しています。

    Range chartRange;
    Object misValue = System.Reflection.Missing.Value;
    ChartObjects xlCharts = (ChartObjects)sheet0.ChartObjects(Type.Missing);
    ChartObject myChart = (ChartObject)xlCharts.Add(10, 70, 250, 250);
    Chart chartPage = myChart.Chart;
    Chart chartPage1 = myChart.Chart;
    chartRange = sheet0.get_Range("$G$45:$G$54,$AT$45:$AT$54", misValue);
    chartPage.SetSourceData(chartRange, misValue);
    chartPage.ChartType = XlChartType.xlColumnClustered;
    chartPage.Location(XlChartLocation.xlLocationAsNewSheet, "Chart");

チャートの凡例名を取得するには、get_Range メソッドで何を変更する必要がありますか?

前もって感謝します。

4

2 に答える 2

0

シリーズコレクションを繰り返して、名前を1つずつ設定してみてください。このようなもの:

foreach (Series series in myChart.SeriesCollection()){
   series.Name = "MyName";
}
于 2013-02-18T21:01:51.233 に答える
0

通常、データは、シリーズが列にある場合、データの最初の列にすべてのシリーズの X 値があり、残りの列が Y 値であり、データの最初の行にシリーズ名があるように配置されます。これは凡例に示されています。Excel がこの方法でデータを解析できることを確認するには、左上のセルが空白であることを確認します。SetSourceData のチャート範囲として、最初の列の X 値と最初の行の系列名を含む範囲全体を使用します。

于 2015-03-24T19:37:17.917 に答える