函数介绍
ax3d.plot_surface( x, # 网格坐标矩阵的x坐标 (2维数组)
y, # 网格坐标矩阵的y坐标 (2维数组)
z, # 网格坐标矩阵的z坐标 (2维数组)
rstride=30, # 行跨距
cstride=30, # 列跨距
cmap='jet' # 配色方案 )
配色方案如下:
有很多配色方案不仅局限于下面的几种,可以根据需要设置不同方案
代码如下:
python# 绘制3D平面图 # 三维曲面图:切分成很多小段,每段绘制一个小平面 import numpy as np import matplotlib.pyplot as mp from mpl_toolkits.mplot3d import Axes3D n = 1000 # 生成网格化坐标矩阵 # np.linspace()函数用于在区间内生成n个数据 # meshgrid用于生成网格矩阵 ''' 例如 矩阵 有如下坐标点 (0,1) (1, 1) (2, 1) (1, 0) (1, 0) (1, 0) 那么生成的x矩阵为 0 1 2 1 1 1 y矩阵为 1 1 1 0 0 0 ''' x, y = np.meshgrid(np.linspace(-3, 3, n), np.linspace(-3, 3, n)) # 根据每个网格点坐标,通过某个公式计算z高度坐标 z = (1 - x / 2 + x ** 5 + y ** 3) * np.exp(-x ** 2 - y ** 2) mp.figure('3D', facecolor='lightgray') # 创建画布 # matplotlib不同版本对应的projection的写法不同,可根据对应版本查询其不同的写法,当前matplotlib版本为3.5.2 ax3d = mp.gca(projection='3d') # 获取坐标系 mp.title('3D Surface', fontsize=18) # 设置图形的名称和字体 ax3d.set_xlabel('x', fontsize=14) # 设置x轴名称和名称的字体大小 ax3d.set_ylabel('y', fontsize=14) ax3d.set_zlabel('z', fontsize=14) # 绘制3D平面图 # rstride: 行跨距 # cstride: 列跨距 ax3d.plot_surface(x, y, z, rstride=30, cstride=30, cmap='jet') # jet配色方案,正数越大越红,越小越蓝 mp.show()
python 绘制3D平面图
瓦力wow2025-05-24 0:31
相关推荐
灵智工坊LingzhiAI1 小时前
人体坐姿检测系统项目教程(YOLO11+PyTorch+可视化)weixin_472339464 小时前
高效处理大体积Excel文件的Java技术方案解析枯萎穿心攻击5 小时前
响应式编程入门教程第二节:构建 ObservableProperty<T> — 封装 ReactiveProperty 的高级用法Eiceblue6 小时前
【免费.NET方案】CSV到PDF与DataTable的快速转换m0_555762907 小时前
Matlab 频谱分析 (Spectral Analysis)浪裡遊8 小时前
React Hooks全面解析:从基础到高级的实用指南烛阴9 小时前
简单入门Python装饰器lzb_kkk9 小时前
【C++】C++四种类型转换操作符详解好开心啊没烦恼9 小时前
Python 数据分析:numpy,说人话,说说数组维度。听故事学知识点怎么这么容易?面朝大海,春不暖,花不开9 小时前
使用 Python 实现 ETL 流程:从文本文件提取到数据处理的全面指南