お世話になります。
表題の通りで、sckit-learnで取得した結果をもとに散布図を作成し色分けをしたく思っております。
教師データの色分けプロットは下記のように実装ができました。
実装したいことは、
1.下記コードをループさせることで取得する、
new2という配列を上記のグラフに同様に描画すること
new.append([response0,response1]) prediction =clf.predict(new) new.clear() new2.append([response0,response1,int(prediction)])
2.ループの周期を1秒等にしょうと思っておりますが、
1秒ごとリアルタイムでグラフが更新させること
いろいろ模索しておりますが、グラフにグラフを重ねる方法がわからないことと、
リアルタイムで描画することがうまくいかず、御指南いただきたいです。
python
1client = socket.socket(socket.AF_INET, socket.SOCK_STREAM) 2# socket.AF_INETでip4を使うことを指定。socket.SOCK_STREAMでTCPを使うことを指定。 3client.connect((host_ip,host_port)) 4 # サーバーに接続(kv-7500にTCP接続/上位リンク通信) 5new=[] 6new2=[] 7num=1 8 9while num <10: 10 11 comand0 = "RD DM10102.D\r" # ch0読み出しコマンド 12 comand1 = "RD DM10112.D\r" # ch1読み出しコマンド 13 14 client.send(comand0.encode("ascii")) # 上位リンク通信のデータコードがASCIIなのでエンコード 15 client.send(comand1.encode("ascii")) 16 17 response0 = client.recv(1024) 18 response1 = client.recv(1024) 19 20 response0 = response0.decode("UTF-8") # PLCからの返答がbyteデータなのでUTF-8にデコード 21 response1 = response1.decode("UTF-8") 22 23 response0 = float(response0)/1000 # Float型へ変換し単位をそろえる 24 response1 = float(response1)/1000 25 26 new.append([response0,response1]) 27 prediction =clf.predict(new) 28 print(prediction) 29 print(response0,response1) 30 num+=1 31 time.sleep(0.5) # n秒ごと 32 new.clear() 33 new2.append([response0,response1,int(prediction)]) 34 35else: 36 client.close() 37 new3=pd.DataFrame(new2) 38 print(new3)
あなたの回答
tips
プレビュー