下载并引用spire.xls.dll, 使用下面的代码生成柱形图
using Spire.Xls;
namespace ExcelColumnChart
{
class Program
{
static void Main(string[] args)
{
//创建Workbook对象
Workbook workbook = new Workbook();
//获取工作表
Worksheet sheet = workbook.Worksheets[0];
//写入数据
sheet.Range["A1"].Value = "部门名称";
sheet.Range["A2"].Value = "开发部";
sheet.Range["A3"].Value = "测试部";
sheet.Range["A4"].Value = "销售部";
sheet.Range["A5"].Value = "技术支持部";
sheet.Range["B1"].Value = "部门人数";
sheet.Range["B2"].NumberValue = 121;
sheet.Range["B3"].NumberValue = 43;
sheet.Range["B4"].NumberValue = 35;
sheet.Range["B5"].NumberValue = 67;
//创建柱状图
Chart chart = sheet.Charts.Add(ExcelChartType.ColumnClustered);
//指定用于生成图表的数据区域
chart.DataRange = sheet.Range["A1:B5"];
chart.SeriesDataFromRange = false;
//指定图表所在的位置
chart.LeftColumn = 3;
chart.TopRow = 1;
chart.RightColumn = 10;
chart.BottomRow = 19;
//设置图表的名称以及x、y轴的名称
chart.ChartTitle = "部门信息";
chart.ChartTitleArea.IsBold = true;
chart.ChartTitleArea.Size = 12;
chart.PrimaryCategoryAxis.Title = "部门";
chart.PrimaryCategoryAxis.Font.IsBold = true;
chart.PrimaryCategoryAxis.TitleArea.IsBold = true;
chart.PrimaryValueAxis.Title = "人数";
chart.PrimaryValueAxis.HasMajorGridLines = false;
chart.PrimaryValueAxis.TitleArea.TextRotationAngle = 90;
chart.PrimaryValueAxis.MinValue = 0;
chart.PrimaryValueAxis.TitleArea.IsBold = true;
//设置图例的位置
chart.Legend.Position = LegendPositionType.Right;
//不填充plot area
chart.PlotArea.Fill.FillType = ShapeFillType.NoFill;
//保存工作薄
workbook.SaveToFile("output.xlsx", ExcelVersion.Version2013);
}
}
}
结果:
![](https://video.ask-data.xyz/img.php?b=https://iknow-pic.cdn.bcebos.com/0dd7912397dda144c333ab26beb7d0a20cf48668?x-bce-process=image%2Fresize%2Cm_lfit%2Cw_600%2Ch_800%2Climit_1%2Fquality%2Cq_85%2Fformat%2Cf_auto)