Matplotlib不会旋转3D图

时间:2014-04-22 18:09:24

标签: python matplotlib

我编写了以下测试代码来演示问题:

import numpy as np
from mpl_toolkits.mplot3d import Axes3D

from matplotlib import pyplot as plt

x=np.linspace(0,1,10)
y=np.linspace(0,1,10)

X,Y=np.meshgrid(x,y)

ax = plt.gca(projection='3d')
ax.plot_surface(X,Y,X+Y)
plt.show()

此代码绘制了一个3d表面,但我无法抓取并旋转它。问题在哪里?

1 个答案:

答案 0 :(得分:1)

当我遇到同样的问题时,在导入任何相关的matplotlib之前添加以下行(即在您的示例中的第2行上方)可以解决问题。

import matplotlib
matplotlib.use('Qt4Agg')

所以,你的例子是:

import numpy as np
import matplotlib
matplotlib.use('Qt4Agg')

from mpl_toolkits.mplot3d import Axes3D

from matplotlib import pyplot as plt

x=np.linspace(0,1,10)
y=np.linspace(0,1,10)

X,Y=np.meshgrid(x,y)

ax = plt.gca(projection='3d')
ax.plot_surface(X,Y,X+Y)
plt.show()