2017-11-25 12 views
-2

私はアニメーション散布図を作成しようとしています。ここにMWEがあります。Mac上で更新するにはアニメーション散布図を回転する必要がありますか?

from mpl_toolkits.mplot3d import Axes3D 
import matplotlib.pyplot as plt 
from matplotlib import cm 
import matplotlib.animation 
import numpy as np 
from numpy import cos, pi 

fig = plt.figure() 
ax = fig.gca(projection='3d') 

X = np.arange(-5, 5, 0.25) 
Y = np.arange(-5, 5, 0.25) 
X, Y = np.meshgrid(X, Y) 
Z = 20 + X**2 + Y**2 - 10*cos(2*pi*X) - 10*cos(2*pi*Y) 
# surf = ax.plot_surface(X, Y, Z, cmap=cm.coolwarm, 
#      linewidth=0, antialiased=False) #This should work uncommented 

X = X.flatten() 
Y = Y.flatten() 
Z = Z.flatten() 

points = ax.scatter(X,Y,Z) 
def animate(i): 
    points._offsets3d = (X,Y,Z/i) 
    return points 

ani = matplotlib.animation.FuncAnimation(fig,animate,range(1,10),interval=1000,blit=False,repeat=False) 
plt.show() 

私が知っている限り、macbook airをデフォルトのmacバックエンドで使用しています。グラフをクリックして回転させると、散布図は更新されますが、更新は表示されません。これに来る人のため

答えて

-1

は、私はMWEの先頭に以下のものを使用して、「TKAGG」へのバックエンドを変更:

import matplotlib 
matplotlib.use("TKAGG") 
関連する問題