Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Error using Miso.Dataset with URL on node.js #208

Open
protobi opened this issue Aug 5, 2013 · 1 comment
Open

Error using Miso.Dataset with URL on node.js #208

protobi opened this issue Aug 5, 2013 · 1 comment

Comments

@protobi
Copy link

protobi commented Aug 5, 2013

Miso.Dataset works great within the browser, using on Node.js for first time and getting an error. Presumably a newbie error, but looks like the one reported in #193.

Specifically it appears global is undefined. Was able to create the issue in a new project:

  • express --sessions miso_test
  • npm install miso.dataset --save
  • npm install
  • then add following lines at end of app.js:
var Miso = require("miso.dataset");


// this works fine
//var ds = new Miso.Dataset({
//  data:  [
//  { color : "red",   r : 255, g : 0,   b : 0   },
//  { color : "blue",  r : 0,   g : 0,   b : 255 },
//  { color : "green", r : 0,   g : 255, b : 0   }
//]
//});

// this fails on fetch
var ds = new Miso.Dataset({
      url: 'data/MST.csv',
      delimiter: ','
    }
);

ds.fetch({
  success : function() {
    console.log("Available Columns:" + this.columnNames());
    console.log("There are " + this.length + " rows");
  }
});

Stack trace below:

/Users/pieter/Exp/influence/miso_test/node_modules/miso.dataset/dist/node/miso.ds.deps.0.4.1.js:2258
XObject ? new global.ActiveXObject("Microsoft.XMLHTTP") : new global.XMLHttpRe
                                                                    ^
TypeError: undefined is not a function
    at Object._xhrSetup.xhr (/Users/pieter/Exp/influence/miso_test/node_modules/miso.dataset/dist/node/miso.ds.deps.0.4.1.js:2258:95)
    at Function.Dataset.Xhr (/Users/pieter/Exp/influence/miso_test/node_modules/miso.dataset/dist/node/miso.ds.deps.0.4.1.js:2286:32)
    at _.extend.fetch (/Users/pieter/Exp/influence/miso_test/node_modules/miso.dataset/dist/node/miso.ds.deps.0.4.1.js:2242:15)
    at _.extend.fetch (/Users/pieter/Exp/influence/miso_test/node_modules/miso.dataset/dist/node/miso.ds.deps.0.4.1.js:1029:21)
    at Object.<anonymous> (/Users/pieter/Exp/influence/miso_test/app.js:45:4)
    at Module._compile (module.js:456:26)
    at Object.Module._extensions..js (module.js:474:10)
    at Module.load (module.js:356:32)
    at Function.Module._load (module.js:312:12)
    at Function.Module.runMain (module.js:497:10)
@protobi
Copy link
Author

protobi commented Aug 6, 2013

Reading files and parsing CSV files is a specialty in itself, so delegated that part to node-csv, and all works well.

var Miso = require("miso.dataset");
var csv = require('csv');

csv()
    .from.options({columns: true})
    .from.path(__dirname+'/../public/data/MST.csv', { delimiter: ',', escape: '"' })
    .to.array( function(data){
      var ds = new Miso.Dataset({
        data: data
      });
      ds.fetch({
        success : function() {
          console.log("Dataset Ready. Columns: " + this.columnNames());
          console.log("There are " + this.length + " rows");
        }
      });
    });

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

0 participants