9

我正在使用以下代码来选择和缩放我的图表部分:

chart1.ChartAreas[0].CursorX.IsUserEnabled = true;
chart1.ChartAreas[0].CursorX.IsUserSelectionEnabled = true;
chart1.ChartAreas[0].AxisX.ScaleView.Zoomable = true;
chart1.ChartAreas[0].AxisX.ScrollBar.IsPositionedInside = true;

chart1.ChartAreas[0].CursorY.IsUserEnabled = true;
chart1.ChartAreas[0].CursorY.IsUserSelectionEnabled = true;
chart1.ChartAreas[0].AxisY.ScaleView.Zoomable = true;
chart1.ChartAreas[0].AxisY.ScrollBar.IsPositionedInside = true;

它适用于具有整数类型的 x 和 y 轴的图表。

在此处输入图像描述

但是当我将系列值类型设置为 时series1.XValueType = ChartValueType.Time;,我将无法放大 x 轴。

在此处输入图像描述

当我将两个轴值类型设置为自动并使用例如添加点时,chart1.Series[0].Points.AddXY(DateTime.Now.ToLongTimeString(), rand.Next(10, 20));缩放就起作用了。

我怎样才能让我的 x 轴成为时间并且仍然能够缩放?

4

2 回答 2

17

您需要将光标上的间隔默认设置为 1.0,我遇到了百分比问题,所以我将间隔设置为 0.01,例如 1%,如下所示。您想在 Cursor 上设置 IntervalType,因为它接受日期时间类型。

chart1.ChartAreas[0].CursorX.Interval = 0.01

更多信息请访问http://msdn.microsoft.com/en-us/library/system.windows.forms.datavisualization.charting.cursor.interval%28v=vs.100%29.aspx

于 2012-09-20T16:01:45.647 回答
2

您的缩放很可能不起作用,因为您的测试时间值彼此太接近。缩放必须能够从用户选择中选择起点和终点。如果 start == end,比例视图的合理行为是什么都不做。

于 2012-07-21T21:08:59.810 回答