# 没有测(0,0)
# 读取文件
# 排序
# 去掉首尾20%
# 取平均
# 保存数据
# 绘制图像
import numpy as np
import json
filter_data = 'filter_data.json'
def read_uwb_data(name):
x = []
f = open('UWBdata/%s.txt' % name)
for i in f.readlines():
a = i.strip().split(",")
x.append([float(a[-3]), float(a[-2]), float(a[-1])])
return x
def takeFirst(elem):
return elem[0]
def sort_data(x)://按照第一个元素排序
x.sort(key=takeFirst)
def delete_start_end(x):
delete_length = len(x) // 5
return x[delete_length:-delete_length]
def get_average(x):
a = np.mean(x, axis=0)
return a
desk_location = [{}]
for i in range(26 - 6):
x = read_uwb_data(i + 7)
sort_data(x)
x = delete_start_end(x)
a = get_average(x)
desk_location[0][i + 7] = [a[0], a[1]]
print(desk_location)
# desk_location = json.dumps(desk_location)
json.dump(desk_location, open(filter_data, "w"))
print(desk_location)