在x轴上具有多级标签的图表

我正在创build一个VSTO插件,其中包含一些年度数据的线图。 该数据每周包含数据点。 我想横轴在几个月内分组,如下图所示:

在这里输入图像说明

然而,我不能在VSTO的文件中find这是否可行的事情。 据我所知,一个Series只需要X轴的一维数组值。 有人对这个有经验么?

在微软论坛的帮助下,我想出了一个解决scheme( MSDN主题 )。

对于其他人想知道如何做到这一点,这是我结束了:

Chart chart = slide.Shapes.AddChart(XlChartType.xlLine).Chart; Excel.Workbook wb = (Excel.Workbook) chart.ChartData.Workbook; Excel.Worksheet ws = wb.Worksheets[1]; ws.ListObjects["Table1"].Resize(ws.Range["A1:C13"]); ws.Range["B1"].Value = "X"; ws.Range["A2"].Value = "2015"; ws.Range["A3:A7"].ClearContents(); ws.Range["A8"].Value = "2016"; ws.Range["A9:A13"].ClearContents(); ws.Range["B2"].Value = "7/15/2015"; ws.Range["B3"].Value = "8/15/2015"; ws.Range["B2:B3"].AutoFill(Destination: ws.Range["B2:B13"]); ws.Range["B2:B13"].NumberFormat = "d-mmm"; ws.Range["C1"].Value = "Y"; ws.Range["C2"].Value = "100"; ws.Range["C3"].Value = "150"; ws.Range["C2:C3"].AutoFill(Destination: ws.Range["C2:C13"]); (chart.SeriesCollection(1) as Series).Delete(); Series series = chart.SeriesCollection(1) as Series; series.Values = "=Sheet1!$C$2:$C$13"; series.XValues = "=Sheet1!$A$2:$B$13"; 

你是对的,PowerPoint缺乏这个function。

使用2个x轴标签/刻度(多级别类别标签)创build图表的技巧是数据的布局。 您需要将“年份”和“月份”值放在不同的列中。

问题是,虽然Excel支持多级别类别标签,但Powerpoint不:

在这里输入图像说明

我能够做到这一点在Excel中创build图表,并使用剪贴板对象将其复制到PowerPoint中。