|
▼L-way さん:
こんばんは。
>グラフ描写部のソースは同一なのですが、
>標準グラフの設定が「散布図(平滑線)」の場合は、横軸の周波数がちゃんと表示されますが、
>標準グラフの設定が「散布図以外」になっていると、横軸が1からの部分しか船が描写されません。
よく検証してなくてゴメンですが、
標準グラフは変更なしで、
代わりに
グラフの元データ範囲を選択してから(もちろん、マクロ内で)グラフの種類を
宣言してみてはどうでしょう?
'-----------------------------------
Sub Test2()
Dim SourceRange As Range
Dim gr As Range
Dim MaxValue#
MaxValue = 300 '??? '◆要 変更
With ActiveSheet
Set SourceRange = .Range("A1").CurrentRegion
SourceRange.Select '◆追加
Set gr = .[D5].Resize(19, 8) '◆要 変更
With .ChartObjects.Add(gr.Left, gr.Top, gr.Width, gr.Height)
.Name = "グラフ1"
.Chart.ChartType = xlXYScatterSmoothNoMarkers '◆順番変更
.Chart.SetSourceData SourceRange, xlColumns
.Chart.HasTitle = False
.Chart.HasLegend = False
With .Chart.Axes(Type:=xlValue)
.HasTitle = True
.AxisTitle.Text = "スペクトル"
.MaximumScale = MaxValue
.MinimumScale = 0
.CrossesAt = 0
.MajorUnit = (MaxValue / 10)
.TickLabels.NumberFormat = "0.0E+00"
End With
With .Chart.Axes(Type:=xlCategory)
.HasTitle = True
.AxisTitle.Text = "周波数"
.MinimumScale = 0.001
.MaximumScale = 100.1
.Crosses = xlAxisCrossesMinimum
.ScaleType = xlScaleLogarithmic
.LogBase = 10
End With
With .Chart.SeriesCollection(1).Border
.ColorIndex = 1
.Weight = xlThin
End With
End With
End With
End Sub
|
|