ZedGraph如何创建一个X轴类型为AxisType.Text的经典折线图

3
我正在尝试使用 ZedGraph 创建一条折线图。我想问一下如何创建一个 X 轴类型为文本,Y 轴类型为双精度的折线图。
首先,我真的在搜索这个主题,但是我没有找到任何关于它的结果。因为其他折线图通常都是关于日期和时间的 X 轴。我不需要在 X 轴上使用日期和时间。我将使用标签来命名 Y 轴上的点。 这里有一个示例图
            string[] labels = { "P(A)", "P(A)+P(T)", "P(A)+P(T)+P(G)", "P(A)+P(T)+P(G)+P(C)" };
    double[] y = { PA(), PA() + PT(), PA() + PT() + PG(), PA() + PT() + PG() + PC() };

    LineItem myLine = myPane.AddCurve("dizi 1", null, y, Color.Red);
    myLine.Line.Fill = new Fill(Color.Red, Color.White, Color.Red);

    myPane.XAxis.Scale.TextLabels = labels;
    myPane.XAxis.Type = AxisType.Text;

    myPane.Chart.Fill = new Fill(Color.White, Color.FromArgb(255, 255, 166), 90F);
    myPane.Fill = new Fill(Color.FromArgb(250, 250, 255));
    zedGraphControl1.AxisChange();

****代码在上面。有什么问题吗?****

1个回答

2

我刚刚弄明白了!

这是创建基本折线图的示例代码!

        private void button3_Click(object sender, EventArgs e)
    {
        // generate some fake data
        double[] y = { 1, 2, 3, 9 ,1,15,3,7,2};
        string[] schools = { "A", "B", "C", "D" ,"E","F","G","H","J"};

        //generate pane
        var pane = zg1.GraphPane;


        pane.XAxis.Scale.IsVisible = true;
        pane.YAxis.Scale.IsVisible = true;

        pane.XAxis.MajorGrid.IsVisible = true;
        pane.YAxis.MajorGrid.IsVisible = true;

        pane.XAxis.Scale.TextLabels = schools;
        pane.XAxis.Type = AxisType.Text;


        //var pointsCurve;

        LineItem pointsCurve = pane.AddCurve("", null, y, Color.Black);
        pointsCurve.Line.IsVisible = true;
        pointsCurve.Line.Width = 3.0F;
         //Create your own scale of colors.

        pointsCurve.Symbol.Fill = new Fill(new Color[] { Color.Blue, Color.Green, Color.Red });
        pointsCurve.Symbol.Fill.Type = FillType.Solid;
        pointsCurve.Symbol.Type = SymbolType.Circle;
        pointsCurve.Symbol.Border.IsVisible = true;



        pane.AxisChange();
        zg1.Refresh();
        this.Controls.Add(zg1);
    }

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接