脚本之家,脚本语言编程技术及教程分享平台!
分类导航

Python|VBS|Ruby|Lua|perl|VBA|Golang|PowerShell|Erlang|autoit|Dos|bat|

服务器之家 - 脚本之家 - Python - Python实现高斯函数的三维显示方法

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

2021-05-09 00:51章子雎Kevin Python

今天小编就为大家分享一篇Python实现高斯函数的三维显示方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧

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

回顾一下二维高斯公式:

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

σ此处取3。

在matlab下的程序为:

?
1
2
3
4
5
6
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的程序部分:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
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实现高斯函数的三维显示方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持服务器之家。

原文链接:https://blog.csdn.net/zhangziju/article/details/79790822

延伸 · 阅读

精彩推荐