2015-11-05 6 views
5

現在、私はWebテクノロジー、特にMeteorを使用して周波数アナライザを作成しようとしています。チャートライブラリを使用したJavascript周波数アナライザ

今のところ、SVG画像を作成するGoogle Chartsライブラリを使用しようとしました。グラフは約10回のリフレッシュが必要で、パフォーマンスは満足できるものではありません。すべてのCPUリソースを消費します。

私はウェブ開発(特にグラフィックやパフォーマンスの問題)が少し新しくなっていますので、私の研究のために正しい方向を指すことができれば、感謝します。

答えて

4

私は、最速の一つであると思われるライブラリにCanvasJsを使用して終了。パフォーマンスを向上させるチャートとのやり取りを無効にするには、オプションinteractivityEnabled: falseがあります。

メテオの直接的な統合がない場合でも、jsファイルを./client/compatibilityに入れても問題ありません。

0

canvas要素を使用します。 1秒間に60を得ることができるはずです。オーディオソースの場合、Audio APIはスペクトル解析用のDSPを提供します。ここで

は例audio spectrum visualizer

+0

このアナライザはオーディオソース用ではありませんが、おかげさまでこの方向に見ていきます。 –

+0

オーディオソースはオーディオである必要はありませんが、適用できるトランスフォームの種類に制限されています。 – Blindman67

+0

私はAudio APIを使用することはできないと思っています。ラジオアナライザーから取得した生データを表示します。 –

3

であるあなたは非常に簡単にZingChartでこれを達成することができます。 Meteorの統合はまだありませんが、以下のデモはあなたのための良いスタートになるはずです。下のスニペットを実行して、それがライブであることを確認します。

私はZingChartチームです!あなたに質問がある場合はお知らせください。

var MAXVALUES = 100; 
 
var myConfig = { 
 
type: "line", 
 
series : [ 
 
    { 
 
    values : [] 
 
    } 
 
] 
 
}; 
 

 
zingchart.render({ 
 
    id : 'myChart', 
 
    data : myConfig, 
 
    height: 400, 
 
    width: 600 
 
}); 
 

 

 
var myValues = []; 
 

 
setInterval(function(){ 
 
    myValues.push(Math.floor(Math.random() * 10)); 
 
    
 
    if(myValues.length == MAXVALUES+1){ 
 
    myValues.shift(); 
 
    } 
 
    console.log(myValues) 
 
    zingchart.exec('myChart', 'setseriesvalues', { 
 
    values : [myValues] 
 
    }) 
 
},60)
<script src="http://cdn.zingchart.com/zingchart.min.js"></script> 
 
<div id='myChart'></div>

関連する問題