首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >'Axes3DSubplot‘对象没有属性'voxels’

'Axes3DSubplot‘对象没有属性'voxels’
EN

Stack Overflow用户
提问于 2018-06-01 03:15:14
回答 2查看 4.6K关注 0票数 3

我试图使用matplotlib来显示一些3d perlin噪音。我已经读过,来自Axes3DSubplotAxes3DSubplot方法可以用来简单地显示值。但是,当我尝试调用ax.voxels(voxels, facecolors=colors, edgecolor='k')时,它会抛出异常AttributeError: 'Axes3DSubplot' object has no attribute 'voxels'。这是我的代码:

代码语言:javascript
复制
import noise
import numpy as np
import matplotlib.pyplot as plt
from mpl_toolkits.mplot3d import Axes3D

x, y, z = np.indices((8,8,8))
voxels = np.zeros((8,8,8), dtype=np.bool)

for xp in range(8):
    for yp in range(8):
        for zp in range(8):
            voxels[xp,yp,zp] = True if abs(noise.pnoise3(xp/8,yp/8,zp/8)) > 0.5 else False

colors = np.empty(voxels.shape, dtype=object)
colors[voxels] = 'green'

fig = plt.figure()
ax = fig.gca(projection='3d')
ax.voxels(voxels, facecolors=colors, edgecolor='k')  #EXCEPTION


plt.show()

我的python版本是3.6.2 (Anaconda 64位)。我的matplotlib版本是2.0.2。我使用了ipynb (module://backend_interagg)和Qt5Agg后端,这两者都产生了相同的问题。我在运行Windows 10。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2018-06-01 08:07:07

voxels方法已在matplotlib 2.1中引入

任何早期版本的matplotlib都没有此方法可用。

票数 3
EN

Stack Overflow用户

发布于 2018-06-01 03:34:32

为我工作,python 3.6.4,anaconda 5.1.0和matplotlib 2.2.2中的py魅力。

它表明:

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/50635610

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档