Python实现高斯函数的三维显示方法

yipeiwu_com7年前Python基础

在网上查阅资料,发现很少用Python进行高斯函数的三维显示绘图的,原因可能是其图形显示太过怪异,没有MATLAB精细和直观。

回顾一下二维高斯公式:

Python 高斯函数的三维显示

σ此处取3。

在MATLAB下的程序为:

u=[-10:0.1:10];
v=[-10:0.1:10];
[U,V]=meshgrid(u,v);
H=exp(-(U.^2+V.^2)./2/3^2);
mesh(u,v,H); %绘制三维曲面的函数
title('高斯函数曲面');

其显示结果为:

Python 高斯函数的三维显示

放大效果显示,很平滑和直观。

Python 高斯函数的三维显示

以下为Python的程序部分:

import numpy as np
import matplotlib.pyplot as plt
import math
import mpl_toolkits.mplot3d

x, y = np.mgrid[-2:2:200j, -2:2:200j]
z=(1/2*math.pi*3**2)*np.exp(-(x**2+y**2)/2*3**2)
ax = plt.subplot(111, projection='3d')
ax.plot_surface(x, y, z, rstride=1, cstride=1, cmap='rainbow', alpha=0.9)#绘面

ax.set_xlabel('x')
ax.set_ylabel('y')
ax.set_zlabel('z')
plt.show()

显示效果:

Python 高斯函数的三维显示

以上这篇Python实现高斯函数的三维显示方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

python读取word文档的方法

本文实例讲述了python读取word文档的方法。分享给大家供大家参考。具体如下: 首先下载安装win32com from win32com import client as wc...

python多线程http下载实现示例

测试平台 Ubuntu 13.04 X86_64 Python 2.7.4 花了将近两个小时, 问题主要刚开始没有想到传一个文件对象到线程里面去, 导致下载下来的文件和源文件MD5不一样...

matplotlib 输出保存指定尺寸的图片方法

其实这个问题来源于笔者的横坐标太多了,然后生成的那个figure框框太小,导致坐标重叠,而输出的图片是需要批量保存的,总不能每次都拉长截图吧 所以在plot绘图之前加上了一句 plt...

对python特殊函数 __call__()的使用详解

__call__ 在Python中,函数其实是一个对象: >>> f = abs >>> f.__name__ 'abs' >>>...

在Python中用has_key()方法查找键是否存在的教程

 如果给定的键在字典可用,has_key()方法返回true,否则返回false。 语法 以下是has_key()方法的语法: dict.has_key(key) 参...