如何在 matplotlib 中绘制傅里叶谱的置信区间?

问题描述 投票:0回答:0

你好我正在尝试使用此图的样式绘制置信区间 (CI):表示 CI 宽度的垂直线。如您所知,默认样式是一个间隔,是一条围绕线条的带。任何人都可以帮我做这个吗?

我附上了我的海平面数据傅里叶谱的以下代码和sea_level.txt

import pandas as pd
import matplotlib.pyplot as plt
from scipy.fft import fft, fftfreq
from scipy.signal import find_peaks
from scipy import signal

# Loading the data

aca_level = pd.read_csv('path/sea_level.txt',sep=" ") 
aca_level['Nivel'] = aca_level['Nivel'].fillna(0)
sea_level = aca_level.iloc[2074324:2074324+2048,1]
#................... Calculating the FT
N = 2048 # Number of data
L = 4  # Number of blocks
M = N/L # Data number of each block
fs = 60 # Sampling frecuency

the_window = signal.windows.kaiser(M, beta=5)
f_ts,esp_ts = signal.welch(sea_level,fs,window=the_window, nperseg=M,noverlap= M//2,scaling='density')
#................... Ploting
fig = plt.figure() 
plt.loglog(f_ts,esp_ts,color="black",lw=1.5)
plt.plot()
matplotlib fft confidence-interval
© www.soinside.com 2019 - 2024. All rights reserved.