Я предваляю это, говоря, что я все еще учу Python, поэтому, пожалуйста, будьте добры и терпеливы. Мой код выглядит следующим образом:
- Клиент в сети отправляет текстовый файл (stats.txt) каждые ~ 5 секунд на сервер SCP. Python код находится на сервере.
Код ниже начинается:
import matplotlib.pyplot as plt
import csv
import datetime
x = []
y = []
rssi_val = []
def animate(i):
with open('stats.txt', 'r') as searchfile:
time = (searchfile.read(5))
for line in searchfile:
if 'agrCtlRSSI:' in line:
rssi_val = line[16:20]
y = [rssi_val]
x = [time for i in range(len(y))]
plt.xlabel('Time')
plt.ylabel('RSSI')
plt.title('Real time signal strength seen by client X')
#plt.legend()
plt.plot(x,y)
ani = FuncAnimation(plt.gcf(), animate, interval=5000)
plt.tight_layout()
#plt.gcf().autofmt_xdate()
plt.show()
- Сервер SCP открывает файл каждые 5 секунд и выводит значения, которые анализируются с файл. Время отображается на оси X, а значение RSSI отображается на оси Y.
Я понимаю, что используемый код и методы на данный момент неэффективны и будут изменены в будущем. Сейчас я просто хочу, чтобы значения графика отображались, а график анимировался графиком (линией) каждые 5 или около того секунд.
Запуск его ничего не дает.