У меня есть анимированный график, который получает историю использования сети и масштабирует y, динамически зависит от величины передаваемых соответствующих данных. Как я могу получить ярлыки ярлыка y, чтобы отразить изменяющиеся пределы y? Все работает нормально, когда я устанавливаю blit=Flase
все обновления прекрасно, но я не хочу, чтобы все обновляло каждый тик, только ярлыки y, когда изменяются лимиты y? Итак, как мне просто обновить или перерисовать ярлыки y tick?Как обновить ярлыки меток matplotlib динамически
def resize(self, y_data):
cur_max = max(y_data)
if cur_max > self.ax.get_ylim()[1]: # if cur_max > upper y limit..
self.ax.set_ylim(-1, cur_max + cur_max * .10) # increase upper y limit to fit cur_max
### update/redraw tick labels? ###
if self.ax.get_ylim()[1] * .25 > cur_max > 0: # if 1/4 the upper y limit > cur_max and cur_max > 0...
self.ax.set_ylim(-1, cur_max * .50) # set upper y limit 1/2 its current size
### update/redraw tick labels? ###
При обновлении ylabels, то рентгенографические данные также должны быть обновлены. Предположим, что у вас есть ylimits (0,6) и точка при y = 3. Затем вы обновляете ylimits до (0,10), точка, которая первоначально находилась в середине графика, теперь должна быть в нижней части, правильно? Тем не менее, немного непонятно, чего вы пытаетесь достичь. Использование 'blit = False' кажется мне прекрасным. – ImportanceOfBeingErnest
@ImportanceOfBeingErnest Масштабируемая диаграмма данных резко изменяется от нескольких байтов в секунду до многих тысяч в секунду в зависимости от сетевой нагрузки. Когда он перескакивает до многих тысяч в секунду, он корректирует их, ограничивая масштаб до нового диапазона y, который подходит для входящих данных, тем самым делая предыдущие графические данные, которые были в десятках байтов в секунду несущественными. – HexxNine
@ImportanceOfBeingErnest Графированная линия обновляется отлично с новой шкалой y, эффективно выравнивая линию, где данные были в 10-х годах, и теперь они действительно показывают пики, которые находятся в 1000-х годах. Проблема в том, что ярлыки y tick не обновляются, когда изменяется предел y, поэтому данные с графическими линиями находятся в 1000-х годах, но метки y tick все еще показывают 1-100. Однако, когда я изменяю размер окна, ярлыки y tick обновляются. Поэтому я предполагаю, что решение заключается в том, чтобы найти, какую функцию вызывается, чтобы перерисовать метки оси/метки при изменении размера окна? – HexxNine