python matlibplot绘制3D图形


Posted in Python onJuly 02, 2018

本文实例为大家分享了python matlibplot绘制3D图形的具体代码,供大家参考,具体内容如下

1、散点图使用scatter

from mpl_toolkits.mplot3d import Axes3D
import numpy as np
from matplotlib import pyplot as plt


# 生成3D示例数据

mu_vec1 = np.array([0,0,0]) # 均值向量
cov_mat1 = np.array([[1,0,0],[0,1,0],[0,0,1]]) # 协方差矩阵

class1_sample = np.random.multivariate_normal(mu_vec1, cov_mat1, 20)
class2_sample = np.random.multivariate_normal(mu_vec1 + 1, cov_mat1, 20)
class3_sample = np.random.multivariate_normal(mu_vec1 + 2, cov_mat1, 20)


# class1_sample.shape -> (20, 3), 20 rows, 3 columns


fig = plt.figure(figsize=(8,8))
ax = fig.add_subplot(111, projection='3d')

ax.scatter(class1_sample[:,0], class1_sample[:,1], class1_sample[:,2],
   marker='x', color='blue', s=40, label='class 1')
ax.scatter(class2_sample[:,0], class2_sample[:,1], class2_sample[:,2],
   marker='o', color='green', s=40, label='class 2')
ax.scatter(class3_sample[:,0], class3_sample[:,1], class3_sample[:,2],
   marker='^', color='red', s=40, label='class 3')

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

plt.title('3D Scatter Plot')

plt.show()

python matlibplot绘制3D图形

2、直线使用plot3D

from mpl_toolkits.mplot3d import Axes3D
import matplotlib.pyplot as plt
import numpy as np
from itertools import product, combinations
fig = plt.figure(figsize=(7,7))
ax = fig.gca(projection='3d')
ax.set_aspect("equal")


# 画点

 

# 立方体里的点

X_inside = np.array([[0,0,0],[0.2,0.2,0.2],[0.1, -0.1, -0.3]])

X_outside = np.array([[-1.2,0.3,-0.3],[0.8,-0.82,-0.9],[1, 0.6, -0.7],
      [0.8,0.7,0.2],[0.7,-0.8,-0.45],[-0.3, 0.6, 0.9],
      [0.7,-0.6,-0.8]])

for row in X_inside:
 ax.scatter(row[0], row[1], row[2], color="r", s=50, marker='^')

for row in X_outside:
 ax.scatter(row[0], row[1], row[2], color="k", s=50)


# 画立方体

h = [-0.5, 0.5]
for s, e in combinations(np.array(list(product(h,h,h))), 2):
 if np.sum(np.abs(s-e)) == h[1]-h[0]:
  ax.plot3D(*zip(s,e), color="g")

ax.set_xlim(-1.5, 1.5)
ax.set_ylim(-1.5, 1.5)
ax.set_zlim(-1.5, 1.5)

plt.show()

python matlibplot绘制3D图形

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
在python中的socket模块使用代理实例
May 29 Python
Python三元运算实现方法
Jan 12 Python
python使用7z解压apk包的方法
Apr 18 Python
Python实现把json格式转换成文本或sql文件
Jul 10 Python
Django在pycharm下修改默认启动端口的方法
Jul 26 Python
python实现windows倒计时锁屏功能
Jul 30 Python
妙用itchat! python实现久坐提醒功能
Nov 25 Python
Python对称的二叉树多种思路实现方法
Feb 28 Python
PyQt5.6+pycharm配置以及pyinstaller生成exe(小白教程)
Jun 02 Python
flask框架中的cookie和session使用
Jan 31 Python
pycharm 的Structure界面设置操作
Feb 05 Python
浅谈Python基础之列表那些事儿
May 11 Python
对numpy Array [: ,] 的取值方法详解
Jul 02 #Python
Python使用itertools模块实现排列组合功能示例
Jul 02 #Python
python绘制立方体的方法
Jul 02 #Python
python numpy 一维数组转变为多维数组的实例
Jul 02 #Python
Python实现通过继承覆盖方法示例
Jul 02 #Python
Numpy中矩阵matrix读取一列的方法及数组和矩阵的相互转换实例
Jul 02 #Python
Python 中的range(),以及列表切片方法
Jul 02 #Python
You might like
windows的文件系统机制引发的PHP路径爆破问题分析
2014/07/28 PHP
php中Snoopy类用法实例
2015/06/19 PHP
适用于初学者的简易PHP文件上传类
2015/10/29 PHP
php封装的page分页类完整实例
2016/10/18 PHP
Jquery选择器 $实现原理
2009/12/02 Javascript
javascript小数计算出现近似值的解决办法
2010/02/06 Javascript
在JavaScript中typeof的用途介绍
2013/04/11 Javascript
你有必要知道的25个JavaScript面试题
2015/12/29 Javascript
JavaScript的ExtJS框架中表格的编写教程
2016/05/21 Javascript
jQuery操作动态生成的内容的方法
2016/05/28 Javascript
BootStrap glyphicon图标无法显示的解决方法
2016/09/06 Javascript
react实现pure render时bind(this)隐患需注意!
2017/03/09 Javascript
layer子层给父层页面元素赋值,以达到向父层页面传值的效果实例
2017/09/22 Javascript
在微信小程序里使用watch和computed的方法
2018/08/02 Javascript
Mint UI组件库CheckList使用及踩坑总结
2018/12/20 Javascript
基于vue.js实现购物车
2020/01/15 Javascript
原生JS实现微信通讯录
2020/06/18 Javascript
微信小程序中target和currentTarget的区别小结
2020/11/06 Javascript
使用相同的Apache实例来运行Django和Media文件
2015/07/22 Python
python PyTorch预训练示例
2018/02/11 Python
spark: RDD与DataFrame之间的相互转换方法
2018/06/07 Python
python实现beta分布概率密度函数的方法
2019/07/08 Python
与Django结合利用模型对上传图片预测的实例详解
2019/08/07 Python
家用个人磨皮机:Trophy Skin
2017/03/30 全球购物
手工制作的意大利礼服鞋:Ace Marks
2018/12/15 全球购物
什么是View State?
2013/01/27 面试题
生产车间实习自我鉴定
2013/09/23 职场文书
车间班组长的职责
2013/12/13 职场文书
会计专业大学生职业生涯规划书
2014/02/11 职场文书
《十六年前的回忆》教学反思
2014/02/14 职场文书
厨房领班竞聘演讲稿
2014/04/23 职场文书
副总经理任命书
2014/06/05 职场文书
感谢信范文大全
2015/01/23 职场文书
童年读书笔记
2015/06/26 职场文书
公司趣味运动会开幕词
2016/03/04 职场文书
python实现高效的遗传算法
2021/04/07 Python