Python学习之波形图
Python学习之波形图
- 一、效果图
- 二、代码实现
一、效果图
二、代码实现
代码很简单,大小可以随意设置
import numpy as np
from scipy.fftpack import fft, ifft
import matplotlib.pyplot as plt
from matplotlib.pylab import mplmpl.rcParams['font.sans-serif'] = ['SimHei']
mpl.rcParams['axes.unicode_minus'] = False# 采样点选择1400个,因为设置的信号频率分量最高为600赫兹,根据采样定理知采样频率要大于信号频率2倍,所以这里设置采样频率为1400赫兹(即一秒内有1400个采样点,一样意思的)
x = np.linspace(0, 1, 1400)# 设置需要采样的信号,频率分量有200,400和600
y = 7 * np.sin(2 * np.pi * 200 * x) + 5 * np.sin(2 * np.pi * 400 * x) + 3 * np.sin(2 * np.pi * 600 * x)fft_y = fft(y) # 快速傅里叶变换N = 1400
x = np.arange(N) # 频率个数
half_x = x[range(int(N / 2))] # 取一半区间abs_y = np.abs(fft_y) # 取复数的绝对值,即复数的模(双边频谱)
angle_y = np.angle(fft_y) # 取复数的角度
normalization_y = abs_y / N # 归一化处理(双边频谱)
normalization_half_y = normalization_y[range(int(N / 2))] # 由于对称性,只取一半区间(单边频谱)plt.subplot(231)
plt.plot(x, y)
plt.title('原始波形')plt.subplot(232)
plt.plot(x, fft_y, 'black')
plt.title('双边振幅谱(未求振幅绝对值)', fontsize=9, color='black')plt.subplot(233)
plt.plot(x, abs_y, 'r')
plt.title('双边振幅谱(未归一化)', fontsize=9, color='red')plt.subplot(234)
plt.plot(x, angle_y, 'violet')
plt.title('双边相位谱(未归一化)', fontsize=9, color='violet')plt.subplot(235)
plt.plot(x, normalization_y, 'g')
plt.title('双边振幅谱(归一化)', fontsize=9, color='green')plt.subplot(236)
plt.plot(half_x, normalization_half_y, 'blue')
plt.title('单边振幅谱(归一化)', fontsize=9, color='blue')plt.show()
Python学习之波形图相关推荐
- pygame是python的一个库吗,python学习pygame,,基本库导入impor
python学习pygame,,基本库导入impor 基本库导入 import pygame import sys from pygame.locals import * 初始化 pygame.ini ...
- python科学计数法转换_对比Python学习Go 基本数据结构
公众号文章不方便更新,可关注底部「阅读原文」博客,文章随时更新. 本篇是「对比 Python 学习 Go」[1] 系列的第三篇,本篇文章我们来看下 Go 的基本数据结构.Go 的环境搭建,可参考之前的 ...
- python学习------tab补全
python学习------tab补全 python也可以进行tab键补全 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 #!/usr/bin/env ...
- Python学习day5作业-ATM和购物商城
Python学习day5作业 Python学习day5作业 ATM和购物商城 作业需求 ATM: 指定最大透支额度 可取款 定期还款(每月指定日期还款,如15号) 可存款 定期出账单 支持多用户登陆, ...
- Python学习系列(六)(模块)
Python学习系列(六)(模块) Python学习系列(五)(文件操作及其字典) 一,模块的基本介绍 1,import引入其他标准模块 标准库:Python标准安装包里的模块. 引入模块的几种方式: ...
- 最新Python学习项目Top10!
作者 | Mybridge 译者 | Linstancy 整理 | Jane 出品 | AI科技大本营 [导读]过去一个月里,我们对近1000个Python 学习项目进行了排名,并挑选出热度前10的项 ...
- 200页!分享珍藏很久的Python学习知识手册(附链接)
这是之前入门学习Python时候的学习资料,非常全面,从Python基础.到web开发.数据分析.机器学习.深度学习.金融量化统统都有,该手册是HTML版本,左侧是目录,可以点击,右侧是对目录知识点的 ...
- Python学习系列(五)(文件操作及其字典)
Python学习系列(五)(文件操作及其字典) Python学习系列(四)(列表及其函数) 一.文件操作 1,读文件 在以'r'读模式打开文件以后可以调用read函数一次性将文件内容全部读出 ...
- Python学习01 Hello World
Python学习之Hello World 准备工作 去官网http://www.python.org/ 下载python的安装包: http://www.python.org/download/ 当前 ...
- [python教程入门学习]python学习笔记(CMD执行文件并传入参数)
本文章向大家介绍python学习笔记(CMD执行文件并传入参数),主要包括python学习笔记(CMD执行文件并传入参数)使用实例.应用技巧.基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋 ...
最新文章
- Unity创造没有代码的游戏学习教程
- Postmortem报告
- 这届架构师成功的理由,它排第一……
- C#中oracle数据库的连接方法
- 数据库考研SQL操作
- [vue] v-if和v-for的优先级是什么?如果这两个同时出现时,那应该怎么优化才能得到更好的性能?
- LeetCode 1368. 使网格图至少有一条有效路径的最小代价(BFS最短路径,难)
- 如何做一个国产数据库(四)
- pycharm中文乱码
- 【Gym-102606 H】Heat Pipes【奇环染色、bfs 生成树】
- MATLAB 2016a安装
- 大一linux考试试题及答案,大一计算机期末考试试题及答案
- 人家也是干 IT 的。
- 数字信息时代中国面临两个机遇
- android 耳机检测,android 检测耳机是否插入方法
- 突然明白了原来我的QQ密保是这样被盗的
- App Inventor的简单介绍
- 什么是物联网?物联网面临哪些挑战?
- MT5 EA交易期货-限价单开仓平仓
- 当初面试Java岗位时的笔记,接近2万字,拿走不谢
热门文章
- (CVPR 2019) PointRCNN: 3D Object Proposal Generation and Detection From Point Cloud
- 有才!学生发文言文请假条,老师连称赞
- AWSomeDay 中体会的Micro Service 微服务
- 怎样才能演示正弦和余弦的相互变换
- 微软对开发者献真爱,全面支持开源,加速研发云升级
- word插入页码问题解决办法
- CSS: 如何实现img垂直居中?
- PDM与ERP系统集成设计
- mysql 父子关系查询_如何让MySQL中单句实现无限层次父子关系查询
- 036多级节点实现层叠展开与收缩的功能