-1
我想用matplotlib動畫在社區的幫助下實時繪製兩個列表,我可以繪製我的圖形。我現在想要簡化我的實時動畫以及重構我的圖形。如何在matplotlib動畫中將圖形尺寸調整爲固定尺寸
這裏是我的目標:
- 標繪X軸:列表 「my_average」
- 劇情y軸的長度:在列表 「my_average」 元素
- y軸限制-1到1(在列表中的所有元素我「my_average」是-1到1之間)
我不知道我在做什麼錯我的代碼迄今:
class StdOutListener(StreamListener):
def on_data(self, data):
json_load = json.loads(data)
texts = json_load['text'] # string
#print(texts)
#drop zero in list
if 0 in my_list: my_list.remove(0)
#print
#calculate average
average = numpy.mean(my_list)
b = my_average.append(average)
print "average =", my_average
def __init__(self):
self.start_time = time.time()
self.x = [len(my_average)]
self.y = [my_average]
self.my_average = []
self.line_actual, = plot(self.x, self.y) # line stores a Line2D we can update
self.line_average, = plot(self.x, self.my_average) # line stores a Line2D we can update
def on_data(self, new_value):
time_delta = time.time() - self.start_time # on our x axis we store time since start
self.x.append(time_delta)
self.y.append(new_value)
self.my_average.append(numpy.mean(self.y))
self.line_actual.set_data(self.x, self.y)
self.line_average.set_data(self.x, self.my_average)
ylim([min(self.y), max(self.y)]) # update axes to fit the data
xlim([0, max(self.x)])
draw() # redraw the plot
ion() # ion() allows matplotlib to update animations.
out_listener = StdOutListener()
for i in range(10000):
out_listener.on_data(i + numpy.random.randint(-5,5))
預先感謝您
有你爲什麼張貼〜20個空行代碼中的具體原因請格式化你的代碼正常。 – hitzg
有問題嗎? – hitzg
@hitzg對不起,他們已被刪除額外的空間。 現在的問題是,我該如何調整這張圖的固定y軸限制(-1,1)和我的X軸如何繪製列表的長度。 – RustyShackleford