使用Python读取Excel数据绘制时域图和频域图

本文将介绍如何使用Python读取Excel表格数据,并绘制时域图和频域图。代码示例展示了如何使用pandas库读取数据,matplotlib库绘制图像,以及numpy库进行傅里叶变换。

代码示例

import pandas as pd
import matplotlib.pyplot as plt
import numpy as np

# 读取Excel数据
data = pd.read_excel('your_excel_file.xlsx')

# 获取采样时间和输出电压列的数据
time = data.iloc[:, 0]  # 第一列采样时间
voltage = data.iloc[:, 1:5]  # 第2到5列输出电压

# 绘制时域图
plt.plot(time, voltage)
plt.xlabel('采样时间')
plt.ylabel('输出电压')
plt.legend(voltage.columns)  # 添加图例,显示每列的名称
plt.show()

# 对输出电压进行傅里叶变换
spectrum = np.fft.fft(voltage, axis=0)  # 计算频谱
frequency = np.fft.fftfreq(len(voltage), time[1]-time[0])  # 计算频率

# 绘制频域图
plt.plot(frequency, np.abs(spectrum))
plt.xlabel('频率')
plt.ylabel('振幅')
plt.legend(voltage.columns)  # 添加图例,显示每列的名称
plt.show()

请确保将'your_excel_file.xlsx'替换为实际的Excel文件路径。

代码说明

  • 读取Excel数据: 使用pandas.read_excel()函数读取Excel文件数据。
  • 获取数据: 使用iloc属性获取指定列的数据,第一列为采样时间,第二到第五列为输出电压。
  • 绘制时域图: 使用matplotlib.pyplot.plot()函数绘制时域图,横轴为采样时间,纵轴为输出电压。
  • 傅里叶变换: 使用numpy.fft.fft()函数对输出电压进行傅里叶变换,计算频谱。
  • 计算频率: 使用numpy.fft.fftfreq()函数计算频率。
  • 绘制频域图: 使用matplotlib.pyplot.plot()函数绘制频域图,横轴为频率,纵轴为振幅。

总结

本文介绍了使用Python读取Excel数据并绘制时域图和频域图的步骤和代码示例。希望对您有所帮助。如有任何疑问,请随时提问。

Python读取Excel数据绘制时域图和频域图

原文地址: https://www.cveoy.top/t/topic/biI3 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录