• 三十二、总结

    三十二、总结

    欢迎阅读最后的 Matplotlib 教程。 在这里我们将整理整个系列,并显示一个稍微更复杂的 3D 线框图:

    1. from mpl_toolkits.mplot3d import axes3d
    2. import matplotlib.pyplot as plt
    3. import numpy as np
    4. from matplotlib import style
    5. style.use('ggplot')
    6. fig = plt.figure()
    7. ax1 = fig.add_subplot(111, projection='3d')
    8. x, y, z = axes3d.get_test_data()
    9. print(axes3d.__file__)
    10. ax1.plot_wireframe(x,y,z, rstride = 3, cstride = 3)
    11. ax1.set_xlabel('x axis')
    12. ax1.set_ylabel('y axis')
    13. ax1.set_zlabel('z axis')
    14. plt.show()

    三十二、总结 - 图1

    如果你从一开始就关注这个教程的话,那么你已经学会了 Matplotlib 提供的大部分内容。 你可能不相信,但Matplotlib 仍然可以做很多其他的事情! 请继续学习,你可以随时访问 Matplotlib.org,并查看示例和图库页面。

    如果你发现自己大量使用 Matplotlib,请考虑捐助给 John Hunter Memorial 基金。

    注:空间曲面的画法

    1. # 二次抛物面 z = x^2 + y^2
    2. x = np.linspace(-10, 10, 101)
    3. y = x
    4. x, y = np.meshgrid(x, y)
    5. z = x ** 2 + y ** 2
    6. ax = plot.subplot(111, projection='3d')
    7. ax.plot_wireframe(x, y, z)
    8. plot.show()

    三十二、总结 - 图2

    1. # 半径为 1 的球
    2. t = np.linspace(0, np.pi * 2, 100)
    3. s = np.linspace(0, np.pi, 100)
    4. t, s = np.meshgrid(t, s)
    5. x = np.cos(t) * np.sin(s)
    6. y = np.sin(t) * np.sin(s)
    7. z = np.cos(s)
    8. ax = plot.subplot(111, projection='3d')
    9. ax.plot_wireframe(x, y, z)
    10. plot.show()

    三十二、总结 - 图3