我在 Python 3.4.3 上,无法升级系统。我的问题是我想使用matplotlib
和生成 3d 线框图mpl_toolkits.mplot3d
ax.plot_wireframe(*a,b, rstride=1, cstride=2)
>> SyntaxError: only named arguments may follow *expression
从这个问题我得到,之前的 Python 3.5 星号表达式只允许作为 exprlist 中的最后一项。
做ax.plot_wireframe(b,*a, rstride=1, cstride=2)
的工作,但这 - 当然 - 在一个带有扭曲轴的情节中产生。
我的问题:是否有可能从线框图中交换轴(eqax.plot_wireframe(Z,X,Y)
代替(X,Y,Z)
,或者是否有另一种解决方法来解决我的拆包问题?
更多详细信息:
a = np.meshgrid(np.arange(ys.shape[0]),xs)
b = ys.T
print(ys.shape)
>>(448, 33)
print(ys.shape[0])
>>488
print(b.shape)
>>(33,448)
print(xs.shape)
>>(33,)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~ 我能够通过给 Python 提供它想要的东西来规避这个问题,即命名参数。因此,该行现在显示为:
ax.plot_wireframe(*a,Z=b)