Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/70.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何将EEG数据呈现到HTML5中?_Html_Html5 Canvas - Fatal编程技术网

如何将EEG数据呈现到HTML5中?

如何将EEG数据呈现到HTML5中?,html,html5-canvas,Html,Html5 Canvas,是否有任何方法可以使用canvas或任何其他软件包将EEG数据提供给HTML5?或者是否有任何API将用于将EEG数据输入HTML5 任何建议…这里是一个绘制波形的开始示例,供您学习 演示: 画布平移屏幕以始终显示最新的前导数据 该示例使用一个简单的正弦波,但您可以将您的EEG插入data[]数组,然后您的EEG波将绘制 <!doctype html> <html> <head> <link rel="stylesheet" type="text/cs

是否有任何方法可以使用canvas或任何其他软件包将EEG数据提供给HTML5?或者是否有任何API将用于将EEG数据输入HTML5


任何建议…

这里是一个绘制波形的开始示例,供您学习

演示:

画布平移屏幕以始终显示最新的前导数据

该示例使用一个简单的正弦波,但您可以将您的EEG插入data[]数组,然后您的EEG波将绘制

<!doctype html>
<html>
<head>
<link rel="stylesheet" type="text/css" media="all" href="css/reset.css" /> <!-- reset css -->
<script type="text/javascript" src="http://code.jquery.com/jquery.min.js"></script>
<style>
    body{ background-color: ivory; }
    #canvas{border:1px solid red;}
</style>
<script>
$(function(){

    var canvas=document.getElementById("canvas");
    var ctx=canvas.getContext("2d");

    // capture incoming socket data in an array
    var data=[];

    // TESTING: fill data with some test values
    for(var i=0;i<5000;i++){
        data.push(Math.sin(i/10)*70+100);
    }

    // x is your most recent data-point in data[]
    var x=0;

    // panAtX is how far the plot will go rightward on the canvas
    // until the canvas is panned

    var panAtX=250;

    var continueAnimation=true;
    animate();


    function animate(){

        if(x>data.length-1){return;}

        if(continueAnimation){
            requestAnimationFrame(animate);
        }

        if(x++<panAtX){

            ctx.fillRect(x,data[x],1,1);

        }else{

            ctx.clearRect(0,0,canvas.width,canvas.height);

            // plot data[] from x-PanAtX to x 

            for(var xx=0;xx<panAtX;xx++){
                var y=data[x-panAtX+xx];
                ctx.fillRect(xx,y,1,1)
            }
        }
    }


}); // end $(function(){});
</script>
</head>
<body>
    <canvas id="canvas" width=300 height=300></canvas>
</body>
</html>

正文{背景色:象牙;}
#画布{边框:1px纯红;}
$(函数(){
var canvas=document.getElementById(“canvas”);
var ctx=canvas.getContext(“2d”);
//捕获阵列中的传入套接字数据
var数据=[];
//测试:用一些测试值填充数据
对于(var i=0;idata.length-1){return;}
if(continueAnimation){
请求动画帧(动画);
}

如果(x++,是的。慢慢地离开电脑,直到你的大脑恢复正常。当然有。你得到数据并将其映射到视口。振幅是(反转的)Y轴,时间是x轴。你能详细说明一下吗?你有一个最大值(&最小值)信号值-你必须在画布的高度上显示它。你还有一段时间想显示图形-这必须出现在画布的宽度上。这是画布上的一个简单的线条绘制。继续编码!在画布上绘制线条很容易。Will并让你知道我们使用哪种算法来获得输出t、 你能推荐一些好的博客来阅读吗more@Manju输出算法很简单——(1)擦除画布,(2)在先前绘制的位置左侧1个像素处重新绘制所有先前的数据,(3)在末尾画一个新的数据点。输入的数据只是测试数据。它是一个正弦波,映射为一个递增的X。正弦波对于测试数据很好,因为它们总是在0.00到1.00之间。当然,您可以替换您的实际EEG数据。因此,是否有可能使用实际EEG数据,而不是上面例子中所示的连续波形足够吗?当然,用你的实际脑电图数据代替测试数据。