绘制波形图

效果

源码

https://github.com/YouXianMing/Animations

//
//  DrawWaveViewController.m
//  Animations
//
//  Created by YouXianMing on 15/12/5.
//  Copyright © 2015年 YouXianMing. All rights reserved.
//

#import "DrawWaveViewController.h"
#import "WxHxD.h"
#import "DrawView.h"
#import "DrawLineView.h"
#import "UIView+SetRect.h"

@interface DrawWaveViewController ()

@property (nonatomic, strong) DrawView       *drawView;
@property (nonatomic, strong) DrawLineView   *drawLineView;
@property (nonatomic, strong) CADisplayLink  *displayLink;

@end

@implementation DrawWaveViewController

- (void)viewDidLoad {

    [super viewDidLoad];
}

- (void)setup {

    [super setup];

    self.drawView        = [[DrawView alloc] initWithFrame:CGRectMake(0, 0, Width, 200)];
    self.drawView.center = self.view.center;
    self.drawView.y     += 100;
    [self.view addSubview:self.drawView];

    self.drawLineView        = [[DrawLineView alloc] initWithFrame:CGRectMake(0, 0, Width, 200)];
    self.drawLineView.center = self.view.center;
    self.drawLineView.y     -= 100;
    [self.view addSubview:self.drawLineView];

    self.displayLink = [CADisplayLink displayLinkWithTarget:self selector:@selector(drawEvent)];
    [self.displayLink addToRunLoop:[NSRunLoop currentRunLoop] forMode:NSDefaultRunLoopMode];

    [self bringTitleViewToFront];
}

- (void)drawEvent {

    [self.drawView setNeedsDisplay];
    [self.drawLineView setNeedsDisplay];
}

@end

细节

时间: 2024-10-05 21:16:48

绘制波形图的相关文章

读取wav文件绘制波形图

# -*- coding: utf-8 -*- import wave import pylab as pl import numpy as np from pyaudio import PyAudio,paInt16 def record(filename): #define of params NUM_SAMPLES = 2000 framerate = 16000 channels = 1 sampwidth = 2 #record time TIME = 10 def save_wave

C# GDI绘制波形图

直接上效果图如下 public partial class WaveChartUserCtrl : UserControl { Color axisColor = Color.FromArgb(69, 200, 255);//坐标颜色 Color scaleColor = Color.FromArgb(129, 137, 156);//刻度颜色 Font axisFont = new Font("宋体", 9, FontStyle.Bold);//坐标字体 /// <summar

绘制音频的波形图

有时候,为了直观地分析音频的特征,画几个图是必不可少的. 当然,读者可以把音频文件拉到Adobe Audition或其它音频分析软件中,再使用它绘制出来的特征图. 那有没有办法自己写代码来绘制,并做一些灵活的控制呢? 本文介绍通过python的matplotlib.pyplot来绘制波形图. pyplot是一个强大的绘图库,小程这里用来绘制波形,也只是牛刀小试. 小程先用自己的话,解释一些本文会提到的基础概念. 声道数,也叫通道数,这在采集声音(录制)时就引入的概念,可以理解为用几个通道去录制声

Python解析Wav文件并绘制波形的方法

资源下载 #本文PDF版下载 Python解析Wav文件并绘制波形的方法 #本文代码下载 Wav波形绘图代码 #本文实例音频文件night.wav下载 音频文件下载 (石进-夜的钢琴曲) 前言 在现在繁忙的生活中,我们经常会听些歌来放松一下自己,我们经常会从各种播放软件中听自己喜欢的歌,并且往往我们会下载一部分歌曲,而现在音频的种类也相当繁多,像是Wav,Mp3,FLAC,AAC等等很多格式,最近由于需要做一个能够分析Wav格式音频的波形来取得一些数据比如获取人录音时是否说完等等用途.本周先对解

动画绘制水波纹

使用drawRect:方式绘制的动画效果,右图为占用了多少CPU. 虽然画起来挺好看的,但占用的内存真心吃不消,原因其实很简单哦,drawRect:方法只调用CPU进行图形绘制,所以非常非常的消耗CPU性能,把它集成到应用程序中,我觉得是不靠谱的呢. // // WaterView.h // Cell // // Copyright (c) 2014年 Y.X. All rights reserved. // #import <UIKit/UIKit.h> @interface WaterVi

Python绘制wav文件音频图(静态)[matplotlib/wave]

#!/usr/bin/env python # -*- coding: utf-8 -*- """ 绘制波形图 plottingWaveform.py """ import wave import pylab as pl import numpy as np print('working') # 打开wav文档 file = wave.open(r"mic4.wav", "rb") # 读取格式信息 # (

Android蓝牙传感应用

Android手机一般以客户端的角色主动连接SPP协议设备(接上蓝牙模块的数字传感器),连接流程是: 1.使用registerReceiver注册BroadcastReceiver来获取蓝牙状态.搜索设备等消息:2.使用BlueAdatper的搜索:3.在BroadcastReceiver的onReceive()里取得搜索所得的蓝牙设备信息(如名称,MAC,RSSI):4.通过设备的MAC地址来建立一个BluetoothDevice对象: 5.由BluetoothDevice衍生出Bluetoo

signalR制作微信墙 开源

微信墙 上一篇文章中已经用PHP搭建了一个微信墙获取信息的服务器,我这里使用微软的singnalr搭建一个客户端,singnalr是一个为开发者开发实时应用的 一个库文件,支持windows server 2008 r2+,win7,win8 windows azure,可以使用iis8托管,iis7必须支持 extensionless URLs .下图是浏览器支持情况 其实据我所知,你可以再微软的任何技术中使用singnalr比如wpf,winform等等中都可以,只不过要引入相应的dll文件

(转载)VS2010/MFC编程入门之五十(图形图像:GDI对象之画笔CPen)

上一节中鸡啄米讲了CDC类及其屏幕绘图函数,本节的主要内容是GDI对象之画笔CPen. GDI对象 在MFC中,CGdiObject类是GDI对象的基类,通过查阅MSDN我们可以看到,CGdiObject类有六个直接的派生类,GDI对象主要也是这六个,分别是:CBitmap.CBrush.CFont.CPalette.CPen和CRgn. 在这六个GDI对象中,最常用的莫过于画笔和画刷了,即CPen类和CBrush类.本文就主要讲解画笔的使用. 画笔的应用实例 鸡啄米在这里直接通过一个波形图的实