• 企业400电话
  • 微网小程序
  • AI电话机器人
  • 电商代运营
  • 全 部 栏 目

    企业400电话 网络优化推广 AI电话机器人 呼叫中心 网站建设 商标✡知产 微网小程序 电商运营 彩铃•短信 增值拓展业务
    python 利用matplotlib在3D空间中绘制平面的案例

    图形:

    0、import

    import numpy as np
    import matplotlib as mpl
    from matplotlib import cm
    from matplotlib import pyplot as plt
    from mpl_toolkits.mplot3d import Axes3D

    1、水平和垂直平面

    # 创建画布
    fig = plt.figure(figsize=(12, 8),
         facecolor='lightyellow'
        )
    # 创建 3D 坐标系
    ax = fig.gca(fc='whitesmoke',
        projection='3d' 
       )# 二元函数定义域平面
    x = np.linspace(0, 9, 9)
    y = np.linspace(0, 9, 9)
    X, Y = np.meshgrid(x, y)
    # -------------------------------- 绘制 3D 图形 --------------------------------
    # 平面 z=4.5 的部分
    ax.plot_surface(X,
        Y,
        Z=X*0+4.5,
        color='g',
        alpha=0.6
        ) 
     # 平面 y=4.5 的部分
    ax.plot_surface(X,
        Y=X*0+4.5,
        Z=Y,
        color='y',
        alpha=0.6
        ) 
    # 平面 x=4.5 的部分
    ax.plot_surface(X=X*0+4.5,
        Y=Y,
        Z=X, 
        color='r',
        alpha=0.6
        ) 
    # -------------------------------- --------------------------------
    # 设置坐标轴标题和刻度
    ax.set(xlabel='X',
      ylabel='Y',
      zlabel='Z',
      xlim=(0, 9),
      ylim=(0, 9),
      zlim=(0, 9),
      xticks=np.arange(0, 10, 2),
      yticks=np.arange(0, 10, 1),
      zticks=np.arange(0, 10, 1)
      )
    # 调整视角
    ax.view_init(elev=15, # 仰角
        azim=60 # 方位角
       )
      
    # 显示图形
    plt.show()

    图形:

    2、斜平面

    # 创建画布
    fig = plt.figure(figsize=(12, 8),
         facecolor='lightyellow'
        )
    # 创建 3D 坐标系
    ax = fig.gca(fc='whitesmoke',
        projection='3d' 
       )
    # 二元函数定义域
    x = np.linspace(0, 9, 9)
    y = np.linspace(0, 9, 9)
    X, Y = np.meshgrid(x, y)
    # -------------------------------- 绘制 3D 图形 --------------------------------
    # 平面 z=3 的部分
    ax.plot_surface(X,
        Y,
        Z=X*0+3,
        color='g'
        )
    # 平面 z=2y 的部分
    ax.plot_surface(X,
        Y=Y,
        Z=Y*2,
        color='y',
        alpha=0.6
        )
    # 平面 z=-2y + 10 部分
    ax.plot_surface(X=X,
        Y=Y,
        Z=-Y*2+10,
        color='r',
        alpha=0.7
        )
    # -------------------------------- --------------------------------
    # 设置坐标轴标题和刻度
    ax.set(xlabel='X',
      ylabel='Y',
      zlabel='Z',
      xlim=(0, 9),
      ylim=(0, 9),
      zlim=(0, 9),
      xticks=np.arange(0, 10, 2),
      yticks=np.arange(0, 10, 1),
      zticks=np.arange(0, 10, 1)
      )
    # 调整视角
    ax.view_init(elev=15, # 仰角
        azim=10 # 方位角
       )
      
    # 显示图形
    plt.show()

    图形:

    软件信息:

    补充:Python数据分析(Matplotlib)之3D图形

    使用python绘制一个简单的三维图

    我就废话不多说了,大家还是直接看代码吧~

    from mpl_toolkits.mplot3d import Axes3D
    import matplotlib.pylab as plt
    import numpy as np
    from matplotlib import cm
    #使用3d关键字来进行指定图像的三维投影
    fig = plt.figure()
    ax = fig.add_subplot(111,projection='3d')
    """numpy.linspace(start, stop, num=50, endpoint=True, retstep=False, dtype=None)
    在指定的间隔内返回均匀间隔的数字。
    meshgrid函数创建一个二维坐标网络,这将用于二维坐标网络,这将用于变量x和y的赋值
    """
    u = np.linspace(-1,1,100)
    x,y =np.meshgrid(u,u)
    z = x**2 +y**2
    #指定行和列的步幅,以及绘制的色彩表
    ax.plot_surface(x,y,z,rstride=4,cstride=4,cmap=cm.YlGnBu_r)
    plt.show()
    

    以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。如有错误或未考虑完全的地方,望不吝赐教。

    您可能感兴趣的文章:
    • 用Python的绘图库(matplotlib)绘制小波能量谱
    • python matplotlib绘图实现删除重复冗余图例的操作
    • Python基础之画图神器matplotlib
    • python读取并显示图片的三种方法(opencv、matplotlib、PIL库)
    • python学习之使用Matplotlib画实时的动态折线图的示例代码
    • 用pip给python安装matplotlib库的详细教程
    • python Matplotlib基础--如何添加文本和标注
    • python使用matplotlib的savefig保存时图片保存不完整的问题
    • 基于python的matplotlib制作双Y轴图
    上一篇:PyQt5通过信号实现MVC的示例
    下一篇:python 利用openpyxl读取Excel表格中指定的行或列教程
  • 相关文章
  • 

    © 2016-2020 巨人网络通讯 版权所有

    《增值电信业务经营许可证》 苏ICP备15040257号-8

    python 利用matplotlib在3D空间中绘制平面的案例 python,利用,matplotlib,在,空,