前提・実現したいこと
websocket経由で送られてきたデータ(実際に送信されるデータセットを下記に記載)をjavascriptで編集操作し、各センサ値を表形式でブラウザに表示したいと考えています。その際、送信されるデータが{x:0.0012, y:0.5}のような形になっているため、これらの値のみ抽出して表に埋め込むための具体的な方法がわかりません。アドバイスいただけましたらありがたいです。よろしくお願いいたします。
表のイメージ
該当のソースコード(index.htmlの関連する箇所のみ抜粋)
html
1 2<script> 3ws.onmessage = function (msg) { 4 var obj = JSON.parse(msg.data); 5 console.log(obj); //objは189個のデータセット、下記で3つのオブジェクトに分割(グラフにする際に分割する必要) 6 var obj_1 = obj.slice(0,63); //{x:センサAの値, y:センサBの値}のデータセットが63セット 7 var obj_2 = obj.slice(63,126); //{x:センサCの値, y:センサDの値}のデータセットが63セット 8 var obj_3 = obj.slice(126,189); //{x:センサEの値, y:センサDの値}のデータセットが63セット 9 //センサDについては重複して送られてきます 10 var table = document.getElementById("dataTable"); 11 var row = table.insertRow(1); //Add after headings 12 var cell1 = row.insertCell(0); 13 var cell2 = row.insertCell(1); 14 var cell3 = row.insertCell(2); 15 var cell4 = row.insertCell(3); 16 var cell5 = row.insertCel(4); 17 18 cell1.innerHTML = obj.a; 19 cell2.innerHTML = obj.b; 20 cell3.innerHTML = obj.c; 21 cell4.innerHTML = obj.d; 22 cell5.innerHTML = obj.e; 23 24}; 25</script> 26 27<body> 28 <table id="dataTable"> 29 <tr><th>data_A</th><th>data_B</th><th>data_C</th><th>data_D</th><th>data_E</th></tr> 30 </table> 31</body> 32</html> 33 34
JSON形式によるwebsocket送信データ(全部で189個のデータセット)
[{'x': 0.01332, 'y': 0.0017283185840707965}, {'x': 0.01998, 'y': 0.0017097345132743363}, {'x': 0.02664, 'y': 0.0017097345132743363}, {'x': 0.0333, 'y': 0.0017097345132743363},…(省略)… {'x': 52.994170641229495, 'y': 923.6148025572473}, {'x': 40.040040040039976, 'y': 1570.9096900616094}]
補足情報(FW/ツールのバージョンなど)
ここにより詳細な情報を記載してください。
回答2件
あなたの回答
tips
プレビュー