winform chart图表中如何获得鼠标相对于xy轴的坐标位置?
privatevoidchart1_MouseMove(objectsender,MouseEventArgse){HitTestResultmyTestResult=c...
private void chart1_MouseMove(object sender, MouseEventArgs e)
{
HitTestResult myTestResult = chart1.HitTest(e.X, e.Y);
if (myTestResult.ChartElementType == ChartElementType.DataPoint)
{
int i = myTestResult.PointIndex;
DataPoint dp = myTestResult.Series.Points[i];
double doubleXValue = (dp.XValue);
double doubleYValue = (dp.YValues[0]);
chart1.Titles[1].Text = "e.X" + doubleXValue+ "e.Y " + doubleXValue;
}
else
{
this.Cursor = Cursors.Default;
}
}
这个方法只能获得已经在图表中赋值的数据点,没有办法获得其他空白区域点xy轴坐标信息。 展开
{
HitTestResult myTestResult = chart1.HitTest(e.X, e.Y);
if (myTestResult.ChartElementType == ChartElementType.DataPoint)
{
int i = myTestResult.PointIndex;
DataPoint dp = myTestResult.Series.Points[i];
double doubleXValue = (dp.XValue);
double doubleYValue = (dp.YValues[0]);
chart1.Titles[1].Text = "e.X" + doubleXValue+ "e.Y " + doubleXValue;
}
else
{
this.Cursor = Cursors.Default;
}
}
这个方法只能获得已经在图表中赋值的数据点,没有办法获得其他空白区域点xy轴坐标信息。 展开
1个回答
展开全部
横坐标是实时采集的时间,纵坐标是实时值。
假设每隔一秒采集一次共一分钟的显示。
第一秒的放到横轴60的位置,采集完一分钟后第六十一秒的数据占第六十的位置,之前的数据往前移一位,然后显示每个点,再用线连起来。
C#是一个语言,.net是一个平台,上面支持用C#或者VB .Net写代码。
另外,C#不但可以开发基于.net的应用程序,也可以开发基于WinForm的程序,这就是区别。
. NET 是 Microsoft 的 XML Web 服务平台。不论操作系统或编程语言有何差别,XML Web 服务能使应用程序在 Internet 上传输和共享数据。
假设每隔一秒采集一次共一分钟的显示。
第一秒的放到横轴60的位置,采集完一分钟后第六十一秒的数据占第六十的位置,之前的数据往前移一位,然后显示每个点,再用线连起来。
C#是一个语言,.net是一个平台,上面支持用C#或者VB .Net写代码。
另外,C#不但可以开发基于.net的应用程序,也可以开发基于WinForm的程序,这就是区别。
. NET 是 Microsoft 的 XML Web 服务平台。不论操作系统或编程语言有何差别,XML Web 服务能使应用程序在 Internet 上传输和共享数据。
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询