python 三维绘图

python三维绘图

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

有两种方式:
目的都是生成具有三维格式的对象 Axes3D.

  • 方式一
    利用参数 projection=‘3d’ 来实现:
#!/usr/bin/env python
# encoding: utf-8
'''
@Author  : pentiumCM
@Email   : 842679178@qq.com
@Software: PyCharm
@File    : plt_learn.py
@Time    : 2020/4/24 16:00
@desc	 : matplotlib测试
'''
import numpy as np
import matplotlib.pyplot as plt
from mpl_toolkits.mplot3d import Axes3D

# 定义坐标轴
fig = plt.figure()
ax1 = plt.axes(projection='3d')

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',c='g')
# 绘制空间曲线
ax1.plot3D(x, y, z, 'gray')
plt.show()


  • 方式二
    通过从 mpl_toolkits.mplot3d 导入对象 Axes3D 来实现
#!/usr/bin/env python
# encoding: utf-8
'''
@Author  : pentiumCM
@Email   : 842679178@qq.com
@Software: PyCharm
@File    : plt_learn.py
@Time    : 2020/4/24 16:00
@desc	 : matplotlib测试
'''
import numpy as np
import matplotlib.pyplot as plt
from mpl_toolkits.mplot3d import Axes3D

# 定义图像和三维格式坐标轴
fig = plt.figure()
ax2 = Axes3D(fig)

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)

# 绘制散点图
ax2.scatter3D(xd, yd, zd, cmap='Blues', c='g')
# 绘制空间曲线
ax2.plot3D(x, y, z, 'gray')
plt.show()


上面两种方案的效果:

在这里插入图片描述

参考:

https://blog.csdn.net/u014636245/article/details/82799573

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值