Example #1
0
        private void UpdateGraphManaCurve()
        {
            zgManaCurve.GraphPane.CurveList.Clear();
            GraphPane pane = zgManaCurve.GraphPane;

            pane.Title.Text = String.Format("Mana Curve - {0}", CardCountText());

            PointPairList points = new PointPairList();

            points.AddRange(cards.Where(wh => !wh.IsInSideboard)
                            .Where(sel => !sel.Type.Contains("Land") && !sel.Type.Contains("Scheme"))
                            .GroupBy(grp => grp.CalculatedManaCost)
                            .OrderBy(ord => ord.Key)     // Order x-Axis
                            .Select(sel => new PointPair(sel.Key, sel.Sum(sum => sum.Amount))));

            BarItem barChart = pane.AddBar("", points, Color.Blue);

            barChart.Bar.Fill.Type = FillType.Solid;

            pane.XAxis.Scale.Min       = 0;
            pane.XAxis.Scale.MinorStep = 1;
            pane.XAxis.Scale.MajorStep = 1;
            pane.XAxis.Title.IsVisible = false;

            pane.YAxis.Scale.Min       = 0;
            pane.YAxis.Scale.MinorStep = 1;
            pane.YAxis.Scale.MajorStep = 1;
            pane.YAxis.Title.IsVisible = false;

            zgManaCurve.AxisChange();
            //zgManaCurve.Invalidate();
            //zgManaCurve.Refresh();
        }