您需要将 x 轴属性设置为
myPane.XAxis.Title.Text = "Date";
myPane.XAxis.Type = AxisType.Date;
myPane.XAxis.Scale.Format = "dd-MMM-yy";
myPane.XAxis.Scale.MajorUnit = DateUnit.Day;
myPane.XAxis.Scale.MajorStep = 1;
myPane.XAxis.Scale.Min = new XDate(DateTime.Now.AddDays(8));
myPane.XAxis.Scale.Max = new XDate(DateTime.Now.AddDays(11));
这会给你你要求的日期;AddDays
我知道如果您想从今天开始倒计时,您可以在方法中添加减号,并且您也可以专门设置日期(只需在开始输入时查看自动完成)。
希望这可以帮助!祝你好运!
编辑:
因此,我可以通过以下方式获得这些自定义刻度:您必须使用TextObj
标签。您还必须摆脱原来的刻度:
pane1.MasterPane[0].XAxis.Scale.IsVisible = false;
pane1.MasterPane[0].XAxis.MajorTic.IsAllTics = false;
foreach (double val in x_values)
{
TextObj text = new TextObj(val.ToString(), pane1.MasterPane[0].YAxis.Scale.Min, val);
text.Location.AlignH = AlignH.Right;
text.FontSpec.Border.IsVisible = false;
text.FontSpec.Fill.IsVisible = false;
pane1.MasterPane[0].GraphObjList.Add("Mar10");
LineObj line = new LineObj(pane1.MasterPane[0].YAxis.Scale.Min, val, pane1.MasterPane[0].YAxis.Scale.Max, val);
line.Line.Style = System.Drawing.Drawing2D.DashStyle.Dash;
line.Line.Width = 1f;
pane1.MasterPane[0].GraphObjList.Add(line);
}
我从这个线程修改了这个,我认为它与你的相似,除了它是针对Y-axis
. 这有点小技巧,您必须手动添加每个。您实际上不必循环执行foreach
,我只是将其放入一个循环中,因为这就是我从另一篇文章中复制代码的方式。我希望它有效!