下面代码来自:Python plot_surface(Axes3D)方法:绘制3D图形

# -*- coding: utf-8 -*-
"""
Created on Mon Oct  7 21:57:52 2019@author: qwy
"""import matplotlib.pyplot as plt
import numpy as np
from mpl_toolkits.mplot3d import Axes3D
fig = plt.figure(figsize=(12, 8))
ax = Axes3D(fig)
'''
fig = plt.figure(figsize=(12, 8))
ax = fig.gca(projection='3d')
'''delta = 0.125
# 生成代表X轴数据的列表
x = np.arange(-3.0, 3.0, delta)
# 生成代表Y轴数据的列表
y = np.arange(-2.0, 2.0, delta)
# 对x、y数据执行网格化
X, Y = np.meshgrid(x, y)
Z1 = np.exp(-X**2 - Y**2)
Z2 = np.exp(-(X - 1)**2 - (Y - 1)**2)
# 计算Z轴数据(高度数据)
Z = (Z1 - Z2) * 2
# 绘制3D图形
surf = ax.plot_surface(X, Y, Z,rstride=1,  # rstride(row)指定行的跨度cstride=1,  # cstride(column)指定列的跨度cmap=plt.get_cmap('rainbow'))  # 设置颜色映射
# 设置Z轴范围
ax.set_zlim(-2, 2)
# 设置标题
plt.title("3D图")
fig.colorbar(surf, shrink=0.5, aspect=5)
plt.show()

  • 3D 图形需要的数据与等高线图基本相同:X、Y 数据决定坐标点,Z 轴数据决定 X、Y 坐标点对应的高度。与等高线图使用等高线来代表高度不同,3D 图形将会以更直观的形式来表示高度。

  • 为了绘制 3D 图形,需要调用 Axes3D 对象的 plot_surface()方法来完成。

  • 关于plot_surface参数,如下:

参数 描述
X,Y,Z 2D数组形式的数据值
rstride 数组行距(步长大小)
cstride 数组列距(步长大小)
color 曲面块颜色
cmap 曲面块颜色映射
facecolors 单独曲面块表面颜色
norm 将值映射为颜色的 Nonnalize实例
vmin 映射的最小值
vmax 映射的最大值

关于3D绘图的应用1:
下面代码来自:python金融大数据分析笔记----第五章(数据可视化)3 —【金融学图表】

from mpl_toolkits.mplot3d import Axes3D
import matplotlib.pyplot as plt
import numpy as np
plt.rcParams['font.sans-serif']='Lisu'
plt.rcParams['axes.unicode_minus']=Falsestrike = np.linspace(50, 150, 24)
ttm = np.linspace(0.5, 2.5, 24)
strike, ttm = np.meshgrid(strike, ttm)
iv = (strike - 100) ** 2 / (100 * strike) / ttm
# generate fake implied volatilitiesfig = plt.figure(figsize=(9, 6))
ax = fig.gca(projection='3d')'''同上面两行代码
fig = plt.figure(figsize=(12, 8))
ax = Axes3D(fig)
'''surf = ax.plot_surface(strike, ttm, iv, rstride=2, cstride=2, cmap=plt.cm.coolwarm, linewidth=0.5, antialiased=True)
ax.set_xlabel('strike')
ax.set_ylabel('time-to-maturity')
ax.set_zlabel('implied volatility')
fig.colorbar(surf, shrink=0.5, aspect=5)

  • 另外,关于Matplotlib.pyplot 三维绘图,可点击此处

3D绘图ax.plot_surface()相关推荐

  1. Python画图示例(4) 3D绘图

    Python画图示例(1) 一维数据集绘图 Python画图示例(2) 二维数据集绘图 Python画图示例(3) 其他绘图样式,散点图,直方图等 Python画图示例(4) 3D绘图 import ...

  2. Python画图示例之 3D绘图

    import numpy as npimport matplotlib.pyplot as pltstike = np.linspace(50, 150, 24)ttm = np.linspace(0 ...

  3. python 理解Matplotlib 3D (三维图) 绘图函数 plot_surface 的 rstride 和 cstride参数

    总而言之, rstride 和 cstride是用来控制行平滑程度和列平滑程度的参数. 其值最小为1, 最大可以无穷大, 但如果超过了X或Y的默认栅格数后, 将对图像无影响. 当rstride 和 c ...

  4. python 3d绘图 拖动_使用python-matplotlib连续3D绘图(即图形更新)?

    我有一个模拟计算每次模拟迭代的表面数据. 我想连续将该数据绘制为同一窗口的表面图(在每次迭代中更新图),以便了解它是如何演变的并检查算法. 我的想法是创建一个类来初始化窗口/绘图,然后从模拟循环内部重 ...

  5. 30.32.33.词云图、3D绘图、矩阵可视化、绘制混淆矩阵

    30.词云图(Word cloud) 30.1.Example 1: Basic word cloud 31.3D绘图 31.1.在3D图上绘制2D数据 31.2.3D 散点图 (scatterplo ...

  6. python 3d绘图模块_Python绘制3D图形

    3D图形在数据分析.数据建模.图形和图像处理等领域中都有着广泛的应用,下面将给大家介绍一下如何使用python进行3D图形的绘制,包括3D散点.3D表面.3D轮廓.3D直线(曲线)以及3D文字等的绘制 ...

  7. Python Matplotlib 3D绘图详解(汇总)

    Python Matplotlib 3D绘图详解(汇总) 最初开发的 Matplotlib,仅支持绘制 2d 图形,后来随着版本的不断更新, Matplotlib 在二维绘图的基础上,构建了一部分较为 ...

  8. Python中的3D绘图命令~放到论文或PPT里太加分了

    导语 很多情况下,为了能够观察到数据之间的内部的关系,可以使用绘图来更好的显示规律. 比如在下面的几张动图中,使用matplotlib中的三维显示命令,使得我们可以对于logistic回归网络的性能与 ...

  9. python 3d绘图平面_Python的地形三维可视化Matplotlib和gdal使用示例

    我是以Python开门的,我还是觉得Python也可以进行地形三维可视化,当然这里需要借助第三方库,so,我就来介绍:Python一个很重要可视化插件,Matplotlib. Matplotlib是P ...

最新文章

  1. python使用imbalanced-learn的SMOTETomek方法同时进行上采样和下采样处理数据不平衡问题
  2. Compiling: main.cpp /bin/sh: g++: not found
  3. ***微信 该连接无法访问问题解决办法
  4. 第三天·HTML常用标签
  5. 两种写法的效果一样,那么到底哪一种更好呢?
  6. 微型计算机与维修自测,微机系统及维护第三章自测.doc
  7. linux几种快速清空文件内容的方法
  8. ASP.NET在线用户列表精确版——解决用户意外退出在线列表无法及时更新问题
  9. ubuntu上wordpress安装的前置工作
  10. python获取钉钉日志数据_python3实现zabbix告警推送钉钉的示例
  11. java的数列极差_[hoj]数列极差问题 | 学步园
  12. STM32之ADC单通道连续例程
  13. 复制K2流程图实现记录
  14. VMware Horizon7安装-分步指南
  15. oracle数据恢复
  16. 传感器网络与物联网-1.射频识别技术
  17. 程序员需要了解英国文学
  18. 鼠标中键控制音量大小
  19. 传统企业如何实现数字化转型
  20. 万豪 数据泄露 sql注入_如何防止数据库泄漏和注入

热门文章

  1. 程序员个性注释专属(保存下)
  2. Bash与Csh的区别
  3. T2Admin 管理系统框架介绍
  4. 如何让excel冻结窗格在打印的每页出现
  5. 【有利可图网】PS教程:简单又超赞!超立体的文字人像效果
  6. 嵌入式软件设计(怎么学)
  7. 部署一个 Containerd 容器运行时的 Kubernetes 集群
  8. 运动基元(二):贝塞尔曲线
  9. 洛谷3393 逃离僵尸岛
  10. 【模电】0005 光耦的使用