投稿者 vb素人  (学生) 投稿日時 2017/8/20 08:43:10
魔界の仮面弁士さま

返事が遅れてすみません。
教えていただいた方法でグラフにデータをプロットすることができました。

次の段階として、
少し前に掲示板で質問させていただいたシリアルデータを使いたいと思っています。
受信したシリアルデータ(XとY)は、受信するたびに、Textbox1(Xのデータ)とTextbox2(Yのデータ)に表示されます。

このTextBoxに表示された数値をグラフ上にプロットしたいと考えています。


今テストしているプログラムです。


    Private Delegate Sub Delegate_RcvXDataToTextBox(xdec As String)
    Private Delegate Sub Delegate_RcvYDataToTextBox(ydec As String)


    Private Sub SerialPort1_DataReceived(sender As Object, e As SerialDataReceivedEventArgs) Handles SerialPort1.DataReceived

  '細かい所は省略します。
    '受信データを10進数表記に変換してxdecと、ydecをInvokeします。
     Dim datax As Byte() = {bin(2), bin(1)}
     Dim xbyte As UShort = BitConverter.ToUInt16(datax, 0)    '符号なし2 バイト整数に変換 
     Dim xdec As String = Convert.ToString(xbyte, 10)           '10進数表記の "1023" に変換 
     Invoke(New Delegate_RcvXDataToTextBox(AddressOf RcvXDataToTextBox), xdec)

     Dim datay As Byte() = {bin(4), bin(3)}
     Dim ybyte As UShort = BitConverter.ToUInt16(datay, 0)    '符号なし2 バイト整数に変換 
     Dim ydec As String = Convert.ToString(ybyte, 10)           '10進数表記の "1023" に変換 
     Invoke(New Delegate_RcvYDataToTextBox(AddressOf RcvYDataToTextBox), ydec)

    End Sub

③xdecとydecの値をTextBoxへ表示させます。

    Private Sub RcvXDataToTextBox(xdec As String)

        '受信データをテキストボックスの最後に追記する.
        If IsNothing(xdec) = False Then
            RcvXTextBox.AppendText(xdec)

        End If

    End Sub

    Private Sub RcvYDataToTextBox(ydec As String)

        '受信データをテキストボックスの最後に追記する.
        If IsNothing(ydec) = False Then
            RcvYTextBox.AppendText(ydec)

        End If

    End Sub


ここから質問なのですが、次のコードでグラフにTextboxに入力したデータをプロットすることができました。
④TextBox1,2 (①~③のシリアル受信データとは別のテキストボックス)に数値を入力して、グラフへ表示させるプログラム
 (グラフ表示のテスト用にTextBox1,2を用意しました。)
        Chart1.Series.Clear()
        Dim s As Series

        Dim X As Double = 0
        Dim Y As Double = 0

        X = CDbl(TextBox1.Text)
        Y = CDbl(TextBox2.Text)

        s = Chart1.Series.Add("E")
        s.ChartType = SeriesChartType.Point

        s.Points.AddXY(X, Y)


シリアルデータを受信するたびにグラフにデータをプロットしたいのですが、
どのようにしたら良いのかが分かりません。

④の内容を①~③のどこに記載すべきかが分かっておりません。
教えてもらえると助かります。