文檔金喜正規買球>>Spire.XLS 系列教程>>Spire.XLS 圖表系列教程:C# Excel 自定義數據標簽
Spire.XLS 圖表系列教程:C# Excel 自定義數據標簽
Spire.XLS是一款專業的Excel控件,無需安裝微軟Excel,也能擁有Excel的全套功能,能夠為工廠智能化提供完善的Excel需求。
之前介紹過如何設置現有Excel圖表的數據標簽樣式,今天本文將著重介紹如何使用Spire.XLS來自定義數據標簽以及更改現有Excel文檔中數據標簽的一些其他設置,比如內容,位置等。
使用工作表里面其他單元格的數據自定義數據標簽
代碼如下:
//實例化一個Workbook對象并聲明版本 Workbook wb = new Workbook(); wb.Version = ExcelVersion.Version2010; //獲取第一個工作簿 Worksheet ws = wb.Worksheets[0]; //在工作薄中加入數據 ws.Range["A1"].Style.Font.IsBold = true; ws.Range["B1"].Style.Font.IsBold = true; ws.Range["C1"].Style.Font.IsBold = true; ws.Range["A1"].Text = "月份"; ws.Range["A2"].Text = "一月"; ws.Range["A3"].Text = "二月"; ws.Range["A4"].Text = "三月"; ws.Range["A5"].Text = "四月"; ws.Range["B1"].Text = "支出"; ws.Range["B2"].NumberValue = 251; ws.Range["B3"].NumberValue = 515; ws.Range["B4"].NumberValue = 454; ws.Range["B5"].NumberValue = 874; ws.Range["C1"].Text = "自定義DataLabel"; ws.Range["C2"].Text = "自定義DataLabel1"; ws.Range["C3"].Text = "自定義DataLabel2"; ws.Range["C4"].Text = "自定義DataLabel3"; ws.Range["C5"].Text = "自定義DataLabel4"; //設置表格列寬 ws.SetColumnWidth(3, 20); Chart chart = ws.Charts.Add(ExcelChartType.ColumnClustered); chart.DataRange = ws.Range["A1:B5"]; //指定系列 chart.SeriesDataFromRange = false; chart.PrimaryValueAxis.HasMajorGridLines = false; //設置圖表的位置 chart.LeftColumn = 4; chart.TopRow = 2; chart.RightColumn = 11; chart.BottomRow = 19; //使用文檔中其他單元格的數據自定義datalabel chart.Series[0].DataPoints.DefaultDataPoint.DataLabels.ValueFromCell = ws.Range["C2:C5"]; //為數據標簽設置楔形標注 chart.Series[0].DataPoints.DefaultDataPoint.DataLabels.HasWedgeCallout = true; //保存文檔到本地并打開 wb.SaveToFile("自定義數據標簽.xlsx", ExcelVersion.Version2010); System.Diagnostics.Process.Start("自定義數據標簽.xlsx");
效果圖如下:
更改現有文檔中數據標簽的設置
代碼如下:
//加載剛剛得到的文檔 Workbook workbook = new Workbook(); workbook.LoadFromFile("自定義數據標簽.xlsx"); //獲取第一個工作表以及表里面的第一個圖表 Worksheet sheet = workbook.Worksheets[0]; Chart chart = sheet.Charts[0]; //獲取該圖表的第一個系列 ChartSerie chartSeries = chart.Series[0]; //獲取該系列的第一個DataPoint的數據標簽 ChartDataLabels cslabel = chartSeries.DataPoints[0].DataLabels; //修改數據標簽內容并把設置內容文字的字體和顏色 cslabel.Text = "已更改"; cslabel.FontName = "楷體"; cslabel.Color = Color.Red; //設置顯示圖例項標示 cslabel.HasLegendKey = true; //設置數據標簽的位置居中 //cslabel.Position = DataLabelPositionType.Center; //自定義數據標簽的位置,默認的原點在圖表左上角 cslabel.IsYMode = true; cslabel.IsXMode = true; cslabel.Y =1200; cslabel.X = 600; //設置顯示引導線(任意設置一個DataPoint會對整個系列生效, //但是只有自定義數據標簽位置之后才會顯示效果) cslabel.ShowLeaderLines = true; //取消楔形標注(任意設置一個DataPoint會對整個系列生效) cslabel.HasWedgeCallout = false; //保存到本地并打開 workbook.SaveToFile("更改數據標簽設置.xlsx"); System.Diagnostics.Process.Start("更改數據標簽設置.xlsx");
效果圖如下: