Как оживить гистограмму разными цветами? - PullRequest
0 голосов
/ 11 мая 2019

Я сделал гистограмму с разными цветами, и она отлично работает.Однако, когда я пытаюсь сделать из этого анимацию, она ведет себя странно.Например, если я продолжу изменять размеры окна, я могу видеть изменения в анимации, но если я не изменю размеры окна анимации, оно не будет обновляться и обновляться.Я проверил значения и цвета для каждой итерации, и все они верны.Не могли бы вы помочь мне разобраться в проблеме? Извините, если это кажется поверхностным вопросом,

  import pandas as pd
  import numpy as np
  import matplotlib.pyplot as plt
  import statistics as st
  import matplotlib.animation as animation

  color=['firebrick','firebrick','firebrick','firebrick']
  a=[1400,1420,1440,1460]
  b=[1000,5000,10000,5000]
  y=1000
  for i in [0,1,2,3]:
       if y<b[i]:
            color[i]='firebrick'
       if y>b[i]:
            color[i]='Blue'

  def update(curr):
       a=[1400,1420,1440,1460]
       b=[1000,5000,10000,5000]
       global color,y
       # check if animation is at the last frame
       if y > 10000: 
             a.event_source.stop()
       plt.cla()
       y=y+100
       print(y)
       for i in [0,1,2,3]:
             if y<b[i]:
                  color[i]='firebrick'
             if y>b[i]:
                  color[i]='Blue'
       print(color)
       plt.axis()
       plt.gca().bar(a,b, align='center',color=color, capsize=10)
       plt.gca().hlines(y, xmin=1400,xmax=1460, color='b')   

 fig = plt.figure()   
 %matplotlib qt
 a = animation.FuncAnimation(fig, update, interval=1000)

1 Ответ

0 голосов
/ 11 мая 2019

Я просто решил сохранить его как файл GIF, и он работал нормально

a.save('Desktop/animation.gif', writer='imagemagick', fps=30)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...