如何使用MSChart执行以下操作?
注意:如果边界内存在一个点,则设置轴(X / Y)。(最小/最大)imum似乎无效。
答案 0 :(得分:2)
问题3)每个轴需要一个属性; .Interval属性。如果您未设置间隔,MSChart将自动在您声明的最小值和最大值之间进行最佳拟合间隔,从而可能会更改网格线和标签的位置。
Chart1.Legends.Clear()
Chart1.Series("Series1").ChartType = SeriesChartType.FastLine
With Chart1.ChartAreas(0)
.AxisX.Maximum = 1000
.AxisX.Minimum = 0
.AxisY.Maximum = 1
.AxisY.Minimum = 0
.AxisX.Interval = 200
End With
End Sub
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Chart1.Series("Series1").Points.AddXY(100, 0.5)
End Sub
Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
Chart1.Series("Series1").Points.AddXY(200, 0.6)
End Sub
问题2): 您必须向某些系列添加至少1个数据点才能显示网格线。没有办法解决这个问题。当我想复制该行为时,我将以下系列添加到我的图表中:
Dim nSer As Series = Chart1.Series.Add("fake_Series")
nSer.ChartType = SeriesChartType.Point
nSer.MarkerSize = 0
nSer.Points.Add(2000, 2)
该点不会显示在图表上,但会显示网格线。
答案 1 :(得分:1)
我无法重新创建您的问题。当我设置轴和网格线显示然后我添加点网格线不是chnage。你似乎说他们确实改变了。这是我正在使用的代码。如果我能看到示例代码,我可以提供帮助。
Chart1.Series("Series1").ChartType = SeriesChartType.FastLine
Chart1.ChartAreas(0).AxisX.Maximum = 1000
Chart1.ChartAreas(0).AxisX.Minimum = 0
Chart1.ChartAreas(0).AxisY.Maximum = 1
Chart1.ChartAreas(0).AxisY.Minimum = 0
Chart1.Series("Series1").Points.AddXY(100, 0.5)
Chart1.Series("Series1").Points.AddXY(200, 0.6)