mschart 改刻度 的显示的属性

2024-12-23 09:44:39
推荐回答(1个)
回答1:

贴一段我的代码:
2天的数据(24个小时),2条数据线,X轴24小时,Y轴刻度取整(有正负),
有不懂得可以问我
With Chart1.Plot.Axis(VtChAxisIdY).ValueScale '手工确定 y 坐标轴(数据坐标轴)的刻度。
.Auto = False
Max_day = Max_Today
Min_day = Min_Today
If Max_day < Max_Lastday Then Max_day = Max_Lastday '坐标取2天中的最大值
If Min_day > Min_Lastday Then Min_day = Min_Lastday '最小值坐标取2天中的最小值
If Min_day >= 0 Then ' 最小值 > 0
.Minimum = Min_day / 1.2
.Maximum = Max_day * 1.1
End If
If Min_day < 0 And Max_day > 0 Then ' 最小值 < 0 和最大值 > 0
.Minimum = Min_day * 1.1
.Maximum = Max_day * 1.1
End If
If Max_day < 0 Then ' 最大值 < 0
.Minimum = Min_day * 1.1
.Maximum = Max_day / 1.2
End If
.Maximum = CLng(.Maximum)
If .Maximum > 1000 Then .Maximum = (.Maximum \ 100 + 1) * 100
If 1000 >= .Maximum And .Maximum > 100 Then .Maximum = (.Maximum \ 10 + 1) * 10
End With
With Chart1.Plot.Axis(VtChAxisIdX) 'X轴设置
'.ValueScale.MajorDivision = 24
'.ValueScale.MinorDivision = 24
.CategoryScale.Auto = False '设置为人工缩放。
.CategoryScale.DivisionsPerLabel = 12 ' '每12个单位显示标签。
.CategoryScale.DivisionsPerTick = 12 ' '每12个单位显示刻度。
.CategoryScale.LabelTick = True '在刻度标记顶端显示标签。
End With