MS图表控制中X轴的光标给出了点的数目

本文关键字:光标 MS 控制 | 更新日期: 2023-09-27 18:13:38

下面是我在图表控件上绘制内容的代码:

    private Random random = new Random();
    int gg = 0;
    private void plotChart1()
    {
        columns[0] = 0.01*gg++.ToString();
        columns[1] = random.Next(1, 50).ToString();    
        chart1.Series[0].Points.AddXY(columns[0], columns[1]);
        chart1.ResetAutoValues();
        chart1.Invalidate();
    }
    private void timer1_Tick(object sender, EventArgs e)
    {
        plotChart1();
    }

坐标轴自动更新。我可以通过MouseClick事件或CursorPositionChanged事件获得点击点的坐标。两者的结果都是一样的。

Y值是正确的,但是点击点的X值给我的是点的个数,而不是它的值。如果你看一下上面的代码:在计时器的第5次滴答时,0.05被写入X轴。如果我点击这个点,我得到5。它就像点的索引值。如何得到任意点的X值?

MS图表控制中X轴的光标给出了点的数目

我已经找出问题所在了。当我通过调试检查chart1.Series[0].Points的Xvalue和Yvalue属性时,我发现虽然图表上显示了x值,但所有的Xvalue都是零。我已经传递了双值而不是字符串到chart1.Series[0].Points.AddXY()方法。

附注:chart1.Series[0].IsXValueIndexed value应设置为false