我有一个包含4个系列的图表。每个系列都会在不同时间添加,具体取决于应用功能的打开/关闭功能。所有系列都在x轴上:
DateTime.Now.ToString("mm:ss")
所以我认为在任何时候系列数据都可用,它们将被添加到图表中,当时发生在x轴上。看起来不是那样的。此图表显示蓝线和红线。蓝色线首先开始,然后几秒钟后我检查了激活红线的checkBox2,这恰好发生在27:38(在蓝线上可以看到一个小滴)。我不明白为什么红线从图表的最左边开始而不是在触发时(27:38)。
这是我的代码:
string reqTemp = textBox9.Text;
textBox2.Text = avTemp.ToString("F");
this.chart1.Series["Actual Temperature"].Points.AddXY(DateTime.Now.ToString("mm:ss"), avTemp);
if (checkBox2.Checked == true)
{
this.chart1.Series["Requested Temperature"].Points.AddXY(DateTime.Now.ToString("mm:ss"), reqTemp);
}
如果在第一个系列开启后已经开始运行,我怎么能添加系列?基本上所有系列都共享相同的x轴。
答案 0 :(得分:0)
所有系列都在x轴上:
DateTime.Now.ToString("mm:ss")
我将其读作:所有X值都添加为格式化字符串;这通常是一件坏事,因为这样做 X值已成为全部0s
,读作:无意义。
如果您想保留DateTime
值,则需要使用有效的X值添加DataPoints
!
因此,您应将其添加为AddXY(yourDateTimeXValue, yourYValue);
并将Format
设置为
chart1.ChartAreas[0].AxisX.LabelStyle.Format = "mm:ss";