首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >在node js上下载绘图式开源

在node js上下载绘图式开源
EN

Stack Overflow用户
提问于 2016-07-20 23:36:08
回答 2查看 593关注 0票数 0

你能用node js下载plotly的整个模块吗?现在,我正在使用我的API密钥,使用node js以图形方式流式传输数据。如果有办法,你能一步一步地给出指导吗?我尝试过https://www.npmjs.com/package/plotly.js,但它不起作用。

代码语言:javascript
运行
复制
var plotly = require('plotly.js');
  var initdata = [{x:[], y:[], stream:{token:'t2166m92ft', maxpoints:50}}];
    var initlayout = {fileopt : 'overwrite', filename : 'nodenodenode5'};

    plotly.plot(initdata, initlayout, function (err, msg) {
      if (err) return console.log(err);
      console.log(msg);

      var stream1 = plotly.stream('t2166m92ft', function (err, res) {
        if (err) return console.log(err);
        console.log(res);
        clearInterval(loop); // once stream is closed, stop writing
      });

          var i = 0;
          var loop = setInterval(function () {
            client.once('message', function (message) {
            var data = { x : i , y :  message.toString()};
            var streamObject = JSON.stringify(data);
            stream1.write(streamObject+'\n');
            i++;
            });
          }, 5000);
    });
  }

当我尝试使用npm install plotly.js进行安装,并运行我的程序时,我得到:

代码语言:javascript
运行
复制
\Users\intern\Documents\universal-ground-system\Node js\node_modules\plotly.js
rc\lib\index.js:397
      var style = document.createElement('style');
              ^

ReferenceError: document is not defined
  at Object.lib.addStyleRule (C:\Users\intern\Documents\universal-ground-syste
Node js\node_modules\plotly.js\src\lib\index.js:397:21)
  at Object.<anonymous> (C:\Users\intern\Documents\universal-ground-system\Nod
js\node_modules\plotly.js\build\plotcss.js:61:16)
  at Module._compile (module.js:409:26)
  at Object.Module._extensions..js (module.js:416:10)
  at Module.load (module.js:343:32)
  at Function.Module._load (module.js:300:12)
  at Module.require (module.js:353:17)
  at require (internal/module.js:12:17)
  at Object.<anonymous> (C:\Users\intern\Documents\universal-ground-system\Nod
js\node_modules\plotly.js\src\plotly.js:30:1)
  at Module._compile (module.js:409:26)
EN

回答 2

Stack Overflow用户

发布于 2016-07-26 20:59:32

Plotly开源库不能在node js中使用。但是可以在客户端javascript上使用。

票数 1
EN

Stack Overflow用户

发布于 2018-06-09 17:40:16

我在某种程度上克服了这一点,但遇到了另一个错误,现在看起来已经很接近了。

当我用jsdom创建一个dom时,它可能不喜欢看到一些异步问题的窗口。如果进入REPL加载文件或以其他方式get创建新的jsdom对象,则可以在引用窗口和所需文档的REPL中执行此类操作。

代码语言:javascript
运行
复制
let jsdom = lib.require('jsdom');

//let window = (new jsdom.JSDOM('<p>Hello</p>')).window;

let dom = new jsdom.JSDOM('<p>Hello</p>');

/* While just testing I do this in REPL after .load index.js
let window = dom.window;
let document = window.document;
*/

所以在npm install canvas之后我得到了一个新的错误,它需要

代码语言:javascript
运行
复制
apt-get install libcairo2-dev libjpeg8-dev libpango1.0-dev libgif-dev build-essential g++

第一个在Ubuntu 16上正确构建它

所以新的错误是...

代码语言:javascript
运行
复制
> let window = dom.window;
undefined
> let document = window.document;
undefined
>
>
> let plt = lib.require('plotly.js');
ReferenceError: self is not defined
at Object.254 (./node_modules/mapbox-gl/dist/mapbox-gl.js:509:29)
at s (./node_modules/mapbox-gl/dist/mapbox-gl.js:1:684)
at ./node_modules/mapbox-gl/dist/mapbox-gl.js:1:735
at Object.252../window (./node_modules/mapbox-gl/dist/mapbox-gl.js:505:25)
at s (./node_modules/mapbox-gl/dist/mapbox-gl.js:1:684)
at ./node_modules/mapbox-gl/dist/mapbox-gl.js:1:735
at Object.73.../package.json (./node_modules/mapbox-gl/dist/mapbox-gl.js:146:75)
at s (./node_modules/mapbox-gl/dist/mapbox-gl.js:1:684)
at e (./node_modules/mapbox-gl/dist/mapbox-gl.js:1:855)

>

我尝试将'self‘设置为'document’和'this‘,但得到了另一个错误。

代码语言:javascript
运行
复制
> self = document;
Document { location: [Getter/Setter] }
> plt = lib.plt = lib.require('plotly.js');
TypeError: Cannot read property 'hardwareConcurrency' of undefined
at Object.252../window (./node_modules/mapbox-gl/dist/mapbox-gl.js:505:834)
at s (./node_modules/mapbox-gl/dist/mapbox-gl.js:1:684)
at ./node_modules/mapbox-gl/dist/mapbox-gl.js:1:735
at Object.73.../package.json (./node_modules/mapbox-gl/dist/mapbox-gl.js:146:75)
at s (./node_modules/mapbox-gl/dist/mapbox-gl.js:1:684)
at e (./node_modules/mapbox-gl/dist/mapbox-gl.js:1:855)
at ./node_modules/mapbox-gl/dist/mapbox-gl.js:1:873
at ./node_modules/mapbox-gl/dist/mapbox-gl.js:1:150

接下来,我尝试让window.navigator进入self,但这显然与错误无关。mapbox中的其他地方-gl.js出现了故障。

我只在这里的mapboxgl.js中找到了对harwareConcurrency的引用https://github.com/mapbox/mapbox-gl-js/issues/899

说它是nodejs库似乎有误导性,因为它只能在浏览器中运行?https://plot.ly/nodejs/

刚才我看到一些关于API密钥的东西?我想我倒错地方了。这是个大错误。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/38484870

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档