Как создать чтение "живого графика" из последовательного порта - PullRequest
0 голосов
/ 24 марта 2019

Мне нужно создать «живой график» со временем по оси X и двойными данными, полученными из последовательного порта по оси Y. У меня уже есть связь, но я не знаю, что делать с добавлением данных в график. (Использование https://lvcharts.net/)

Как и при каждом получении данных из последовательного порта - создайте новую точку с этими данными на графике.

Знаете ли вы какой-нибудь более простой способ, чем использовать модуль Live Charts?

Спасибо за ответы:)

public partial class Statt : UserControl
    {
        string dataIN;
        double dataForGraph;


        public Statt()
        {
            InitializeComponent();

            cartesianChart1.Series.Add(new LineSeries
            {
                Values = new ChartValues<double> { dataForGraph },
                StrokeThickness = 4,
                StrokeDashArray = new System.Windows.Media.DoubleCollection(20),
                Stroke = new System.Windows.Media.SolidColorBrush(System.Windows.Media.Color.FromRgb(107, 185, 69)),
                Fill = System.Windows.Media.Brushes.Transparent,
                LineSmoothness = 0,
                PointGeometry = null
            });
        }

        public void serialPort1_DataReceived(object sender, System.IO.Ports.SerialDataReceivedEventArgs e)
        {
            dataIN = serialPort1.ReadExisting();
            dataForGraph = Convert.ToDouble(dataIN);
            this.Invoke(new EventHandler(ShowData));

        }


        public void ShowData(object sender, EventArgs e)
        {
            testLabel.Text = dataIN;
        }
    }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...