Python實(shí)現(xiàn)正弦信號(hào)的時(shí)域波形和頻譜圖示例【基于matplotlib】
本文實(shí)例講述了Python實(shí)現(xiàn)正弦信號(hào)的時(shí)域波形和頻譜圖。分享給大家供大家參考,具體如下:
# -*- coding: utf-8 -*-
# 正弦信號(hào)的時(shí)域波形與頻譜圖
import numpy as np
import matplotlib.pyplot as pl
import matplotlib
import math
import random
row = 4
col = 4
N = 500
fs = 5
n = [2*math.pi*fs*t/N for t in range(N)] # 生成了500個(gè)介于0.0-31.35之間的點(diǎn)
# print n
axis_x = np.linspace(0,3,num=N)
#頻率為5Hz的正弦信號(hào)
x = [math.sin(i) for i in n]
pl.subplot(221)
pl.plot(axis_x,x)
pl.title(u'5Hz的正弦信號(hào)',fontproperties='SimHei')
pl.axis('tight')
#頻率為5Hz、幅值為3的正弦+噪聲
x1 = [random.gauss(0,0.5) for i in range(N)]
xx = []
#有沒(méi)有直接兩個(gè)列表對(duì)應(yīng)項(xiàng)相加的方式??
for i in range(len(x)):
xx.append(x[i]*3 + x1[i])
pl.subplot(222)
pl.plot(axis_x,xx)
pl.title(u'頻率為5Hz、幅值為3的正弦+噪聲',fontproperties='SimHei')
pl.axis('tight')
#頻譜繪制
xf = np.fft.fft(x)
xf_abs = np.fft.fftshift(abs(xf))
axis_xf = np.linspace(-N/2,N/2-1,num=N)
pl.subplot(223)
pl.title(u'頻率為5Hz的正弦頻譜圖',fontproperties='SimHei')
pl.plot(axis_xf,xf_abs)
pl.axis('tight')
#頻譜繪制
xf = np.fft.fft(xx)
xf_abs = np.fft.fftshift(abs(xf))
pl.subplot(224)
pl.title(u'頻率為5Hz的正弦頻譜圖',fontproperties='SimHei')
pl.plot(axis_xf,xf_abs)
pl.axis('tight')
pl.show()
運(yùn)行效果:

更多關(guān)于Python相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《Python數(shù)學(xué)運(yùn)算技巧總結(jié)》、《Python數(shù)據(jù)結(jié)構(gòu)與算法教程》、《Python函數(shù)使用技巧總結(jié)》、《Python字符串操作技巧匯總》、《Python入門(mén)與進(jìn)階經(jīng)典教程》及《Python文件與目錄操作技巧匯總》
希望本文所述對(duì)大家Python程序設(shè)計(jì)有所幫助。
相關(guān)文章
解決python中用matplotlib畫(huà)多幅圖時(shí)出現(xiàn)圖形部分重疊的問(wèn)題
今天小編就為大家分享一篇解決python中用matplotlib畫(huà)多幅圖時(shí)出現(xiàn)圖形部分重疊的問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2019-07-07
Python3利用scapy局域網(wǎng)實(shí)現(xiàn)自動(dòng)多線程arp掃描功能
這篇文章主要介紹了Python3利用scapy局域網(wǎng)實(shí)現(xiàn)自動(dòng)多線程arp掃描功能,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2021-01-01
一維信號(hào)小波去噪原理解析及python實(shí)現(xiàn)方式
這篇文章主要介紹了一維信號(hào)小波去噪原理解析及python實(shí)現(xiàn)方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-06-06
Python?數(shù)據(jù)篩選功能實(shí)現(xiàn)
這篇文章主要介紹了Python?數(shù)據(jù)篩選,無(wú)論是在數(shù)據(jù)分析還是數(shù)據(jù)挖掘的時(shí)候,數(shù)據(jù)篩選總會(huì)涉及到,這里我總結(jié)了一下python中列表,字典,數(shù)據(jù)框中一些常用的數(shù)據(jù)篩選的方法,需要的朋友可以參考下2023-04-04
解決TensorFlow訓(xùn)練內(nèi)存不斷增長(zhǎng),進(jìn)程被殺死問(wèn)題
今天小編就為大家分享一篇解決TensorFlow訓(xùn)練內(nèi)存不斷增長(zhǎng),進(jìn)程被殺死問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2020-02-02
如何使用scrapy中的ItemLoader提取數(shù)據(jù)
這篇文章主要介紹了如何使用scrapy中的ItemLoader提取數(shù)據(jù),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2020-09-09

