python用插值法繪制平滑曲線
本文實(shí)例為大家分享了python用插值法繪制平滑曲線的具體代碼,供大家參考,具體內(nèi)容如下
原圖:
平滑處理后:
代碼實(shí)現(xiàn)如下:
# 1. 隨機(jī)構(gòu)造數(shù)據(jù) import numpy as np x = range(10) y = np.random.randint(10,size=10) # 2. 繪制原圖 import matplotlib as mpl import matplotlib.pyplot as plt %matplotlib inline # jupyter notebook顯示繪圖 from scipy.interpolate import spline # 借助scipy庫 plt.plot(x, y) plt.show() # 3. 繪制平滑曲線 from scipy.interpolate import spline # 插值法,50表示插值個(gè)數(shù),個(gè)數(shù)>=實(shí)際數(shù)據(jù)個(gè)數(shù),一般來說差值個(gè)數(shù)越多,曲線越平滑 x_new = np.linspace(min(x),max(x),50) y_smooth = spline(x, y, x_new) plt.plot(x_new, y_smooth) plt.show()
以上經(jīng)過平滑后的曲線可能和原圖差距很大,這個(gè)主要看數(shù)據(jù)本身的規(guī)律性。如果數(shù)據(jù)本身比較雜亂無章,如下:
則平滑后為:
平滑后曲線和原圖還是差得很遠(yuǎn)的,因此該方法慎用,不是萬能的。
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
python 獲取鍵盤輸入,同時(shí)有超時(shí)的功能示例
今天小編就為大家分享一篇python 獲取鍵盤輸入,同時(shí)有超時(shí)的功能示例,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧2018-11-11Python super( )函數(shù)用法總結(jié)
今天給大家?guī)淼闹R是關(guān)于Python的相關(guān)知識,文章圍繞著super( )函數(shù)展開,文中有非常詳細(xì)的介紹及代碼示例,需要的朋友可以參考下2021-06-06python中dump與dumps實(shí)現(xiàn)序列化
這篇文章就來介紹python中dump與dumps實(shí)現(xiàn)序列化,文章將圍繞dump與dumps實(shí)現(xiàn)序列化展開內(nèi)容且簡精,需要的朋友可以參考一下,希望對你有所幫助2021-10-10Python使用Traits庫實(shí)現(xiàn)對象屬性
Python作為一種動(dòng)態(tài)編程語言,它的變量沒有類型,這種靈活性給快速開發(fā)帶來很多便利,不過它也不是沒有缺點(diǎn),Traits庫的一個(gè)很重要的目的就是為了解決這些缺點(diǎn)所帶來的問題,trait為Python對象的屬性增加了類型定義的功能2023-11-11