python怎么画参数函数图像_用Python绘制带参数的函数图像

本文介绍了如何使用Python的matplotlib库绘制带有参数的函数图像,以正态分布为例,详细解释了绘制过程并提供了完整的代码示例。通过优化代码,实现了更灵活的参数传递方式,确保了函数调用的正确性。
摘要由CSDN通过智能技术生成

上一次我们讲解了利用Python的2D绘图库matplotlib来绘制函数图像(用Python画函数图像),下面我们来讨论如何绘制带参数的函数图像。

下面我们用正态分布的概率密度在做例子(概率密度的图像为正态分布曲线),其概率密度如下:

用Python绘制带参数的函数图像

概率密度中包含两个参数,其中σ为分布的标准差,μ为分布的均值。

首先,根据概率密度公式,我们可以得到如下映射方法。其中参数u为均值,s为标准差;代码中的math.exp为计算自然对数e的幂,math.sqrt为开根号,math.pi为圆周率π。import math

def f_standard_normal_distribution(x,u,s):

return math.exp((-(x-u)**2)/2*(s**2))/(math.sqrt(2*math.pi)*s)

下面,我们在绘制方法中添加参数,并将参数传到映射方法中(因为需要对应传参,此时的draw_function不能再将映射方法作为参数了)。def draw_function(a,b,density,u,s):

x=numpy.linspace(a,b,density)

y=[f_standard_normal_distribution(i,u,s) for i in x]

pyplot.plot(x,y)

pyplot.show()

此时调用draw_function函数绘制正态分布曲线的结果如下:draw_function(-3,3,600,0,1)

用Python绘制带参数的函数图像【完整代码】如下:

import matplotlib.pyplot as pyplot

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
要在Python指数函数图像,可以使用Matplotlib库。以下是一个简单的例子: ```python import numpy as np import matplotlib.pyplot as plt # 定义指数函数 def exp_func(x, a, b): return a * np.exp(b * x) # 生成一些随机数据 x_data = np.linspace(0, 5, 50) y_data = 2.5 * np.exp(0.8 * x_data) + np.random.normal(size=50) # 使用curve_fit函数进行拟合 from scipy.optimize import curve_fit popt, pcov = curve_fit(exp_func, x_data, y_data) # 绘制数据和拟合曲线 plt.scatter(x_data, y_data) plt.plot(x_data, exp_func(x_data, *popt), 'r-') plt.show() ``` 在上面的代码中,我们首先定义了一个指数函数`exp_func`,然后生成一些随机数据。使用`curve_fit`函数进行拟合,得到拟合参数`popt`。最后,使用Matplotlib库绘制数据和拟合曲线。 如果你想要更深入地了解如何使用Python进行回归分析,可以使用Scikit-learn库。这个库包了许多常见的回归算法,包括线性回归、岭回归、Lasso回归、弹性网络回归等。以下是一个使用岭回归进行指数拟合的例子: ```python import numpy as np from sklearn.linear_model import Ridge import matplotlib.pyplot as plt # 生成一些随机数据 x_data = np.linspace(0, 5, 50) y_data = 2.5 * np.exp(0.8 * x_data) + np.random.normal(size=50) # 将数据转化为矩阵形式 X = x_data.reshape(-1, 1) y = y_data.reshape(-1, 1) # 使用岭回归进行拟合 ridge = Ridge(alpha=1.0) ridge.fit(X, y) # 绘制数据和拟合曲线 plt.scatter(x_data, y_data) plt.plot(x_data, ridge.predict(X), 'r-') plt.show() ``` 在上面的代码中,我们首先生成一些随机数据。将数据转化为矩阵形式,然后使用岭回归进行拟合。最后,使用Matplotlib库绘制数据和拟合曲线。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值