public void ClearChart()
        {
            this.ChartValues.Clear();
            this.ChartValues2.Clear();
            this.ChartValues3.Clear();

            ChartValues2.Add(new MeasureModel
            {
                DateTime = DateTime.Now.AddSeconds(-12),
                Value    = 0
            });

            ChartValues2.Add(new MeasureModel
            {
                DateTime = DateTime.Now.AddSeconds(25),
                Value    = 0
            });

            ChartValues3.Add(new MeasureModel
            {
                DateTime = DateTime.Now.AddSeconds(-12),
                Value    = -7
            });

            ChartValues3.Add(new MeasureModel
            {
                DateTime = DateTime.Now.AddSeconds(25),
                Value    = -7
            });
        }
        private void Read()
        {
            var r = new Random();

            while (IsReading)
            {
                Thread.Sleep(150); // 画图频率
                var now = DateTime.Now;

                _trend1 += r.Next(-8, 10); // y轴取值

                ChartValues1.Add(new MeasureModel
                {
                    DateTime = now,
                    Value    = _trend1
                });

                _trend2 += r.Next(-8, 10); // y轴取值

                ChartValues2.Add(new MeasureModel
                {
                    DateTime = now,
                    Value    = _trend2
                });

                SetAxisLimits(now);

                //lets only use the last 150 values
                if (ChartValues1.Count > 150)
                {
                    ChartValues1.RemoveAt(0);
                }
                if (ChartValues2.Count > 150)
                {
                    ChartValues2.RemoveAt(0);
                }
            }
        }
        private void Read()
        {
            var r = new Random();

            while (IsReading)
            {
                Debug.WriteLine($"hi");
                Thread.Sleep(150);
                var now = DateTime.Now;

                _trend  += r.Next(-8, 10);
                _trend2 += r.Next(-8, 10);

                ChartValues.Add(new MeasureModel
                {
                    DateTime = now,
                    Value    = _trend
                });

                ChartValues2.Add(new MeasureModel
                {
                    DateTime = now,
                    Value    = _trend2
                });

                SetAxisLimits(now);

                //lets only use the last 150 values
                if (ChartValues.Count > 150)
                {
                    ChartValues.RemoveAt(0);
                }
                if (ChartValues2.Count > 150)
                {
                    ChartValues2.RemoveAt(0);
                }
            }
        }
Example #4
0
        private void TimerOnTick(object sender, EventArgs eventArgs)
        {
            var    now = System.DateTime.Now;
            double number;

            if (double.TryParse(serialPort1.ReadLine(), out number))
            {
                ChartValues.Add(new MeasureModel
                {
                    DateTime = now,
                    Value    = number
                });
            }

            //Testing code:

            /*
             * Random R = new Random();
             * ChartValues.Add(new MeasureModel
             * {
             *  DateTime = now,
             *  Value = R.Next()
             * });
             */

            SetAxisLimits(now);

            //lets only use the last 30 values
            //if (ChartValues.Count > 150) ChartValues.RemoveAt(0);

            _netMqListener.Update();
            Debug.Print(diameter.ToString());
            ChartValues2.Add(new MeasureModel
            {
                DateTime = now,
                Value    = diameter
            });
        }