Python實現(xiàn)正弦信號的時域波形和頻譜圖示例【基于matplotlib】
本文實例講述了Python實現(xiàn)正弦信號的時域波形和頻譜圖。分享給大家供大家參考,具體如下:
# -*- coding: utf-8 -*-
# 正弦信號的時域波形與頻譜圖
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個介于0.0-31.35之間的點
# print n
axis_x = np.linspace(0,3,num=N)
#頻率為5Hz的正弦信號
x = [math.sin(i) for i in n]
pl.subplot(221)
pl.plot(axis_x,x)
pl.title(u'5Hz的正弦信號',fontproperties='SimHei')
pl.axis('tight')
#頻率為5Hz、幅值為3的正弦+噪聲
x1 = [random.gauss(0,0.5) for i in range(N)]
xx = []
#有沒有直接兩個列表對應項相加的方式??
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()
運行效果:

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

