как обновить пределы x в фигуре matplotlib в tkinter

Я создал графический интерфейс с TKinter, который считывает трассировку области видимости из области agilent. Я хочу, чтобы ось x обновлялась при изменении времени / div. Чтобы обновить данные x и y, я использую set_xdata и set_ydata. Есть ли аналогичный метод для обновления границ x?

2 Solutions collect form web for “как обновить пределы x в фигуре matplotlib в tkinter”

Вам нужно понять немного иерархии объектов. Вы вызываете set_xdata в объекте Line2D , который является Artist который связан с объектом Axes (который обрабатывает такие вещи, как log vs linear, пределы x / y, метка оси, местоположение метки и метки), которая связана с объектом Figure (который объединяет группу объектов осей, обрабатывает оконный менеджер (для gui), ect) и объект canvas (который фактически имеет дело с переводом всех других объектов на изображение на экране).

Если вы используете Tkinter, я предполагаю, что у вас есть объект axes (который я назову ax ).

 ax = fig.subplot(111) # or where ever you want to get you `Axes` object from. my_line = ax.plot(data_x, data_y) # whole bunch of code # # more other code # update your line object my_line.set_xdata(new_x_data) my_line.set_ydata(new_y_data) # update the limits of the axes object that you line is drawn on. ax.set_xlim([top, bottom]) ax.set_ylim([left, right]) 

поэтому, чтобы обновить данные в строке, вам нужно обновить my_line , чтобы обновить лимиты осей, вам нужно обновить ax .

set_xlim doc и set_ylim doc

Функция pyplot.xlim() изменяет диапазон оси x (текущих осей).

Метод set_xticks() для осей задает тики. Текущие оси можно получить, например, с помощью gca() .

  • Как обновить изображение виджета Tkinter Label?
  • Виджеты Tkinter Toplevel не отображаются - python
  • Понимание Tkinter после ()
  • Python, Tkinter: как я могу предотвратить сбой tlinter gui mainloop с помощью потоковой передачи
  • Как создать несколько флажков из списка в цикле for в python tkinter
  • Python Tkinter - прокрутка холста с помощью мыши
  • Ограничение входа в виджет tk
  • Текстовое поле, не отображаемое в графическом интерфейсе
  • Python - лучший язык программирования в мире.