2

zedgraph を使用してエクセルの半対数プロットを取得するのに苦労しています。

ここに画像の説明を入力

私は現在持っています:

ここに画像の説明を入力

これを行うには、私が持っている

Dim pane As New GraphPane()
'reverse order
pane.X2Axis.IsVisible = True
pane.XAxis.IsVisible = False
pane.YAxis.Scale.IsReverse = True
pane.YAxis.Scale.IsPreventLabelOverlap = True
' log type
pane.X2Axis.Type = AxisType.Log
pane.AxisChange()
' the y axis scale
pane.YAxis.Scale.Min = -20
pane.YAxis.Scale.Max = 120
'here I tried to manipulat x axis but had no success 

'the data

            Dim list As New PointPairList()
            Dim list2 As New PointPairList()        
            list.Add(0, 0)
            list.Add(125, 0)
            list.Add(250, 0)
            list.Add(500, 5)
            list.Add(750, 5)
            list.Add(1000, 10)
            list.Add(1500, 10)
            list.Add(2000, 5)
            list.Add(3000, 10)
            list.Add(4000, 10)
            list.Add(6000, 10)
            list.Add(8000, 20)
            list2.Add(125, 30)
            list2.Add(500, 30)
            list2.Add(750, 40)
            list2.Add(1000, 50)
            list2.Add(1500, 65)
            list2.Add(2000, 65)
            list2.Add(3000, 70)
            list2.Add(4000, 80)
            list2.Add(6000, 90)
            list2.Add(8000, 100)
            Dim myCurve As LineItem = pane.AddCurve("Series 1", list, Color.Blue, SymbolType.Diamond)
            Dim myCurve2 As LineItem = pane.AddCurve("Series 2", list2, Color.Magenta, SymbolType.Square)

ご覧のとおり、x2=125,250,500,750,1のデータは、zedgraph の数値が非常に小さいため、EXCEL 半対数プロットとは異なります。この部分だけ....

zedgraphで必要なExcelグラフを取得するには? その部分だけズームする方法とかありますか?なぜ表示されるの10^-1, 10^0 ,10^1ですか?ではない 10^2, 10^3 10^4

4

1 に答える 1

3

軸の最小値を設定する必要があります。

chart.GraphPane.YAxis.Scale.Min = 0;
chart.GraphPane.YAxis.Scale.Max = 100;

またはこれに似たもの。必ずパーツを追加してくださいGraphPane。これが機能することを願っています。繰り返しますが、現在のマシンにこのモジュールが実際にインストールされていないため、テストできません。

これは、ZedGraph を頻繁に使用している場合に取得すると非常に便利です。私はここにいる他の誰かからこれを指摘されましたが、彼らの投稿を見つけて信用を与えることができません.

于 2013-02-27T03:54:12.033 に答える