Visual Basic 中学校 掲示板 投稿の管理
タグのない投稿を抽出
統計
RSS
Visual Basic 中学校
投稿一覧
グラフ描画
この投稿へのリンク
https://keijiban.umayadia.com/ThreadDetail.aspx?ThreadId=30264#CommentId82996
この投稿の削除
削除パスワード
削除する
コメント本文
投稿者
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)
シリアルデータを受信するたびにグラフにデータをプロットしたいのですが、
どのようにしたら良いのかが分かりません。
④の内容を①~③のどこに記載すべきかが分かっておりません。
教えてもらえると助かります。