matplotlib 中的曲面图

2024-04-08

我有一个 3 元组列表,表示 3D 空间中的一组点。我想绘制一个覆盖所有这些点的曲面。

The plot_surface函数在mplot3d包要求参数 X、Y 和 Z 为二维数组。是plot_surface绘制曲面的正确函数以及如何将数据转换为所需的格式?

data = [(x1,y1,z1),(x2,y2,z2),.....,(xn,yn,zn)]

对于表面,它与三元组列表有点不同,您应该在二维数组中传递域的网格。

如果你拥有的只是 3d 点列表,而不是某个函数f(x, y) -> z,那么您就会遇到问题,因为有多种方法可以将 3d 点云三角化为曲面。

这是一个光滑表面的例子:

import numpy as np
from mpl_toolkits.mplot3d import Axes3D  
# Axes3D import has side effects, it enables using projection='3d' in add_subplot
import matplotlib.pyplot as plt
import random

def fun(x, y):
    return x**2 + y

fig = plt.figure()
ax = fig.add_subplot(111, projection='3d')
x = y = np.arange(-3.0, 3.0, 0.05)
X, Y = np.meshgrid(x, y)
zs = np.array(fun(np.ravel(X), np.ravel(Y)))
Z = zs.reshape(X.shape)

ax.plot_surface(X, Y, Z)

ax.set_xlabel('X Label')
ax.set_ylabel('Y Label')
ax.set_zlabel('Z Label')

plt.show()
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

matplotlib 中的曲面图 的相关文章

随机推荐

  • .NET Native 和 Ngen.exe 有什么区别?

    标题说明了一切 我希望有人能够向我解释 NET Native 带来了哪些我们在 Ngen exe 中还没有的功能 您可以将 NET Native 视为桌面 CLR 使用的 NGen 技术的演变 NET Native 和 NGEN 有几个主要
  • SQL增加重复值的计数?

    不知道如何问这个问题 我不是在寻找列中值的总数 而是想增量计算重复值 例如 如果我的表看起来像这样 1 ken 2 ken 3 adam 4 ken 5 adam 6 dan 我想在选择过程中添加一列 该列的标签与增量编号重复 如下所示 1
  • 如何获取 Jetty 线程转储?

    我有一个Ubuntu 服务器 10 10 64 位运行网络应用程序码头 6 1 24 6 on Sun 的 JVM 都从标准 Ubuntu 存储库安装 我正在尝试找出该服务器的问题 一段时间后 100 cpu 它可能与 NIO 选择器上的已
  • 使用 pgadmin 连接到远程服务器

    我正在使用 Linode 的本教程 https library linode com databases postgresql pgadmin macos x https library linode com databases postg
  • Sequelize js - 限制和排序错误

    在sequelize js中对查询进行排序的正确方法是什么 例子 db model findAll where conditions order postDate DESC limit 10 offset 0 include model1
  • 如何将对象作为数据类型传递给sequelize中的数据模型?

    我需要将一些不是原始数据类型的东西传递给数据类型 我正在构建类似的东西以发送到 create 方法 const p2 location model latitude lat longitude lng establishment id cr
  • Powershell PromptForChoice - 如何编辑描述?

    我需要创建脚本 该脚本将根据用户输入运行不同的代码块 为此 我在 PS 中使用 PromptForChoice 方法 我的代码目前如下所示 title Disk clear question What do you want to remo
  • 如何在 RecyclerView 中使用拖动手势进行多选?

    这是一个很短的问题 最近 谷歌更新了其材料设计指南 表明多选项目应该像谷歌照片应用程序一样 here https material io guidelines patterns selection html selection usage
  • 如何停止 Visual Studio 缓存导入的 MSBuild 脚本?

    我有一个 csproj 文件 它引用一个共享的 MSBuild 脚本
  • 添加一个复选框以在 Woocommerce 中显示/隐藏结帐字段

    让我们浏览一下这个场景 客户在结帐页面上 有一个复选框 其中包含文字 这是礼物吗 如果选中该复选框 下面的字段将淡入以记笔记 基于这个线程和其他一些线程 这里是我的代码 add filter woocommerce checkout fie
  • RxJava,改造错误:预期为 BEGIN_ARRAY,但在第 1 行第 2 列路径 $ 处为 BEGIN_OBJECT

    我正在使用改造和RxJava库并尝试解析此网址 https api myjson com bins tdze5 我的代码如下 API接口 java public interface APIService GET bins tdze5 Obs
  • 包装函数的函数名称? [复制]

    这个问题在这里已经有答案了 如何获取原始函数的名称 def wrap f def wrapped f args kwargs do something return wrapped f wrap def A params do someth
  • SQL - 如何只获取小数点后的数字?

    如何只获取小数点后的数字 例子 2 938 938 尝试这个 SELECT num 1
  • SQL 查询将一列数字变成字符串

    是否可以转换大字符串中的双精度列 就像是 att1 123 2 3 6 6 77 23 43 4 78 7 6 123 2 9 6 1 77 3 43 24 78 76 6 411 5 346 5 975 75 162 788 4 5 16
  • 如何为 GKE 服务创建 Google CDN

    我已经在 GKE kubernetes 上部署了一个 WordPress 网站 我可以像 mysite test com 这样从互联网访问我的网站 并且工作起来就像一个魅力 现在我想使用Google CDN来加速访问 我尝试过使用 Ingr
  • 如何更改 Visual Code Studio 提交作者

    我不知道为什么 但我的 Visual Studio Code 显示错误的提交作者姓名 我正在尝试更改提交的作者 我怎样才能做到这一点 我已经有很多东西了 但没有运气 这是我尝试过的 由于我有三个提交 所以我尝试了git rebase i H
  • 如何排除“git diff-index”中的文件

    我正在使用 git 预提交挂钩来检查提交 预提交脚本基本上做了一件事 exec git diff index check cached HEAD 它还做了一些其他事情 但它们与本次讨论无关 问题是 我的存储库中有各种各样的文件 但并非所有文
  • 通过单击按钮旋转/翻转两种布局

    我有两个布局 xml 文件 我想从一个页面翻转到另一个页面 这两个 xml 文件是 main xml 和 register xml 如果我单击 main xml 中的登录按钮 页面应该翻转并显示 register xml并且在 regist
  • 在 Anaconda 中安装 Kivy

    我正在尝试在 Windows 7 的 Anaconda 3 4 1 1 中安装 Kivy 但我找不到合适的用户指南来指导我如何安装 但到目前为止 我能够在链接上找到在 OS X 上安装它的说明https github com kivy ki
  • matplotlib 中的曲面图

    我有一个 3 元组列表 表示 3D 空间中的一组点 我想绘制一个覆盖所有这些点的曲面 The plot surface函数在mplot3d包要求参数 X Y 和 Z 为二维数组 是plot surface绘制曲面的正确函数以及如何将数据转换