C# 使用C设置excel图表最小比例#
我似乎不知道如何使用C#设置excel图表的最小比例 图表的xaxis加载了列“A”中的值,这些值是hr:min值{“08:32”、“08:33”、…} 我希望轴标签从“09:00”开始,我认为设置最小比例是唯一的方法 Xaxis.MinimumScale似乎需要一个双倍值,但我想告诉它从09:00开始。下面是我的尝试,但尝试将字符串设置为双精度值时失败 谢谢C# 使用C设置excel图表最小比例#,c#,excel,charts,C#,Excel,Charts,我似乎不知道如何使用C#设置excel图表的最小比例 图表的xaxis加载了列“A”中的值,这些值是hr:min值{“08:32”、“08:33”、…} 我希望轴标签从“09:00”开始,我认为设置最小比例是唯一的方法 Xaxis.MinimumScale似乎需要一个双倍值,但我想告诉它从09:00开始。下面是我的尝试,但尝试将字符串设置为双精度值时失败 谢谢 Excel.Workbook oWB = (Excel.Workbook)oWS.Parent; Exc
Excel.Workbook oWB = (Excel.Workbook)oWS.Parent;
Excel.Series oSeries;
int length = numRows + 2;
string colname;
Excel.ChartObjects xlCharts;
Excel.ChartObject myChart;
Excel.Chart chartPage;
Excel.SeriesCollection oSeriesCollection;
...
xlCharts = (Excel.ChartObjects)oWS.ChartObjects(Type.Missing);
myChart = (Excel.ChartObject)xlCharts.Add(10, 80, 300, 250);
chartPage = myChart.Chart;
oSeriesCollection = (Excel.SeriesCollection)chartPage.SeriesCollection();
oSeries = oSeriesCollection.NewSeries();
oSeries.Name = "Actual";
oSeries.XValues = oWS.Range["A2:A" + length];
oSeries.Values = oWS.Range["A2","A"+length];
//Set the interval to 1 hour
Excel.Axis Xaxis;
//format the x-axis
Xaxis = (Excel.Axis)chartPage.Axes(Excel.XlAxisType.xlCategory,
Excel.XlAxisGroup.xlPrimary);
Xaxis.TickLabelSpacing = 60;
Xaxis.TickLabels.Offset = 130;
Xaxis.HasTitle = true;
Xaxis.AxisTitle.Text = "Time of day";
Xaxis.TickMarkSpacing = 60;
Xaxis.MinorTickMark = Excel.XlTickMark.xlTickMarkNone;
Excel.Range rg =(Excel.Range)oWS.Cells[28,1];
object d = rg.Value2;
Xaxis.MinimumScale = d;
如果您将时间(9:00)转换为分数(9/24),它可能会起作用。Excel 2003用于接受时间和日期格式的轴比例参数,但2007仅在有限的情况下接受此格式。如果将时间(9:00)转换为分数(9/24),则可能有效。Excel 2003用于接受时间和日期格式的轴比例参数,但2007仅在有限的情况下接受此格式