MS Chart Control中X轴的光标给出了点数

时间:2014-07-20 13:37:03

标签: c# mschart

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

    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值?

1 个答案:

答案 0 :(得分:0)

我已经找到了问题所在。当我通过调试检查chart1.Series[0].Points的Xvalue和Yvalue属性时,我注意到所有Xvalue都为零,尽管x值显示在图表上。我已将双值而不是字符串传递给chart1.Series[0].Points.AddXY()方法。它解决了。

作为旁注:chart1.Series[0].IsXValueIndexed value应设为false