1.插入圖表則主要是操作ChartObject對象和Chart對象。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
<code>Workbook wb = xla.Workbooks.Add(XlSheetType.xlWorksheet);</code>
<code>Worksheet ws = (Worksheet)xla.ActiveSheet;</code>
<code>// Now create the chart.</code>
<code>ChartObjects charts= (ChartObjects)ws.ChartObjects(Type.Missing);</code>
<code>//設定圖表大小。</code>
<code>ChartObject chartObj = charts.Add(0, 0, 400, 300);</code>
<code>Chart chart = chartObj.Chart;</code>
<code>//設定圖表資料區域。</code>
<code>Range range = workSheet.get_Range(</code><code>"A1"</code><code>, </code><code>"E10"</code><code>);</code>
<code>chart.ChartWizard(range, XlChartType.xl3DColumn,miss,XlRowCol.xlColumns, 1, 1, </code><code>true</code><code>, </code><code>"标題"</code><code>, </code><code>"X軸标題"</code><code>, </code><code>"Y軸标題"</code><code>, miss);</code>
<code>//将圖表移到資料區域之下。</code>
<code>chartObj.Left = Convert.ToDouble(range.Left);chartObj.Top = Convert.ToDouble(range.Top) + Convert.ToDouble(range.Height);</code>
2.其中設定圖表區域比較關鍵,區域中包含了标題行。ChartWizard的第二個參數指明了圖表的類型,第四個參數指明了以行還是列的值作為一個資料系列,第五個參數和第六個參數則指明分别作為橫軸坐标和系列名稱的單元格。
3.以Line類型圖表為例,資料如下:

4.那麼根據第四個參數的不同會有兩種不同圖表:
<code>chart.ChartWizard(range, XlChartType.xlLine,miss,XlRowCol.xlRows, 1, 1, </code><code>true</code><code>, </code><code>"标題"</code><code>, </code><code>"X軸标題"</code><code>, </code><code>"Y軸标題"</code><code>, miss);</code>
5.在PlotBy Row的時候,會以一行的資料為一個資料系列畫一條線,并把第每行的一列值作為這一條線的标題,而把第一行的每一列作為該線的橫坐标。
<code>chart.ChartWizard(range, XlChartType.xlLine,miss,XlRowCol.xlColumns, 1, 1, </code><code>true</code><code>, </code><code>"标題"</code><code>, </code><code>"X軸标題"</code><code>, </code><code>"Y軸标題"</code><code>, miss);</code>
6.在PlotBy Column的時候,會以一列的資料為一個資料系列畫一條線,并把第每列的一行值作為這一條線的标題,而把第一列的每一行作為該線的橫坐标。
這兩種模式相同點就在于,它們都是以坐标格内的值作為縱坐标的。這裡需要注意的是,如果第五和第六個參數改為2,并不是取行的第二列或列的第二行作為标題,而是取前兩行或前兩列,比如:
<code>chart.ChartWizard(range, XlChartType.xlLine,miss,XlRowCol.xlColumns, 2, 0, </code><code>true</code><code>, </code><code>"标題"</code><code>, </code><code>"X軸标題"</code><code>, </code><code>"Y軸标題"</code><code>, miss);</code>
7.由于系列标題設定為0,是以使用了預設的“系列X”作為标題,而橫坐标則取了每列的前兩行,是以共有三條線,每條線上10個點。
博文原文
沒有整理與歸納的知識,一文不值!高度概括與梳理的知識,才是自己真正的知識與技能。 永遠不要讓自己的自由、好奇、充滿創造力的想法被現實的架構所束縛,讓創造力自由成長吧! 多花時間,關心他(她)人,正如别人所關心你的。理想的騰飛與實作,沒有别人的支援與幫助,是萬萬不能的。
本文轉自wenglabs部落格園部落格,原文連結:http://www.cnblogs.com/arxive/p/5784237.html,如需轉載請自行聯系原作者