VB.NET图表的边距较小

有没有办法自定义一个条形图和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)

之后,我刚刚为我想要的大小和地点的每一行添加一个Horizo​​ntalLineAnnotation.

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

有了这个解决方法,我得到了我想要的结果.

相关文章

Format[$] ( expr [ , fmt ] ) format 返回变体型 format$ 强...
VB6或者ASP 格式化时间为 MM/dd/yyyy 格式,竟然没有好的办...
在项目中添加如下代码:新建窗口来显示异常信息。 Namespace...
转了这一篇文章,原来一直想用C#做k3的插件开发,vb没有C#用...
Sub 分列() ‘以空格为分隔符,连续空格只算1个。对所选...
  窗体代码 1 Private Sub Text1_OLEDragDrop(Data As Dat...