Невозможно запустить анимацию с помощью Python и Matplotlib в Apache Zeppelin - PullRequest
0 голосов
/ 06 декабря 2018

Я нашел 2 способа анимации с помощью matplotlib: там .Оба примера работают в Jupyter Notebook.Но в Zeppelin оба примера возвращают только следующее:

<IPython.core.display.Javascript object><IPython.core.display.HTML object>

Когда я использую %matplotlib notebook, в обоих примерах я получаю сообщение об ошибке:

Traceback (последний вызов был последним): File "/usr/lib/python3.6/site-packages/matplotlib/cbook/init.py ", строка 215, в процессе func (* args, ** kwargs) File" / usr / lib / python3.6 / site-packages / matplotlib / animation.py ", строка 1478, в _stop self.event_source.remove_callback (self._loop_delay) AttributeError: у объекта 'NoneType' нет атрибута 'remove_callback'

Интерпретатор Python имеет zeppelin.python.useIPython = True

Пример 1

import numpy as np
import matplotlib.pyplot as plt
import matplotlib.animation as animation

## %matplotlib notebook

def animate(frameno):
    x = mu + sigma * np.random.randn(10000)
    n, _ = np.histogram(x, bins, density=True)
    for rect, h in zip(patches, n):
        rect.set_height(h)
    return patches    

mu, sigma = 100, 15
fig, ax = plt.subplots()
x = mu + sigma * np.random.randn(10000)
n, bins, patches = plt.hist(x, 50, density=1, facecolor='green', alpha=0.75)

ani = animation.FuncAnimation(fig, animate, blit=True, interval=10,
                              repeat=True)
plt.show()

Пример 2

import numpy as np
import matplotlib.pyplot as plt

##%matplotlib notebook

plt.ion()
mu, sigma = 100, 15
fig = plt.figure()
x = mu + sigma*np.random.randn(10000)
n, bins, patches = plt.hist(x, 50, normed=1, facecolor='green', alpha=0.75)
for i in range(50):
    x = mu + sigma*np.random.randn(10000)
    n, bins = np.histogram(x, bins, density=True)
    for rect,h in zip(patches,n):
        rect.set_height(h)
    fig.canvas.draw()

Есть ли у кого-нибудь опыт анимации данных с помощью Python в Zeppelin?Спасибо!

...