首页 > 解决方案 > 数据未发送到 plotly

问题描述

我在我的 raspberryPI 上制作了一个小脚本,以从 mongo 获取数据并构建一个绘图图,本周我遇到了系统崩溃,需要从几个月前恢复数据......整个过程正在处理这样的事情:

var express = require('express');
var app = express();
var MongoClient = require('mongodb').MongoClient;
var url = 'mongodb://user:pass@localhost:port';
var str = "";

MongoClient.connect(url, function (err, db) {
if (err) throw err;
var dbo = db.db("DB");

var cursor = dbo.collection("ColectionA").find();
if (cursor == null) {
    console.log('cursor is null');
} else {
    console.log('cursor not null');
    var xArray = [];
    var yArray = [];
    cursor.each(function (err, item) {
        if (item != null) {
            xArray.push(item.item1);
            yArray.push(item.item2)
            console.log(item.item1 + ' ' + item.item2);
        } else {
            var plotly = require('plotly')("user", "APIkey");

            var data = [{
                x: xArray,
                y: yArray,
                type: "scatter"
            }];
            var layout = {
                title: "Title1",
                xaxis: {
                    title: "Date/Time",
                    rangemode: "nonnegative",
                    autorange: true,
                    titlefont: {
                        family: "Courier New, monospace",
                        size: 18,
                        color: "#7f7f7f"
                    }
                },
                yaxis: {
                    title: "Users",
                    rangemode: "nonnegative",
                    autorange: true,
                    titlefont: {
                        family: "Courier New, monospace",
                        size: 18,
                        color: "#7f7f7f"
                    }
                }
            };
            var graphOptions = {
                layout: layout,
                filename: "date-axes",
                fileopt: "overwrite"
            };
            plotly.plot(data, graphOptions, function (err, msg) {
            console.log(msg);
            console.log(err);
            });

            dbo.close();
        }
    });
}
});
setTimeout(function() {
console.log('done...');
process.exit();
}, 20000);

现在我没有将任何数据发送回 plotly... 我什至尝试将较小的数据数组发送回图表,例如

var data = [{x:[0,1,2], y:[3,2,1], type: 'scatter'}]; 

没有成功,尝试 npm install plotly 认为“崩溃”可能对过程产生了影响,更改了仪表板上的 APIkey 和这里......

我从“plotly.plot”日志中得到的只是“完成”味精......

所以......没有成功......关于我还能用什么来调试的任何想法?

标签: node.jsraspberry-piplotly

解决方案


推荐阅读