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

yipeiwu_com6年前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中比较运算符的使用

实例说明Python中比较运算符的使用

下表列出了所有Python语言支持的比较操作符。假设变量a持有10和变量b持有20,则:  例如: 试试下面的例子就明白了所有的Python编程语言提供的比较操作符:...

Python中关于Sequence切片的下标问题详解

前言 在python中, 切片是一个经常会使用到的语法, 不管是元组, 列表还是字符串, 一般语法就是: sequence[ilow:ihigh:step] # ihigh,step...

python 实现方阵的对角线遍历示例

任务描述 对一个方阵矩阵,实现平行于主对角线方向的对角线元素遍历。 从矩阵索引入手: [[ 1 2 3 4 5] [ 6 7 8 9 10] [11 12 13 14 15]...

配置 Pycharm 默认 Test runner 的图文教程

配置 Pycharm 默认 Test runner 的图文教程

如下所示: 由图中可见,当前使用的是 unittest 测试框架 修改方式如下: 以上这篇配置 Pycharm 默认 Test runner 的图文教程就是小编分享给大家的全部...

Python正则表达式的使用范例详解

作为一个概念而言,正则表达式对于Python来说并不是独有的。但是,Python中的正则表达式在实际使用过程中还是有一些细小的差别。 本文是一系列关于Python正则表达式文章的其中一部...