如何使用c# .net在Excel中设置y轴最小刻度
本文关键字:设置 何使用 net Excel | 更新日期: 2023-09-27 18:06:57
我正在使用Interop excel 12.0创建一个图表。
我分配给yaxis的数据范围从7/5/2010开始到8/29/2011。但是图表上的Y轴从2010年7月12日开始到2011年8月22日结束,然而图表线的增长显示了从开始到结束的数据
myChart.Chart.ChartWizard(xlWorkSheet.get_Range("A1", "B62"),misValue, misValue, misValue,misValue, Excel.XlRowCol.xlColumns, false,
"Space Used Trend Report for databases DLP01P, DLP07P, DPN01P and DUV01P", "Date", "GB", misValue);
Font f = new System.Drawing.Font(FontFamily.GenericSansSerif, 10.0f);
myChart.Chart.ChartTitle.Characters.Font.Size = f.Size;
chartPage.HasTitle = true;
//Trend Line setting
//Creating a series
Excel.Series series = (Excel.Series)chartPage.SeriesCollection(1);
//Setting the series to Secondary (y) axis so as to format the same
series.AxisGroup = Excel.XlAxisGroup.xlSecondary;
//Setting the trendline type
Excel.Trendlines trendlines = (Excel.Trendlines)series.Trendlines(System.Type.Missing);
Excel.Trendline trendline = trendlines.Add(Microsoft.Office.Interop.Excel.XlTrendlineType.xlLinear, 2,
0, misValue, misValue, misValue, false, false, misValue);
//Creating a variable for yaxis and assigning the chart's y axis to the same
Excel.Axis yaxis = (Excel.Axis)chartPage.Axes(Excel.XlAxisType.xlCategory, series.AxisGroup);
yaxis.MajorUnit = 14;
yaxis.MinorUnit = 7;
yaxis.Format.Line.BackColor.RGB = Color.Red.ToArgb();
yaxis.Format.Line.ForeColor.RGB = Color.Red.ToArgb();
yaxis.MajorUnitScale = Excel.XlTimeUnit.xlDays;
yaxis.MinorUnitScale = Excel.XlTimeUnit.xlDays;
yaxis.MinimumScaleIsAuto = false;
yaxis.MinimumScale = ?????
如果我理解得好,这就是你要找的:在Excel中,日期是自1900年1-1-1以来的日期。如果你想在c#代码中计算,请记住,在Excel 1900中是闰年(当然,它不是,但这源于与Lotus 123的兼容性!),所以7/12/2010
将是40519.00
。
试试这样做,只是改变值
{
chartPrincipal.YAxis.ScaleRange.ValueHigh = 100;
chartPrincipal.YAxis.ScaleRange.ValueLow = 0;
}