簡體   English   中英

如何使用Python繪制所有峰值

[英]How to plot all peaks using Python

我使用peakutils Python包來檢測我的數據中的峰值( estimated.csv的第二列 - 在這里找到(點擊鏈接)。

這是我找到峰值的代碼:

#/usr/bin/python -tt

import pandas as pd
import peakutils

estimated_data = pd.read_csv("estimated.csv", header=None)
col2 = estimated_data[:][1] # Second column data
print(col2[:]) # Print all the rows
index = peakutils.indexes(col2, thres=0.4, min_dist=1000)
print(index) 

峰值檢測工作完全正常。 我想在下面的教程中繪制所有檢測到的峰。

https://plot.ly/python/peak-finding/

但似乎plotly似乎並不是脫機工作。 使用像matplotlib這樣的Python包有不同的方法嗎?

用matplotlib繪制峰可以通過使用帶標記的圖來完成。 數據由peakutils函數中的索引索引。

import pandas as pd
import peakutils
import matplotlib.pyplot as plt

estimated_data = pd.read_csv("data/estimated.csv", header=None)
col1 = estimated_data[:][0] # First column data
col2 = estimated_data[:][1] # Second column data

index = peakutils.indexes(col2, thres=0.4, min_dist=1000)

plt.plot(col1,col2, lw=0.4, alpha=0.4 )
plt.plot(col1[index],col2[index], marker="o", ls="", ms=3 )

plt.show()

在此輸入圖像描述

為了用一條線連接峰(如評論中所要求的那樣),on就會省略ls=""

plt.plot(col1[index],col2[index], marker="o", ms=3 )

在此輸入圖像描述

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM