我正在开发一个Android应用程序,我需要在其中创建频谱图(这是声音中频率随时间变化的频谱的可视化表示)。我有一个音频文件,并使用FFT将信号放在频域中,现在我需要绘制频谱图。我需要一个应用程序接口,帮助我绘制这个图表看起来像Matlab.Any建议中的图表?
发布于 2014-08-28 08:06:30
在布局中声明一个空的<View>
元素,使其具有适当的大小并适合您要显示的内容。并将其id设为myview
。
实现你自己的类,从视图中分离出来并覆盖onDraw(Canvas canvas)
。让我们将这个类命名为MyView。向这个类添加任何方法,这样它就可以将数据传递给它(即FFT的结果)。
在活动的onCreate方法中,调用findViewById(R.id.myview).setContentView(new MyView());
实现MyView.onDraw(),以便在画布上绘制数据可视化。在视图类上调用invalidate
方法,以便在数据发生更改时强制其重绘。
至于画什么,由你自己决定。我想象每个频带都有一堆矩形或线条。一种颜色代表“真实”,另一种颜色代表“想象”。
发布于 2015-07-17 19:45:32
https://stackoverflow.com/questions/25541964
复制