使用Free Spire.XLS插入圖表


使用Free Spire.XLS插入圖表

 

 

前言

最近在研究Office中間件,上網搜索了下,比較出名的有兩個:AsposeSpire,兩者功能齊全,對Office的支持趨近完善,但售價不菲。仔細搜索下,發現Spire系列還有免費版的產品,相對商業版本,在性能和文件轉換功能上有縮水。通過一段時間的使用后,我發現免費版本能夠滿足我的大部分需求。所以寫下這篇文章,和大家分享一下我的使用心得,這里我使用的是Free Spire.XLS,根據文中中的數據插入圖表並保存。

 

准備

首先從CodePlexhttps://freenetexcel.codeplex.com/)上下載Free Spire.XLS,然后引用Spire.License.dllSpire.XLS.dll到工程中,如下圖所示:

                                     

步驟

1.載入一個現有的Excel文檔,里面已經包含生成圖表所需的數據。

 


Workbook wb =  new Workbook();
wb.LoadFromFile( " Test.xlsx ", ExcelVersion.Version2010);
Worksheet ws = wb.Worksheets[ 0];

 

2.創建一個條形圖表,並設置圖表的數據區域和位置。

 

// Create a coulumn clustered chart
Chart chart = ws.Charts.Add(ExcelChartType.ColumnClustered);
// Set region of chart data
chart.DataRange = ws.Range[ " A1:C5 "];
chart.SeriesDataFromRange =  false;
// Set position of chart
chart.LeftColumn =  1;
chart.TopRow =  7;
chart.RightColumn =  11;
chart.BottomRow =  30;
 

 

3. 設置圖表標題格式以及兩條坐標軸的格式。


// Chart title
chart.ChartTitle =  " Sales market by country ";
chart.ChartTitleArea.IsBold =  true;
chart.ChartTitleArea.Size =  12;
// Chart primary category axis
chart.PrimaryCategoryAxis.Title =  " Country ";
chart.PrimaryCategoryAxis.Font.IsBold =  true;
chart.PrimaryCategoryAxis.TitleArea.IsBold =  true;
// Chart primary value axis
chart.PrimaryValueAxis.Title =  " Sales(in Dollars) ";
chart.PrimaryValueAxis.HasMajorGridLines =  false;
chart.PrimaryValueAxis.MinValue =  1000;
chart.PrimaryValueAxis.TitleArea.IsBold =  true;
chart.PrimaryValueAxis.TitleArea.TextRotationAngle = - 90;
 

 

4. 顯示數據標簽,並將位置設定為“居中”。

 

// Format data labels
foreach (ChartSerie cs  in chart.Series)
{
    cs.Format.Options.IsVaryColor =  true;
    cs.DataPoints.DefaultDataPoint.DataLabels.HasValue =  true;
    cs.DataPoints.DefaultDataPoint.DataLabels.Position = DataLabelPositionType.Center;
}

 

5. 設置圖例位置為“底部”,然后保存文件到磁盤。


chart.Legend.Position = LegendPositionType.Bottom;
wb.SaveToFile( " Sample.xlsx ",ExcelVersion.Version2010);

 

生成的Excel文檔如下圖所示:

 

總結

網上不乏第三方操作excel的組件,Free Spire.XLS的優勢在於免費易用,功能齊全,但最多只能處理5個工作簿,每個工作簿最多150行數據,這些是免費版本的限制。不過對於我來說已經足夠了。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM