|
分類:[C#]
こんにちは、いつも参考にさせていただいております。
今回どうしても解決できない課題がありまして、質問させていただきます。
開発言語:C#(VisualStudio2005)
現在、C#のGUIアプリケーション上で表示している散布図を、VSTOを使用してExcelグラフとして
出力する機能を開発しております。
単純に1データ(1シリーズ)のグラフをExcelグラフとして出力するところまではできたのですが、
下記例のように、データのプロット幅?が異なる場合の出力が上手くいきません。
例)
X軸の値 データ1(Y軸の値) データ2(Y軸の値)
0 2 3
1
2 2
3 3
4 1
5
6 4 3
所々がデータがない歯抜け状態なのですが、このデータをデータ範囲を一括で指定し表示をすると
マーカーは表示されるのですが、データ間の線が表示されません。(ちなみにソースではget_Range
メソッドを使用して一括で範囲指定したRangeオブジェクトを取得し、SetSourceDataで範囲を設定
しております。)
〜ソース抜粋〜
xlBooks = (Excel._Workbook)xlSheet.Parent;
xlChart = (Excel._Chart)xlBooks.Charts.Add(Missing.Value, Missing.Value, Missing.Value, Missing.Value);
xlChart.ChartType = Excel.XlChartType.xlXYScatter;
xlRang = xlSheet.get_Range(xlSheet.Cells[1, 1], xlSheet.Cells[7, 3]);
xlChart.SetSourceData(xlRang, Excel.XlRowCol.xlColumns);
〜ここまで〜
そこで、各データ毎に(X軸1,データ1値)、(X軸2,データ2値)というように、系列毎に範囲を指定し
ようと考えているのですが、実現方法を見つけることができませんでした。
どなたか、ご存知の方がおられましたらご教授願います。
乱文で申し訳ありません。不足な情報がございましたらご指摘ください。
よろしくお願いいたします。
|