matplotlib 3D绘图使用view_init的roll参数报错及功能可用性咨询
matplotlib 3D绘图使用view_init的roll参数报错及功能可用性咨询
嗨,我来帮你理清这个问题~
你遇到的Axes3D.view_init() got an unexpected keyword argument 'roll'错误,核心原因是**roll参数已经从view_init()方法中移除**了。在较新的matplotlib版本里,这个方法只支持elev(仰角)和azim(方位角)这两个关键字参数,不再接受roll。
不过别担心,roll的功能并没有被砍掉,只是调用方式变了:你需要单独使用set_roll()方法来设置滚转角。
把你代码里的这一行:
ax.view_init(elev=30, azim=45, roll=15)
替换成下面的写法就可以正常运行了:
ax.view_init(elev=30, azim=45) ax.set_roll(15)
另外,还有一种等价的方式是直接修改ax.roll属性,之后触发画布重绘:
ax.view_init(elev=30, azim=45) ax.roll = 15 ax.figure.canvas.draw()
顺便提一句,你的代码里还有个小细节要注意:for ll循环里的xlist = ...和后续的plt.plot()代码都需要缩进一层,不然会出现语法错误哦。
备注:内容来源于stack exchange,提问作者user3165683
相关产品推荐
相关产品推荐

