2

x 軸DateAsOrdinalに変更しましたが、ラベル形式を改善したいと考えています。現在、次のようにXAxis.ScaleFormatEventを処理しています。

Private Function OnXScaleFormatEvent(ByVal pane As GraphPane, ByVal axis As Axis, ByVal val As Double, ByVal index As Integer) As String
    Dim result As String = ""
    If val < priceBars.Count Then
        Dim time As Date = Date.FromOADate(priceBars(val).X)
        result = [String].Format("{0:D2}{1}{2:D2}", time.Hour, ":", time.Minute)
    End If

    Return result
End Function

ラベルを 30 分ごとにのみ印刷するにはどうすればよいですか? または、下の画像のように 2 時間ごとですか? 画像が示すように、毎日から数時間だけ連続して複数日をプロットする必要があるため、バーの x 値を参照する必要があると思います。09:00~23:00。

ここに画像の説明を入力

4

2 に答える 2

1

私は、これでうまくいくと思います:

chart.GraphPane.XAxis.Scale.MajorStepAuto = False
chart.GraphPane.XAxis.Scale.MajorUnit = DateUnit.Minute
chart.GraphPane.XAxis.Scale.MajorStep = 30
chart.GraphPane.XAxis.Scale.BaseTic = 0
于 2011-02-14T09:07:10.520 に答える
0

各ラベルを個別にフォーマットすることで、これを修正しました。

于 2012-07-29T08:09:39.430 に答える