Я пытаюсь построить в реальном времени файл (datos.txt
), который будет непрерывно получать новые данные от датчика pH.Как я могу построить растущий файл данных в режиме реального времени с помощью matplotlib?
Как показано here, я смог построить файл данных, но я все еще не могу сделать это в режиме реального времени. Я использую следующий код:
import matplotlib.pyplot as plt
import matplotlib.dates as mdates
from datetime import datetime
import numpy as np
# Converter function
datefunc = lambda x: mdates.date2num(datetime.strptime(x, '%d-%m-%Y %H:%M:%S'))
# Read data from 'file.dat'
dates, levels = np.genfromtxt('/home/ramiro/Programas/pythonProgs/datos.txt', # Data to be read
delimiter=19, # First column is 19 characters wide
converters={0: datefunc}, # Formatting of column 0
dtype=float, # All values are floats
unpack=True) # Unpack to several variables
fig = plt.figure()
ax = fig.add_subplot(111)
# Configure x-ticks
ax.set_xticks(dates) # Tickmark + label at every plotted point
ax.xaxis.set_major_formatter(mdates.DateFormatter('%d/%m/%Y %H:%M'))
ax.locator_params(axis='x',nbins=10)
ax.plot_date(dates, levels, ls='-', marker='o')
ax.set_title('Hora')
ax.set_ylabel('pH')
ax.grid(True)
# Format the x-axis for dates (label formatting, rotation)
fig.autofmt_xdate(rotation=45)
fig.tight_layout()
plt.show()
Я видел несколько примеров реального времени черчения, но я не могу понять, как сделать работу шахты
Существует вопрос [вопрос о построении данных csv в реальном времени] (http://stackoverflow.com/questions/31922016/creating-a-live-plot-of-csv-data-with-matplotlib). Расскажите, пожалуйста, насколько это не решило проблему. Будьте конкретны в своем вопросе. Что именно вы хотите достичь? Как должны отображаться обновленные данные? – ImportanceOfBeingErnest