2

zedgraphで垂直マーカーを作成することは可能ですか?
すべてのチャート ポイントをレンダリングし、現在の位置のインジケーターとして垂直マーカーを作成したいと考えています。

4

2 に答える 2

4

以前のプロジェクトでは、次のコードを使用してそのような効果を得ました。

int i = myPane.AddYAxis("");
myPane.YAxisList[i].Color = Color.Orange;
myPane.YAxisList[i].Scale.IsVisible = false;
myPane.YAxisList[i].MajorTic.IsAllTics = false;
myPane.YAxisList[i].MinorTic.IsAllTics = false;
myPane.YAxisList[i].Cross = pointOnXAxisThatIWantToMark;

この場合、グラフに特定の制限をマークするために 2 つの軸を追加します。

ここに画像の説明を入力

于 2012-06-26T13:09:02.237 に答える
1

SymbolTypeカーブの を に設定できますSymbolType.VDash

たとえば、 のシンボルを設定するLineItemには、コンストラクターで直接行うか (curve1以下のソース コード内)、曲線に割り当てる前にカスタマイズすることができます ( curve2)。

このコード:

var curve1 = new LineItem(null, new[] { 0.1, 0.5, 0.9 }, 
             new[] { 0.8, 0.3, 0.1 }, Color.Blue, SymbolType.VDash);
zedGraphControl1.GraphPane.CurveList.Add(curve1);

var curve2 = new LineItem(String.Empty)
    {
        Points = new PointPairList(
                 new[] { 0.1, 0.5, 0.9 }, new[] { 0.2, 0.5, 0.9 }),
        Color = Color.Red,
        Symbol = new Symbol(SymbolType.VDash, Color.Black) 
                 { Size = 20f, Border = new Border(Color.Black, 6f)}
    };
zedGraphControl1.GraphPane.CurveList.Add(curve2);

次のグラフを生成します。

カスタマイズされていないマーカーとカスタマイズされたマーカー

于 2012-06-27T07:15:45.843 に答える