我目前正在为Web应用程序构建测试服务器,该服务器应通过Websocket向其提供虚假数据。伪数据位于MATLAB表文件(.mat)中。 Mat文件基本上只是一个4000 * 192的数组。我想将其映射到一个javascript数组中,以便可以对其进行迭代并将其逐列发送到客户端。
我只是不知道如何将MATLAB表转换为Node.js中的javascript数组。我发现的所有库都不支持node.js,因为jdataview如何处理节点缓冲区。
答案 0 :(得分:1)
我相信您正在尝试加载.mat文件。如Vasyl先前所述,以下git存储库是您最好的选择-Read Mat File
请尝试-
var jBinary = require('jbinary')
var MAT = require('jMatFile')
jBinary.load('myMat.mat', MAT).then(function (binary) {
var mat = binary.readAll
// or equivalently
var mat = binary.read('mat')
})
我能够将数据加载到控制台,但是现在正在努力解决其他问题。
在文档中还指出,排版仅与完全支持类型数组的JS引擎一起使用。从4年前开始(回购最近更新),该限制有意排除:
您还必须安装npm目录中没有的jMatFile,同样,Vasyl在前面的评论中指出也是正确的。在执行通常的“ npm start”之前运行这些-
npm i jBinary
和
npm i https://github.com/fluffynukeit/jMatFile.git