Reverse Z Axis on matplotlib 3D Plot

前端 未结 1 467
面向向阳花
面向向阳花 2020-12-20 16:03

How would one reverse the order on the z axis of a 3D plot (i.e. negative is up, and positive is down)? The following code produces a cone with the base pointing downward; i

相关标签:
1条回答
  • 2020-12-20 16:28

    Use the invert_zaxis method of the 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()
    

    enter image description here

    0 讨论(0)
提交回复
热议问题