有没有办法自定义第一个条形图和Y轴的边距?
我知道有可能将IsMarginVisible设置为False:
- .AxisX.IsMarginVisible = False
但是我不想完全删除边框,我只想调整一下.在这里,我想调整“勾号”和标签文本之间的边距.这是一个例子:
这是图表现在如何
你有一个想法如何解决这个问题吗?
不幸的是,它看起来像没有保证金的方式,我会喜欢一个.但是我今天偶然发现这篇文章:
http://support2.dundas.com/Default.aspx?article=869
我的解决方法是将MajorTickMark设置为我想要的边距大小.然后我将颜色设置为透明.
- Chart1.ChartAreas(0).AxisY.MajorTickMark.Size = size
- Chart1.ChartAreas(0).AxisY.MajorTickMark.LineColor = Color.FromArgb(0,0)
之后,我刚刚为我想要的大小和地点的每一行添加了一个HorizontalLineAnnotation.
- Dim minValue As Double = Chart1.ChartAreas("ChartArea").AxisY.Minimum
- Dim maxValue As Double = Chart1.ChartAreas("ChartArea").AxisY.Maximum
- Dim iteration As Integer = CInt((Math.Abs(minValue) + Math.Abs(maxValue )) / interval)
- For i As Integer = 0 To iteration
- Dim line As New HorizontalLineAnnotation()
- With line
- .AxisX = Chart1.ChartAreas("ChartArea").AxisX
- .AxisY = Chart1.ChartAreas("ChartArea").AxisY
- .AnchorX = 0
- .Y = i * interval - Math.Abs(minValue)
- .AnchorOffsetX = offset
- .Height = 0
- .LineWidth = 1
- .Width = (5 / Chart1.Width.Value * 1240)
- .LineColor = Color.FromArgb(128,128,128)
- End With
- Chart1.Annotations.Add(line)
- Next
有了这个解决方法,我得到了我想要的结果.