我正在尝试使用以下参数初始化C#中图表的轴:
chart1.ChartAreas[0].AxisX.Maximum = 20;
chart1.ChartAreas[0].AxisX.Minimum = 0;
chart1.ChartAreas[0].AxisX.Interval = 5;
System.DateTime x1 = new System.DateTime(2016, 6, 8, 12, 00, 00);
System.DateTime x2 = new System.DateTime(2016, 6, 8, 23, 00, 00);
chart1.ChartAreas[0].AxisY.Maximum = x2.ToOADate();
chart1.ChartAreas[0].AxisY.Minimum = x1.ToOADate();
运行上面的代码后,我尝试使用以下方法将一些数据添加到图形中:
DateTime x = DateTime.Now;
chart1.Series[0].Points.AddXY(i,x.ToOADate());
(在随后的数据添加中,我会增加)
但是,一旦我初始化了两个轴,图表就不会显示任何数据。
如果我未设置Y轴的最小值和最大值,那么它将成功显示以下图。
如何初始化两个轴并继续在图表中绘制数据?
谢谢!
-----更新1 -----
现在正在工作。所做的更改:在设计器视图中,对于图表的属性,Charting / Series / YValueType已更改为DateTime。之前只有时间。
谢谢!
我尝试了以下代码,将表格控件,按钮和计时器放置在窗体中。
DateTime minValue, maxValue;
int i = 0;
public Form6()
{
InitializeComponent();
}
private void button1_Click(object sender, EventArgs e)
{
chart1.ChartAreas[0].AxisY.LabelStyle.Format = "HH:mm:ss";
minValue = DateTime.Now;
maxValue = minValue.AddSeconds(60);
chart1.ChartAreas[0].AxisX.Maximum = 20;
chart1.ChartAreas[0].AxisX.Minimum = 0;
chart1.ChartAreas[0].AxisX.Interval = 5;
System.DateTime x1 = new System.DateTime(2016, 6, 8, 12, 00, 00);
System.DateTime x2 = new System.DateTime(2016, 6, 8, 23, 00, 00);
chart1.ChartAreas[0].AxisY.Maximum = x2.ToOADate();
chart1.ChartAreas[0].AxisY.Minimum = x1.ToOADate();
timer1.Start();
}
private void timer1_Tick(object sender, EventArgs e)
{
DateTime x = DateTime.Now;
chart1.Series[0].Points.AddXY(i, x.ToOADate());
i++;
}
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句