绘制一副3D图像

draw3D(X,Y,Z, angle)

import numpy as np
from matplotlib import pyplot as plt
from mpl_toolkits.mplot3d import Axes3D #X,Y,Z are np.array
#angle is a tuple, stands for the initial view angle of 3D figure def draw3D(X,Y,Z, angle):
fig = plt.figure(figsize=(15,7))
ax = Axes3D(fig)
ax.view_init(angle[0],angle[1])
ax.plot_surface(X, Y, Z, rstride=1, cstride=1, cmap=plt.cm.coolwarm,alpha=0.8)
plt.show() #e.g.
x=np.linspace(-10,10,100)
y=np.linspace(-10,10,100)
X,Y=np.meshgrid(x,y)
X_f=X.flatten()
Y_f=Y.flatten()
data=zip(X_f,Y_f)
z1=np.array([function(d) for d in data])
z1=z1.reshape(100,100) draw3D(X,Y,z1,(75,80))

若要给各个轴命名,增加如下

  1. plt.title("This is main title")      #总标题
  2. ax.plot_surface(X, Y, Z, rstride=1, cstride=1, cmap=plt.cm.coolwarm)#用取样点(x,y,z)去构建曲面
  3. ax.set_xlabel('x label', color='r')
  4. ax.set_ylabel('y label', color='g')
  5. ax.set_zlabel('z label', color='b')      #给三个坐标轴注明
  6. plt.show()#显示模块中的所有绘图对象

  

Python 画3D图像的更多相关文章

  1. python 画3D的高斯曲线

    用python画3D的高斯曲线,我想如果有多个峰怎么画? import numpy as npimport matplotlib.pyplot as pltimport mathimport mpl_ ...

  2. python画激活函数图像

    导入必要的库 import math import matplotlib.pyplot as plt import numpy as np import matplotlib as mpl mpl.r ...

  3. 使用python画3D线条

    """用于验证整体趋势正确性""" #!python3 #-*- coding:utf-8 -*- import matplotlib as ...

  4. 用python画函数图像

    import matplotlib.pyplot as plt import numpy as np x = np.linspace(0, 1, 50) # 从0到1,等分50分 y = 210*(x ...

  5. matplot画3d图像

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

  6. python如何画三维图像?

    python三维图像输出的代码如下所示:#画3D函数图像输出from mpl_toolkits.mplot3d import Axes3Dfrom matplotlib import cmimport ...

  7. 【转载】从零实现3D图像引擎:(2)画2D直线不简单

    原文:从零实现3D图像引擎:(2)画2D直线不简单 1. 数学分析 1) 画直线的问题 本来我以为画直线会很容易,随便拿个直线公式,遍历X求Y画出来不就完了么,但事实并非如此.以2D直线为例,因为3D ...

  8. 沉淀再出发:用python画各种图表

    沉淀再出发:用python画各种图表 一.前言 最近需要用python来做一些统计和画图,因此做一些笔记. 二.python画各种图表 2.1.使用turtle来画图 import turtle as ...

  9. 用Python画如此漂亮的专业插图 ?简直So easy!

    本文整理自知乎问答,仅用于学术分享,著作权归作者所有.如有侵权,请联系我删文处理.多多转发,多多学习! 方法一 强烈推荐 Python 的绘图模块 matplotlib: python plottin ...

随机推荐

  1. Windows平台上使用Github搭建Git服务器的图文教程

    Git没有客户端服务器端的概念,但是要共享Git仓库,就需要用到通信协议,例如SSH协议(FTP , HTTPS , SFTP等协议也能实现Git共享,此文档不讨论),但是SSH有客户端服务器端,所以 ...

  2. 枚举 Java Enumeration接口

    Enumation 定义了一些方法,通过这些方法可以枚举对象集合中的元素 如: boolean hasMoreElements() 测试此枚举是否包含更多的元素 object nextElement( ...

  3. removing-guest-session-at-login-in-ubuntu-14-04

    http://askubuntu.com/questions/451526/removing-guest-session-at-login-in-ubuntu-14-04

  4. VMware虚拟机里centos7下安装mysql5.6并授权远程连接Navicat

    这节来安装Mysql5.6,并远程授权连接本地windows的Navicat,可以根据以下步骤安装.此文章为自己收藏,必要时拿出来直接用的,有需要的友友可以查看查看的.文章图片有借助于网络的. 1.新 ...

  5. Jmeter学习—004—使用代理录制脚本—HTTP代理服务器(APP、web皆可)

    版权声明:本文为博主原创文章,未经博主允许不得转载. https://blog.csdn.net/mmmmmmm_2niu/article/details/78136253记得我最开始使用jmeter ...

  6. 亚马逊aws 一个实例双网卡-两个弹性ip设置

    一个实例默认只有1个网络接口: 步骤一.创建一个新的网络接口,附加到实例. 步骤二.手动添加路由 增加两个路由表,为后续的双网关做点小准备: vim /etc/iproute2/rt_tables 添 ...

  7. Druid + Grafana 应用实践

    谈到大数据,大家首先想到的肯定是Hadoop,近年来互联网技术的快速增长催生了各类大体量数据的爆发,Hadoop最大的贡献在于帮助企业将那些低价值的事件流数据转化为高价值的聚合数据,为企业的经营决策提 ...

  8. Azure PowerShell (15) 批量导出Azure ASM/ARM VM信息

    <Windows Azure Platform 系列文章目录> 客户又提出新的需求,需要知道所有订阅下的虚拟机数量.运行情况等信息. 我花了点时间,写了一个PowerShell脚本,发布到 ...

  9. PHP操作mongoDB 笔记

    转自 http://blog.csdn.net/black_ox/article/details/22678747 命令也可以在参考http://www.jb51.net/article/51601. ...

  10. Ubuntu16.04 创建桌面快捷方式

    一.基本概念 Linux 系统中的Desktop Entry 文件以desktop为后缀名.Desktop Entry 文件是 Linux 桌面系统中用于描述程序启动配置信息的文件. 进入/usr/s ...