我正在绘制一天泵的趋势,我每小步都会得到一个样本数据
我得到的图表全部正常工作,但我遇到的问题是试图让时间在X轴上。有一列显示每个样本数据的采集时间,但是当我尝试添加它时,它会为图表中的每个点设置时间。因为我在图表中有1440个点,它只是一小段难以理解的文本,我删除了那些代码,现在我没有。但我想弄清楚。
'Chart for Monday
With wBM.ActiveSheet.ChartObjects.Add(Left:=300, Width:=300, Top:=10, Height:=300)
.Chart.SetSourceData Source:=wBM.ActiveSheet.Range("B1:B1440"), PlotBy:=xlColumns
.Chart.ChartType = xlLine
.Left = rngChart2.Left
.Top = rngChart2.Top
.Width = rngChart2.Width
.Height = rngChart2.Height
.Chart.HasTitle = True
.Chart.ChartTitle.Text = "Monday " & Monday
.Chart.HasLegend = False
End With
到目前为止,这是我的代码。在D列中有每个点的时间,因此它将是" D1:D1440"。 有没有办法每60个点只有1个标签,或120?所以我没有这么多标签?
答案 0 :(得分:0)
从示例如下的示例数据开始:
我运行此宏来隐藏所有标记位置'不是5的倍数
Sub formateDataLabels()
Dim chrt As Chart
Set chrt = ActiveChart
Dim cnt As Long: cnt = 1
For Each lbl In chrt.SeriesCollection(1).DataLabels
If cnt Mod 5 <> 0 Then
lbl.Text = ""
End If
cnt = cnt + 1
Next lbl
End Sub
结果:
请注意,当前代码只是设置为在选定的图表上运行。将5更改为您需要的任何内容,例如50或100,并适应您当前的图表。