1、创建三维坐标轴对象Axes3D

创建Axes3D主要有两种方式,一种是利用关键字projection='3d'来实现,另一种是通过从mpl_toolkits.mplot3d导入对象Axes3D来实现,目的都是生成具有三维格式的对象Axes3D

#figure:新的画布
fig=plt.figure()
#axes:坐标轴
ax1=plt.axes(projection='3d')
#ax=fig.add_subplot(111,projection='3d')#画子图
plt.show() #方法二,利用三维轴
fig=plt.figure()
ax2=Axes3D(fig)

2、三维曲线和散点

#三维曲线和散点
z=np.linspace(0,13,1000)
x=5*np.sin(z)
y=5*np.cos(z)
zd=13*np.random.random(100)
xd=5*np.sin(zd)
yd=5*np.cos(zd)
ax1.scatter3D(xd,yd,zd,cmap='Blues')#绘制散点图
ax1.plot3D(x,y,z,'gray') #绘制空间曲线
plt.show()

3、三维曲面

import matplotlib.pyplot as plt
import numpy as np fig=plt.figure()
ax3=plt.axes(projection='3d') #定义三维数据
XX=np.arange(-5,5,0.5)
YY=np.arange(-5,5,0.5)
X,Y=np.meshgrid(XX,YY)
Z=np.sin(X)+np.cos(Y) #作图
ax3.plot_surface(X,Y,Z,cmap='rainbow')
ax3.contour(X,Y,Z,zdim='z',offset=-2,cmap='rainbow') #等高线图,要设置offset,为Z的最小值
plt.show()

可以通过在plot_surface中设置参数rstride、cstride设置步长,来得到更加清晰细腻的图像。这两个参数分别表示在横竖方向上的采样步长,越小绘图越精细。

ax3.plot_surface(X,Y,Z,rstride=1,cstride=1,cmap='rainbow')

Matplotlib:Python三维绘图的更多相关文章

  1. Python学习(一) —— matplotlib绘制三维轨迹图

    在研究SLAM时常常需要对其输出的位姿进行复现以检测算法效果,在ubuntu系统中使用Python可以很好的完成相关的工作. 一. Ubuntu下Python的使用 在Ubuntu下使用Python有 ...

  2. Python使用matplotlib绘制三维曲线

    本文主要演示如何使用matplotlib绘制三维图形 代码如下: # -*- coding: UTF-8 -*- import matplotlib as mpl from mpl_toolkits. ...

  3. Python函数绘图

    最近看数学,发现有时候画个图还真管用,对理解和展示效果都不错.尤其是三维空间和一些复杂函数,相当直观,也有助于解题.本来想用mathlab,下载安装都太费事,杀鸡不用牛刀,Python基本就能实现.下 ...

  4. matplotlib python高级绘图库 一周总结

    matplotlib python高级绘图库 一周总结 官网 http://matplotlib.org/ 是一个python科学作图库,可以快速的生成很多非常专业的图表. 只要你掌握要领,画图将变得 ...

  5. python常用绘图软件包记录

    在没有使用python之前,觉得matlab的绘图功能还算可以~但现在发现python的绘图包真的好强大,绘制出的图像非常专业漂亮,但具体使用还有待学习,这里记录学习过程中遇到的python绘图包,以 ...

  6. Python之绘图和可视化

    Python之绘图和可视化 1. 启用matplotlib 最常用的Pylab模式的IPython(IPython --pylab) 2. matplotlib的图像都位于Figure对象中. 可以使 ...

  7. 使用C语言实现二维,三维绘图算法(1)-透视投影

    使用C语言实现二维,三维绘图算法(1)-透视投影 ---- 引言---- 每次使用OpenGL或DirectX写三维程序的时候, 都有一种隔靴搔痒的感觉, 对于内部的三维算法的实现不甚了解. 其实想想 ...

  8. 使用C语言实现二维,三维绘图算法(3)-简单的二维分形

    使用C语言实现二维,三维绘图算法(3)-简单的二维分形 ---- 引言---- 每次使用OpenGL或DirectX写三维程序的时候, 都有一种隔靴搔痒的感觉, 对于内部的三维算法的实现不甚了解. 其 ...

  9. 使用C语言实现二维,三维绘图算法(2)-解析曲面的显示

    使用C语言实现二维,三维绘图算法(2)-解析曲面的显示 ---- 引言---- 每次使用OpenGL或DirectX写三维程序的时候, 都有一种隔靴搔痒的感觉, 对于内部的三维算法的实现不甚了解. 其 ...

随机推荐

  1. python浮点数计算--5

    #!/usr/bin/python #coding=utf-8 i=1.0 j=3 print(i*j) print(i+j) print(i**j) 备注:无论是哪种运算,只要有操作数是浮点数,py ...

  2. docker中使用systemctl启动服务

    解决 Failed to get D-Bus connection: Operation not permitted https://serverfault.com/questions/824975/ ...

  3. python 中 *args he **kwargs的区别

    ''' 一 *args 和 **kwargs 的区别? *args 表示任意个 无名参数, 类型是元祖 tuple. **kwargs 表示的是关键字的参数 传入的参数是 dict 类型. 当*和** ...

  4. bom案例6-轮播图

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  5. centOS 强制卸载PHP

    centOS上的php过低是需要重新安装时,不得不卸载自定义安装,如下操作 查看php版本命令: #php -v 这个命令是删除不干净的 #yum remove php 因为使用这个命令以后再用 #p ...

  6. JDK版本基础知识解释

    感谢大佬:https://www.cnblogs.com/bjguanmu/articles/8710209.html jdk:java development kit,是程序员编写java程序需要的 ...

  7. CSS 3D的魅力

    用户1093975发表于Web项目聚集地订阅 151 在这篇文章中: 前言: demo1 demo2 结语: 本文介绍了CSS来实现3D效果,并且有详细代码和解释.建议大家只字不差的阅读.本文的作者是 ...

  8. python使用插入法实现链表反转

    # encoding=utf-8 class LNode(object): def __init__(self, x): self.data = x self.next = None def reve ...

  9. docker基础——1.原理解读

    1. 相关内核知识 docker本质上是宿主机上的进程. 通过namespace实现资源隔离,通过cgroups实现资源限制,通过写时复制机制copy-on-write实现高效文件操作. 依赖kern ...

  10. 浅谈Java之反射

    反射 四种获取Class实例的方法 定义测试结构 获取属性结构 获取方法结构 获取构造器结构(包括父类泛型) 获取实现的接口 获取所在包 获取注解 获取并创建指定构造器 获取指定属性 获取并运行指定方 ...