Ejemplo n.º 1
0
        void drawChart(int index)
        {
            ChartView.GraphPane.CurveList.Clear();
            ChartView.GraphPane.GraphObjList.Clear();
            myPane                  = ChartView.GraphPane;
            myPane.Title.Text       = monitoring_data[index].GetHardwareName() + " " + monitoring_data[index].GetName() + " " + monitoring_data[index].GetSensorType();
            myPane.XAxis.Title.Text = "time";
            myPane.YAxis.Title.Text = "value";

            var values = monitoring_data[index].getAllValue();

            // Создадим список точек
            PointPairList list    = new PointPairList();
            PointPairList listMax = new PointPairList();

            // Заполняем список точек
            foreach (var i in values)
            {
                list.Add(values.IndexOf(i), i.getVal());
                listMax.Add(values.IndexOf(i), monitoring_data[index].GetMaxValue());
            }

            LineItem myCurve = myPane.AddCurve("Value", list, Color.Green, SymbolType.None);

            myPane.AddCurve("Max Value", listMax, Color.Red, SymbolType.None);

            // Вызываем метод AxisChange (), чтобы обновить данные об осях.
            // В противном случае на рисунке будет показана только часть графика,
            // которая умещается в интервалы по осям, установленные по умолчанию
            ChartView.AxisChange();

            // Обновляем график
            ChartView.Invalidate();
            //ZoomGrid(1.5f);
        }
Ejemplo n.º 2
0
        private void drawParts(Dictionary <ProblemParts, double> data)
        {
            ChartView.GraphPane.CurveList.Clear();
            ChartView.GraphPane.GraphObjList.Clear();
            piePane            = ChartView.GraphPane;
            piePane.Title.Text = "Ratio of dangerous state to normal for parts";
            var labels = new List <string>();
            var values = new List <double>();
            int i      = 0;

            foreach (var key in data.Keys)
            {
                PieItem pieSlice = piePane.AddPieSlice(data[key], colors[i], 0F, key.ToString());
                //pieSlice.LabelType = PieLabelType.None;
                //values.Add(data[key]);
                //labels.Add(key.ToString());
                i++;
            }
            //piePane.AddPieSlices(values.ToArray(), labels.ToArray());
            ChartView.AxisChange();
            ChartView.Invalidate();
        }