Exemple #1
0
        public void LoadPlotData(List <ProtocolEvent> eventList)
        {
            Plot.Model.Series.Clear();

            List <CategoryNode> nodes = CategoryNode.BuildTrees(eventList);

            if (nodes != null)
            {
                List <IntervalBarSeries> allSeries;
                List <string>            labels;
                List <double>            gridLines;
                CategoryNode.GeneratePlotData(nodes, out allSeries, out labels, out gridLines);

                // GENERATE LABELS, GRIDLINES, ETC. FROM TREE!
                VerticalCategoryAxis.Labels.Clear();
                VerticalCategoryAxis.Labels.AddRange(labels);
                VerticalCategoryAxis.ExtraGridlines = gridLines.ToArray();

                foreach (IntervalBarSeries series in allSeries)
                {
                    Plot.Model.Series.Add(series);
                }
            }
            Plot.ResetAllAxes();
            HorizontalTimeAxis.Minimum           = HorizontalTimeAxis.AbsoluteMinimum;
            VerticalCategoryAxis.AbsoluteMaximum = VerticalCategoryAxis.ExtraGridlines.Max() + 0.6f;
            VerticalCategoryAxis.MaximumRange    = VerticalCategoryAxis.AbsoluteMaximum - VerticalCategoryAxis.AbsoluteMinimum;
            VerticalCategoryAxis.MinimumRange    = VerticalCategoryAxis.AbsoluteMaximum - VerticalCategoryAxis.AbsoluteMinimum;
            Plot.Model.InvalidatePlot(true);
        }