gpt4 book ai didi

c# - 根据日期时间间隔(半天以内)在折线图上突出显示数据点 c# - Visual Studio 2008

转载 作者:太空宇宙 更新时间:2023-11-03 13:37:34 28 4
gpt4 key购买 nike

我正在制作一个包含 4 个系列的图表:x 轴是日期,y 轴从 -10 到 10。每个数据点(无论系列)都位于不同的日期,尽管系列确实代表不同的测量值。

我已经创建了从 SQL 查询填充的图表,并获得了一条垂直线以与光标一起水平移动。接下来我想做的(但已经被难倒了)是将垂直线的位置与数据点(无论是哪个系列)进行比较,并在视觉上突出显示该点(并提取 x/y 值以进行向下挖掘图表信息)。

我对如何逐步浏览不同的系列有一些想法,但我不知道如何围绕我的滚动垂直线创建一个日期时间窗口(大约半天)——如何连接它时间序列中数据点的垂直线。也许我只是没有正确思考问题?

这是我的鼠标移动代码,但我没有得到任何适用于相关部分的代码:

private void calCheckChart_MouseMove(object sender, MouseEventArgs e) {
// Set style of cursor over chart, including dotted vertical line

calCheckChart.ChartAreas[0].CursorX.IsUserEnabled = true;
calCheckChart.ChartAreas[0].CursorX.Interval = 0;
calCheckChart.ChartAreas[0].CursorX.LineColor = Color.Black;
calCheckChart.ChartAreas[0].CursorX.LineWidth = 1;
calCheckChart.ChartAreas[0].CursorX.LineDashStyle = ChartDashStyle.Dot;

// Move the vertical line with cursor
Point cursorDate = new Point(e.X);
calCheckChart.ChartAreas[0].CursorX.SetCursorPixelPosition(cursorDate, true);

// ...
}

感谢您花时间查看此内容。非常感谢任何见解。

最佳答案

我想通了!从我在前面的代码中中断的地方,我首先确定我的 CursorX 位置值正在输出什么,这是 OADate。一旦我知道了这一点,我就为我的每个系列构建了一个 foreach 语句(如下所示):首先初始化数据点 (pt) 的视觉属性,然后检查数据点是否落在以 为中心的 0.9 天间隔内光标 (CursorX-0.4 < pt < CursorX+0.5) 如果是这样,请更改标记类型/大小。然后,我对图表上的 4 个系列中的每一个都使用相同的 foreach(并附上 if 语句),仅更改系列的索引。

因此,这会在系列之间跳到所选范围内的任何数据点,如果它们应该落在同一日期,还会选择多个系列中的多个数据点。

          // Scan through series and find the nearest datapoint within a given time interval
foreach (DataPoint pt in calCheckChart.Series[0].Points)
{
// Initialize point attributes.
pt.MarkerStyle = MarkerStyle.None;
// Check if the cursor's x-value is the near a point in series, and if so highlight it
if (pt.XValue > calCheckChart.ChartAreas[0].CursorX.Position - 0.4 && pt.XValue < calCheckChart.ChartAreas[0].CursorX.Position + 0.5)
{
pt.MarkerStyle = MarkerStyle.Circle;
pt.MarkerSize = 8;
// toolStripStatusLabel1.Text = pt.YValues[0].ToString();
}
}

// ...

关于c# - 根据日期时间间隔(半天以内)在折线图上突出显示数据点 c# - Visual Studio 2008,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18219758/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com