如何游标中心点落在数据点上 C# Chart 游标中心位置的设置

Chart中 现有一组数据,如图所示:
需求:
设置游标,游标的中心点在图表对应的数据上;如下图所示:

如何游标中心点落在数据点上  C# Chart 游标中心位置的设置

文章插图
思路:
先获取鼠标对应X轴的坐标值;
【如何游标中心点落在数据点上C# Chart 游标中心位置的设置】根据X的值,获取对应的Y值;
实现:
double XVuale = Math.Round(chart1.ChartAreas[0].AxisX.PixelPositionToValue(e.X));if (XVuale == -1 || XVuale > 24)return;//与X轴的坐标设置有关double[] y = this.chart1.Series[0].Points[int.Parse((XVuale - 1).ToString())].YValues;//显示指定X轴对应的Y轴坐标double YVuale = y.Length > 0 ? y[0] : 0;chart1.ChartAreas[0].CursorX.Position = XVuale;chart1.ChartAreas[0].CursorY.Position = YVuale;
补充:
1、文中的代码写在 Chart 的事件中,代码中的 e 就来源于此;
2、获得鼠标在 Chart 中坐标的方法
double XVuale = chart1.ChartAreas[0].AxisX.PixelPositionToValue(e.X);//获得鼠标在chart中的x轴坐标double YVuale = chart1.ChartAreas[0].AxisY.PixelPositionToValue(e.Y);//获得鼠标在chart中的y轴坐标