Я использую matplotlib в своем скрипте на python, этот скрипт используется для тестирования некоторых соединений и их построения в виде графика.Функция animate получает данные от другой функции, которая выполняет тесты соединения.
Я хочу, чтобы на оси x графика все часы отображались в формате 00:00, 01:00 ... 23:00 ифункция animate помещает каждую точку в правильное время, но мне никак не удавалось это сделать.на прикрепленном изображении я установил галочки оси x с помощью plt.xticks ([]), но по мере роста линий ось просто прокручивалась вправо.пример кода не работает!Это единственная функция animate. Я не хочу прикреплять весь код, потому что это не имеет значения.
Функция animate получает аргументы от генератора, который сначала выполняет тесты, а затем выдает значения, сначала его вывод google, а затем facebook., master_dict - это словарь со всеми результатами теста, поэтому он берет из него значения для графика.graph_list - это список 2-х двумерных массивов, который содержит точки графиков.x_val - строка даты и времени, отформатированная как «% H:% M»% S », y_val - значение с плавающей запятой теста
def animate(args):
url = args[0]
master_dict = args[1]
plot_dict = master_dict[url]
url_id = 1 if 'google' in url else 0
x_val = plot_dict[TIME]
y_val = plot_dict[BYTE]
point = np.array([[x_val, y_val]])
graph_list[url_id] = np.append(graph_list[url_id], point, axis=0)
x, y = graph_list[url_id].T
y = y.astype(np.float)
plt.gcf().autofmt_xdate(rotation=60)
return plt.plot(x, y, color=('g' if url_id else 'r'), linewidth=2)
graph