我想问一下是否可以动态更新/绘制python中的绘图。我的程序假设从IMU传感器捕获数据 - 这是在c ++(客户端)中完成的。在python中,我正在接收捕获的数据(服务器)。现在我想以图形方式表示这些数据。连接工作正常Iam从c ++发送数据。我尝试使用代码,但它不起作用主要是因为我永远调用plt.show()。这可能吗 ??这是我的代码
from socket import *
from time import ctime
import matplotlib.pyplot as plt
HOST = 'localhost'
PORT=1024
BUFFSIZE=1024
ADDR = (HOST,PORT)
tcpTimeSrvrSock = socket(AF_INET,SOCK_STREAM)
tcpTimeSrvrSock.bind(ADDR)
tcpTimeSrvrSock.listen(50)
while True:
print 'waiting for connction'
tcpTimeClientSock, addr = tcpTimeSrvrSock.accept()
print 'connected from:', addr
while True:
data =tcpTimeClientSock.recv (BUFFSIZE)
if not data:
print 'no data'
break
x =float(data[0 : data.find('?')])//data received from client c++
data=data[data.find('?')+1:]
y=float(data[0 : data.find('£')])
data=data[data.find('£')+1:]
z=float(data[0 : data.find('$')])
data=data[data.find('$')+1:]
frame=int(data[0 : data.find('#')])
#print data
#print x
#print y
#print z
#print frame
tcpTimeClientSock.send('[%s] %s' % (ctime(), data))
plt.plot(frame,x,'r')
plt.plot(frame,y,'b')
plt.plot(frame,z,'g')
plt.show()
tcpTimeClientSock.close()
tcpTimeSrvrSock.close()
谢谢