我正在尝试使用 C# 在 Excel 中创建图表。到目前为止,我所做的是用我需要绘制的数据填充 Excel 电子表格。我的电子表格上有如下数据:
T U
10 10
20 5
30 3,333333333
40 2,5
50 2
60 1,666666667
70 1,428571429
80 1,25
90 1,111111111
100 1
110 0,909090909
120 0,833333333
130 0,769230769
140 0,714285714
150 0,666666667
160 0,625
我有从第 1 行到第 40 行的数据。我想在 Excel 中创建一个图表,如下所示:
请注意,在 X 轴上,我想放置 T 列中的值(或某些值),在 Y 轴上放置 U 列中的值。
我制作了以下代码来创建图表:
object misValue = System.Reflection.Missing.Value;
Microsoft.Office.Interop.Excel.Application xla = new Microsoft.Office.Interop.Excel.Application();
Workbook wb = xla.Workbooks.Add(XlSheetType.xlWorksheet);
Worksheet ws = (Worksheet)xla.ActiveSheet;
Microsoft.Office.Interop.Excel.Range chartRange;
Microsoft.Office.Interop.Excel.ChartObjects xlCharts = (Microsoft.Office.Interop.Excel.ChartObjects)ws.ChartObjects(Type.Missing);
Microsoft.Office.Interop.Excel.ChartObject myChart = (Microsoft.Office.Interop.Excel.ChartObject)xlCharts.Add(240, 90, 468, 315);
Microsoft.Office.Interop.Excel.Chart chartPage = myChart.Chart;
chartRange = ws.get_Range("U1", "U40");
chartPage.SetSourceData(chartRange, misValue);
chartPage.ChartType = Microsoft.Office.Interop.Excel.XlChartType.xlLine;
这让我得到了以下结果:
这非常接近我的需要,但我无法设置 X 轴的值。有人可以告诉我如何将 T1 到 T40 范围内的值分配给 X 轴吗?如果可能的话,我怎样才能从图表中删除标签“Série 1”?