[英]Reverse Z Axis on matplotlib 3D Plot
如何逆轉3D圖的z軸上的順序(即負向上,正向向下)? 下面的代碼生成一個底部朝下的圓錐體; 是否有一個命令(如ax.reverse_zlim3d(True)
或其他東西?)可用於更改刻度順序?
下面的代碼繪制了一個底部指向下方的圓錐體。 我想顛倒z軸的順序,以便它的底部朝上,如冰淇淋圓錐,在圖形的頂部而不是底部為-1。
from matplotlib import pyplot as p
from mpl_toolkits.mplot3d import Axes3D # @UnusedImport
import numpy as np
from math import pi, cos, sin
z = np.arange(0, 1, 0.02)
theta = np.arange(0, 2 * pi + pi / 50, pi / 50)
fig = p.figure()
axes1 = fig.add_subplot(111, projection='3d')
for zval in z:
x = zval * np.array([cos(q) for q in theta])
y = zval * np.array([sin(q) for q in theta])
axes1.plot(x, y, -zval, 'b-')
axes1.set_xlabel("x label")
axes1.set_ylabel("y label")
axes1.set_zlabel("z label")
p.show()
使用invert_zaxis
的方法Axes3D
:
from matplotlib import pyplot as p
from mpl_toolkits.mplot3d import Axes3D # @UnusedImport
import numpy as np
from math import pi, cos, sin
z = np.arange(0, 1, 0.02)
theta = np.arange(0, 2 * pi + pi / 50, pi / 50)
fig = p.figure()
axes1 = fig.add_subplot(111, projection='3d')
for zval in z:
x = zval * np.array([cos(q) for q in theta])
y = zval * np.array([sin(q) for q in theta])
axes1.plot(x, y, -zval, 'b-')
axes1.set_xlabel("x label")
axes1.set_ylabel("y label")
axes1.set_zlabel("z label")
axes1.invert_zaxis()
p.show()
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.