每当我将最小值/最大值添加到Yaxis(chart1.ChartAreas [0] .AxisY.Minimum & \ chart1.ChartAreas [0]。 AxisY.Maximum)我失去了放大图表的能力。当添加Y轴最小/最大值时无法放大MSchart
有没有办法解决这个问题?
是否有人知道缩放与最小/最大值结合是否存在限制?
每当我将最小值/最大值添加到Yaxis(chart1.ChartAreas [0] .AxisY.Minimum & \ chart1.ChartAreas [0]。 AxisY.Maximum)我失去了放大图表的能力。当添加Y轴最小/最大值时无法放大MSchart
有没有办法解决这个问题?
是否有人知道缩放与最小/最大值结合是否存在限制?
以下应使变焦:
chart1.ChartAreas[0].CursorY.IsUserEnabled = true;
chart1.ChartAreas[0].CursorY.IsUserSelectionEnabled = true;
chart1.ChartAreas[0].AxisY.ScaleView.Zoomable = true;
在轴线上设置最小/最大似乎确实防止用户选择的变焦。 我不确定您是否尝试限制缩放或提供初始缩放设置。 对于后,做到这一点,而不是使用在轴线分钟/ AX:
chart1.ChartArea[0].AxisY.ScaleView.Zoom(min, max);
我无法验证的问题。
如果我设置最小值/最大值我仍然可以放大图表例如为:
private void FillChart()
{
var dt = new DataTable();
dt.Columns.Add("X", typeof(double));
dt.Columns.Add("Y", typeof(double));
dt.Rows.Add(1, 3);
dt.Rows.Add(2, 7);
dt.Rows.Add(3, 2);
dt.Rows.Add(4, 1);
dt.Rows.Add(5, 5);
dt.Rows.Add(6, 9);
dt.Rows.Add(7, 0);
this.chart1.Series.Clear();
this.chart1.DataSource = dt;
var series = this.chart1.Series.Add("MYSERIES");
series.XValueMember = "X";
series.YValueMembers = "Y";
// set a custom minimum and maximum
chart1.ChartAreas[0].AxisY.Minimum = -10;
chart1.ChartAreas[0].AxisY.Maximum = 10;
chart1.ChartAreas[0].CursorY.IsUserEnabled = true;
chart1.ChartAreas[0].CursorY.IsUserSelectionEnabled = true;
chart1.ChartAreas[0].AxisY.ScaleView.Zoomable = true;
}
这工作完全没什么问题。
你有什么不同吗?
由于这里没有答案,但最近对线程发表了评论,并且在找到有关同一问题的答案时发现了这个线程,这里是我发现的问题。
检查图表区域光标的Interval和IntervalType值。可以启用缩放功能,但是您的间隔足够大,以至于使用最小/最大值可以使图表的整个范围都比您可以选择的间隔小。
在我的情况下,我使用DateTime作为我的坐标轴值类型,我使用'Auto'IntervalType我无法放大任何不到一天的任何事情 - 而我的图表只能覆盖10个小时,所以缩放显示为被禁用。我将IntervalType从“自动”更改为“秒”(将间隔置于1),并让我可以放大所需的详细程度。
谢谢。 我已经在代码部分,但每当我添加最大/最小值,我不能放大了。没有最小/最大它完美的作品 – Tzachi
Tzachi,你解决了这个问题? – Alex