Я пытаюсь анимировать свои данные с датчика LIDAR, но при попытке анимировать я получил эту ошибку! Помогите решить проблему, я новичок в программировании на Python, большое спасибо!
Это проблема, которая у меня возникла:
Файл "C:\Users\cemal\AppData\Local\Programs\Python\Python37-32\veritipleriogrenme.py", строка 29, в анимированном буфере данных += data_str TypeError: может только конкатенировать str (не "_io.TextIOWrapper") в ул
Это набор данных, который я пытаюсь анимировать:
0.0,0.0
0.0,269.1
0.0,270.3
0.0,271.5
1617.8,265.6
1627.3,266.8
1629.0,268.0
1633.0,269.2
тип моего набора данных - строка!
import matplotlib.pyplot as plot
import math
from matplotlib import style
import matplotlib.animation as animation
import numpy as np
fig=plot.figure(figsize=(4,4))
ax = fig.add_subplot(111, projection='polar')
ax.set_ylim(0,2000)
data = np.zeros(360)
theta = np.linspace(0,360, num=360)
l, = ax.plot([],[])
databuffer = ""
uzaklik = np.zeros(360)
pol = np.linspace(0,360, num=360)
def animate(i):
global data, databuffer
data_str = open(r"C:\Users\cemal\OneDrive\Masaüstü\veri2.txt","r")
databuffer += data_str
aci=np.linspace(0,360, num=360)
cap=np.zeros(360)
p_pol=np.linspace(0,360, num=360)
p_uzaklik=np.zeros(360)
aci2=np.linspace(0,360, num=360)
cap=np.zeros(360)
for x in data_str:
pol =x.partition(",")[2].rstrip()
uzaklik =x.split(',')[0]
try:
p_pol=float(pol.strip().strip("'"))
p_uzaklik=float(uzaklik.strip().strip("'"))
aci=np.append(p_pol)
cap=np.append(p_uzaklik)
aci2=[math.radians(i) for i in aci]
l.set_data(cap, aci2 )
data_buffer=""
return l,
except ValueError:
continue
ani = animation.FuncAnimation(fig, animate,interval=10000)
plot.show()
{}
, чтобы отформатировать его красиво. Это позволяет нам копировать и вставлять то, что у вас есть, чтобы быстро увидеть, в чем проблема. Если я хочу попробовать ваш код сейчас, мне придется много печатать. - person Hoog   schedule 26.03.2019