从C#将系列添加到Excel图表(气泡图)

时间:2018-09-20 11:20:15

标签: c# excel charts bubble-chart

enter image description here我已经用c#在excel中编写了一个表格。我想使用c#从此数据绘制气泡图。使用下面给出的代码,我设法为TCB_A仅添加了一个系列。 B列是y值,C列是TCB_A系列的气泡大小。如何添加其他3个系列(对于TCB_B,TCB_C和TCB_D)?任何帮助将不胜感激。

 Excel.Shape chart_shape 
=worksheet.Shapes.AddChart(Excel.XlChartType.xlBubble, 250, 10, 440, 150);
Excel.Chart chart = chart_shape.Chart;
Excel.SeriesCollection series = 
(Excel.SeriesCollection)chart.SeriesCollection();
Excel.Series series1 = series.NewSeries();
Excel.Range x_range = worksheet.get_Range("A2:A7");
Excel.Range range_a = worksheet.get_Range("B2", "C7");
//tcb_a
Excel.Series a = (Excel.Series)chart.SeriesCollection(1);
chart.SetSourceData(range_a);
a.XValues = x_range;
a.Name = "TCB_A";

如果我也将下面给出的代码放在下面,那么它将用新数据覆盖我现有的系列,结果我只能得到1个系列。

Excel.Range range_b = worksheet.get_Range("D2", "E7");
Excel.Series b = (Excel.Series)chart.SeriesCollection(1);  
chart.SetSourceData(range_b);
b.XValues = x_range;
b.Name = "TCB_B";

1 个答案:

答案 0 :(得分:0)

以下代码自动生成了这四个系列:

 Excel.Range range_a = worksheet.get_Range("A2", "I7");

如果在图表数据选择范围内选择了第一个单元格A1,则倾向于创建异常序列。或者,如果您希望将单元格A1保持在选择范围内,只需将其值设置为空白。