最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Python進(jìn)行指數(shù)和對(duì)數(shù)曲線擬合詳解

 更新時(shí)間:2024年04月12日 10:38:29   作者:python收藏家  
曲線擬合是構(gòu)造曲線或數(shù)學(xué)函數(shù)的過程,其具有對(duì)一系列數(shù)據(jù)點(diǎn)的最佳擬合,可能受到約束,本文主要介紹了如何使用Python實(shí)現(xiàn)指數(shù)和對(duì)數(shù)曲線擬合,需要的可以參考下

前言

在本文中,我們將學(xué)習(xí)如何在Python中進(jìn)行指數(shù)和對(duì)數(shù)曲線擬合。首先我們要問的問題是什么是曲線擬合?

曲線擬合是構(gòu)造曲線或數(shù)學(xué)函數(shù)的過程,其具有對(duì)一系列數(shù)據(jù)點(diǎn)的最佳擬合,可能受到約束。

  • 對(duì)數(shù)曲線擬合:對(duì)數(shù)曲線是對(duì)數(shù)函數(shù)的曲線圖。
  • 指數(shù)曲線擬合:指數(shù)曲線是指數(shù)函數(shù)的曲線圖。

讓我們考慮兩個(gè)方程

y = alog(x) + b 其中a、b是該對(duì)數(shù)方程的系數(shù)。

y = e(ax)*e(b)

我們將在上面的方程上擬合兩條曲線,并找到最佳擬合曲線。對(duì)于Python中的曲線擬合,我們將使用一些庫函數(shù)。

我們還將使用numpy.polyfit()方法來擬合曲線。這個(gè)函數(shù)有三個(gè)參數(shù)x,y,多項(xiàng)式次數(shù)(n)返回n次多項(xiàng)式的系數(shù)。

語法:numpy.polyfit(x,y,deg)

主要參數(shù):

x-> x坐標(biāo)

y-> y坐標(biāo)

deg ->擬合多項(xiàng)式的階數(shù)。因此,如果給定deg為1,我們得到線性多項(xiàng)式的系數(shù),或者如果它為2,我們得到二次多項(xiàng)式的系數(shù)。

對(duì)數(shù)曲線擬合

import numpy as np

???????# It is for plotting the curve
import matplotlib.pyplot as plt

由于我們已經(jīng)導(dǎo)入了所需的庫,因此必須創(chuàng)建兩個(gè)名為x和y的數(shù)組。在創(chuàng)建這兩個(gè)數(shù)組之后,我們必須在numpy.log()方法的幫助下獲取x和y中的值的對(duì)數(shù)。

# Points on X-axis
x_data = np.array([11, 23, 31, 43, 51]) 

# Points on Y-axis
y_data = np.array([2, 4, 6, 8, 10])	 

print(x_data)
print(y_data)

# Taking log of x values
xlog_data = np.log(x_data)			 

print(xlog_data)

輸出

之后,得到x和y數(shù)組的對(duì)數(shù)值,在numpy.polyfit()的幫助下,我們找到了方程的系數(shù)。由于我們采用了線性方程,因此在polyfit方法中,我們將在度參數(shù)中傳遞1。

# Given log values of x , y as input
curve = np.polyfit(log_x_data, y_data, 1)

print(curve)

輸出

所以我們得到系數(shù)為[5.04,-10.79],我們可以得到曲線的方程為(y= a*log(x)+y,其中a,b是系數(shù))

y = 5.04 * log_x_data - 10.79 
 
print(y)

輸出

現(xiàn)在,讓我們用xlog_data,ylog_data繪制一個(gè)圖,另一個(gè)用xlog_data和我們得到的y方程繪制一個(gè)圖。為了在python中繪制圖形,我們將使用Matplotlib.pyplot.plot()函數(shù)。

# Blue color
plt.plot(log_x_data, y_data)

???????# Best fit in orange
plt.plot(log_x_data, y)

在上圖中,黃線表示原始x和y坐標(biāo)的圖,藍(lán)線是我們通過計(jì)算獲得的坐標(biāo)圖,它是最佳擬合。

指數(shù)曲線擬合

我們將重復(fù)上述相同的過程,但唯一的區(qū)別是對(duì)數(shù)函數(shù)被指數(shù)函數(shù)取代。

x_data = np.array([11, 19, 31, 39, 51])
print(x_data)

y_data = np.array([5, 8, 32, 84, 110])
print(y_data)

ylog_data = np.log(y_data)
print(ylog_data)

???????curve_fit = np.polyfit(x_data, log_y_data, 1)
print(curve_fit)

所以,a = 0.69和b = 0.085,這些是系數(shù),我們可以得到曲線的方程,即(y = e(ax)*e(b),其中a,b是系數(shù))

y = np.exp(0.69) * np.exp(0.085*x_data)
 
print(y)

現(xiàn)在,讓我們?cè)贛atplotlib.pyplot.plot()函數(shù)的幫助下繪制圖表。

# Blue 
plt.plot(x_data, y_data)

???????# best fit in orange
plt.plot(x_data, y)

在上圖中,藍(lán)線表示原始x和y坐標(biāo)的圖形,黃線是我們通過計(jì)算獲得的坐標(biāo)圖形,它是最佳擬合。

到此這篇關(guān)于Python進(jìn)行指數(shù)和對(duì)數(shù)曲線擬合詳解的文章就介紹到這了,更多相關(guān)Python曲線擬合內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

最新評(píng)論

高雄县| 团风县| 郑州市| 剑川县| 游戏| 宾川县| 鞍山市| 冀州市| 凤山市| 栖霞市| 香格里拉县| 河北区| 雅江县| 法库县| 彭山县| 米脂县| 海口市| 张家口市| 阿荣旗| 尼玛县| 榕江县| 通榆县| 嘉定区| 台中县| 乾安县| 泰宁县| 徐汇区| 贡山| 南丹县| 平罗县| 南江县| 乌拉特前旗| 江门市| 三门峡市| 三明市| 罗甸县| 思南县| 塔城市| 洪江市| 锡林浩特市| 申扎县|