{"_id":"chart","_rev":"72-e6ef0e73cb946241012f475bef927dc4","name":"chart","description":"event based time series charting API","dist-tags":{"latest":"0.1.2"},"versions":{"0.0.1":{"author":{"name":"David Wee","email":"rook2pawn@gmail.com","url":"http://rook2pawn.com"},"name":"chart","description":"event based time series charting API","version":"0.0.1","homepage":"https://github.com/rook2pawn/node-chart","keywords":["chart","time series","canvas"],"repository":{"type":"git","url":"git://github.com/rook2pawn/node-chart.git"},"main":"index.js","dependencies":{"hat":"","mrcolor":""},"devDependencies":{},"readme":"node-chart\n==========\n\nTime Series Charting Canvas API \n\nUse\n===\n\n    var chart = new Chart();\n    var ee = require('events').EventEmitter;\n    var datasource = new ee;\n\n    chart.series(datasource);\n    chart.to(document.getElementById('mychart'));\n\n    setInterval(function() {\n        var random = Math.floor(Math.random()*100);\n        datasource.emit('data',{y:random});\n    },1000);\n\nMultiple Data sources\n=====================\n\n    var d1 = new ee;\n    var d2 = new ee;\n\n    chart.series(d1);\n    chart.series(d2);\n    \n    // or\n    chart.series([d1,d2])\n        \n    // or\n    chart.series(d1,d2);\n\nchart.series\n============\n\nEvent types that chart.series responds to are \n\n'data' - provides data for timeseries and optional labels\n\n'stop' - stops the timeseries for that datastream\n\nchart.legend\n============\n\n    <canvas id='legend'></canvas>\n    chart.legend(document.getElementById('legend'));\n\nLegend is automatically created with the data that is sent. \nTo visualize and interact with a legend, use the .legend callback\n\n\nLabels go with the value\n------------------------\n\n    datasorce.emit('data',{'units sold':9.2})\n\nYou can supply multiple labels\n------------------------------\n\n    datasorce1.emit('data',{'units sold':9.2})\n    datasorce2.emit('data',{'current energy consumption':30})\n\nTests\n=====\n\n    // to install tap, simply npm install tap\n    \n    tap ./test\n\n\nMISC\n====\n\nAuthor: David Wee <rook2pawn@gmail.com>\nLicense: MIT\nDeveloped At : Malhar, Inc. <david@malhar-inc.com>\n","readmeFilename":"README.md","_id":"chart@0.0.1","dist":{"shasum":"ca007f6a22e7e114fa2b73fe761f5d35ea98f33d","tarball":"https://registry.npmjs.org/chart/-/chart-0.0.1.tgz","integrity":"sha512-vWyXQDoyRgmlWxK9Y5v15YbOMzwfmLDz3qCQOW1oLifOOxz5PxKxjWImn8cOXN48pfXYRK/21aEFHGVh9CkFkA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIFV50bnMJEY8UihrZw4z7uP0lpxY3Y9Xbozrvb40mmLQAiAiSrJdkZu5amrlwkbGrGMiLy3wUzhVHwua+eDZW4+pCg=="}]},"_npmVersion":"1.1.68","_npmUser":{"name":"rook2pawn","email":"rook2pawn@gmail.com"},"maintainers":[{"name":"rook2pawn","email":"rook2pawn@gmail.com"}],"directories":{}},"0.0.2":{"author":{"name":"David Wee","email":"rook2pawn@gmail.com","url":"http://rook2pawn.com"},"name":"chart","description":"event based time series charting API","version":"0.0.2","homepage":"https://github.com/rook2pawn/node-chart","keywords":["chart","time series","canvas"],"repository":{"type":"git","url":"git://github.com/rook2pawn/node-chart.git"},"main":"index.js","dependencies":{"hat":"","mrcolor":""},"devDependencies":{},"readme":"node-chart\n==========\n\nTime Series Charting Canvas API \n\nUse\n===\n\n    var chart = new Chart();\n    var ee = require('events').EventEmitter;\n    var datasource = new ee;\n\n    chart.series(datasource);\n    chart.to(document.getElementById('mychart'));\n\n    setInterval(function() {\n        var random = Math.floor(Math.random()*100);\n        datasource.emit('data',{y:random});\n    },1000);\n\nMultiple Data sources\n=====================\n\n    var d1 = new ee;\n    var d2 = new ee;\n\n    chart.series(d1);\n    chart.series(d2);\n    \n    // or\n    chart.series([d1,d2])\n        \n    // or\n    chart.series(d1,d2);\n\nchart.series\n============\n\nEvent types that chart.series responds to are \n\n'data' - provides data for timeseries and optional labels\n\n'stop' - stops the timeseries for that datastream\n\nchart.legend\n============\n\n    <canvas id='legend'></canvas>\n    chart.legend(document.getElementById('legend'));\n\nLegend is automatically created with the data that is sent. \nTo visualize and interact with a legend, use the .legend callback\n\n\nLabels go with the value\n------------------------\n\n    datasorce.emit('data',{'units sold':9.2})\n\nYou can supply multiple labels\n------------------------------\n\n    datasorce1.emit('data',{'units sold':9.2})\n    datasorce2.emit('data',{'current energy consumption':30})\n\nTests\n=====\n\n    // to install tap, simply npm install tap\n    \n    tap ./test\n\n\nMISC\n====\n\nAuthor: David Wee <rook2pawn@gmail.com>\nLicense: MIT\nDeveloped At : Malhar, Inc. <david@malhar-inc.com>\n","readmeFilename":"README.md","_id":"chart@0.0.2","dist":{"shasum":"755bf6551e217935a32b4c02f3db8956de877145","tarball":"https://registry.npmjs.org/chart/-/chart-0.0.2.tgz","integrity":"sha512-9Tse/INejD1Sz4M8QGRXOtM0LIT29ytnPGJ13BK17cXGBcCSRARC2lscnLvwcdt1T1G4M9TCZ+pWCRcEAe21Bg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIFXdqiruR0g93BAltcTW+Attlxw2euOSqO2I+UFn6mFHAiB5tK4y7ouujukSM1p2cge4tWUhCplj6kqDGKoJa78x5w=="}]},"_npmVersion":"1.1.68","_npmUser":{"name":"rook2pawn","email":"rook2pawn@gmail.com"},"maintainers":[{"name":"rook2pawn","email":"rook2pawn@gmail.com"}],"directories":{}},"0.0.3":{"author":{"name":"David Wee","email":"rook2pawn@gmail.com","url":"http://rook2pawn.com"},"name":"chart","description":"event based time series charting API","version":"0.0.3","homepage":"https://github.com/rook2pawn/node-chart","keywords":["chart","time series","canvas"],"repository":{"type":"git","url":"git://github.com/rook2pawn/node-chart.git"},"main":"index.js","dependencies":{"hat":"","mrcolor":"","hashish":""},"devDependencies":{},"readme":"node-chart\n==========\n\nTime Series Charting Canvas API \n\nUse\n===\n\n    var chart = new Chart();\n    var ee = require('events').EventEmitter;\n    var datasource = new ee;\n\n    chart.series(datasource);\n    chart.to(document.getElementById('mychart'));\n\n    setInterval(function() {\n        var random = Math.floor(Math.random()*100);\n        datasource.emit('data',{y:random});\n    },1000);\n\nMultiple Data sources\n=====================\n\n    var d1 = new ee;\n    var d2 = new ee;\n\n    chart.series(d1);\n    chart.series(d2);\n    \n    // or\n    chart.series([d1,d2])\n        \n    // or\n    chart.series(d1,d2);\n\nchart.series\n============\n\nEvent types that chart.series responds to are \n\n'data' - provides data for timeseries and optional labels\n\n'stop' - stops the timeseries for that datastream\n\nchart.legend\n============\n\n    <div id='legend'></div>\n    chart.legend(document.getElementById('legend'));\n\nLegend is automatically created with the data that is sent. \nTo visualize and interact with a legend, use the .legend callback\n\n\nLabels go with the value\n------------------------\n\n    datasorce.emit('data',{'units sold':9.2})\n\nYou can supply multiple labels\n------------------------------\n\n    datasorce1.emit('data',{'units sold':9.2})\n    datasorce2.emit('data',{'current energy consumption':30})\n\nTests\n=====\n\n    // to install tap, simply npm install tap\n    \n    tap ./test\n\n\nMISC\n====\n\nAuthor: David Wee <rook2pawn@gmail.com>\nLicense: MIT\nDeveloped At : Malhar, Inc. <david@malhar-inc.com>\n","readmeFilename":"README.md","_id":"chart@0.0.3","dist":{"shasum":"98f44cc9bb19180ed5e52365a583128a7a4a7d04","tarball":"https://registry.npmjs.org/chart/-/chart-0.0.3.tgz","integrity":"sha512-QPeJMFAvenlDnDgtWjyh41vinNuWf1iije48hrZiAcrU/0nbnrOo+1zToOgeu6cPWTMnFqUjKoEYPeyqiLee/Q==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIA9177yFyalU24GO/Rza1IM3gf2T/OWaJgELbqh+XC8rAiBwIZvgB7QM3jdMBqjdwqVmHPLDHwwGsIAXfPwt0GrpLw=="}]},"_npmVersion":"1.1.68","_npmUser":{"name":"rook2pawn","email":"rook2pawn@gmail.com"},"maintainers":[{"name":"rook2pawn","email":"rook2pawn@gmail.com"}],"directories":{}},"0.0.4":{"author":{"name":"David Wee","email":"rook2pawn@gmail.com","url":"http://rook2pawn.com"},"name":"chart","description":"event based time series charting API","version":"0.0.4","homepage":"https://github.com/rook2pawn/node-chart","keywords":["chart","time series","canvas"],"repository":{"type":"git","url":"git://github.com/rook2pawn/node-chart.git"},"main":"index.js","dependencies":{"hat":"","mrcolor":"","hashish":""},"devDependencies":{},"readme":"node-chart\n==========\n\nTime Series Charting Canvas API \n\nUse\n===\n\n    var chart = new Chart();\n    var ee = require('events').EventEmitter;\n    var datasource = new ee;\n\n    chart.series(datasource);\n    chart.to(document.getElementById('mychart'));\n\n    setInterval(function() {\n        var random = Math.floor(Math.random()*100);\n        datasource.emit('data',{y:random});\n    },1000);\n\nMultiple Data sources\n=====================\n\n    var d1 = new ee;\n    var d2 = new ee;\n\n    chart.series(d1);\n    chart.series(d2);\n    \n    // or\n    chart.series([d1,d2])\n        \n    // or\n    chart.series(d1,d2);\n\nchart.series\n============\n\nEvent types that chart.series responds to are \n\n'data' - provides data for timeseries and optional labels\n\n'stop' - stops the timeseries for that datastream\n\nchart.legend\n============\n\n    <div id='legend'></div>\n    chart.legend(document.getElementById('legend'));\n\nLegend is automatically created with the data that is sent. \nTo visualize and interact with a legend, use the .legend callback\n\n\nLabels go with the value\n------------------------\n\n    datasorce.emit('data',{'units sold':9.2})\n\nYou can supply multiple labels\n------------------------------\n\n    datasorce1.emit('data',{'units sold':9.2})\n    datasorce2.emit('data',{'current energy consumption':30})\n\nTests\n=====\n\n    // to install tap, simply npm install tap\n    \n    tap ./test\n\n\nMISC\n====\n\nAuthor: David Wee <rook2pawn@gmail.com>\nLicense: MIT\nDeveloped At : Malhar, Inc. <david@malhar-inc.com>\n","readmeFilename":"README.md","_id":"chart@0.0.4","dist":{"shasum":"69be8184260d83f23a61e726168fc46e6f2c4002","tarball":"https://registry.npmjs.org/chart/-/chart-0.0.4.tgz","integrity":"sha512-Tqk2Fyk6Hhdc5b9GnMAXmhPjYdWTNPrh5BLDx0LWkh8aesleGet255yQhbSarcBFj49DJfiBrPAhN6kt27U3Tg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIGcL8hlYkJpa12kKK3LgFsk+5KnRdl0olxQmfP3Hj5q3AiBkPsFEzTgiXU+a18Wzzo1AgGWID1Mx4cOo33wEDBFEjQ=="}]},"_npmVersion":"1.1.68","_npmUser":{"name":"rook2pawn","email":"rook2pawn@gmail.com"},"maintainers":[{"name":"rook2pawn","email":"rook2pawn@gmail.com"}],"directories":{}},"0.0.5":{"author":{"name":"David Wee","email":"rook2pawn@gmail.com","url":"http://rook2pawn.com"},"name":"chart","description":"event based time series charting API","version":"0.0.5","homepage":"https://github.com/rook2pawn/node-chart","keywords":["chart","time series","canvas"],"repository":{"type":"git","url":"git://github.com/rook2pawn/node-chart.git"},"main":"index.js","dependencies":{"hat":"","mrcolor":"","hashish":""},"devDependencies":{},"readme":"node-chart\n==========\n\nTime Series Charting Canvas API \n\nUse\n===\n\n    var chart = new Chart();\n    var ee = require('events').EventEmitter;\n    var datasource = new ee;\n\n    chart.series(datasource);\n    chart.to(document.getElementById('mychart'));\n\n    setInterval(function() {\n        var random = Math.floor(Math.random()*100);\n        datasource.emit('data',{y:random});\n    },1000);\n\nMultiple Data sources\n=====================\n\n    var d1 = new ee;\n    var d2 = new ee;\n\n    chart.series(d1);\n    chart.series(d2);\n    \n    // or\n    chart.series([d1,d2])\n        \n    // or\n    chart.series(d1,d2);\n\nchart.series\n============\n\nEvent types that chart.series responds to are \n\n'data' - provides data for timeseries and optional labels\n\n'stop' - stops the timeseries for that datastream\n\nchart.legend\n============\n\n    <div id='legend'></div>\n    chart.legend(document.getElementById('legend'));\n\nLegend is automatically created with the data that is sent. \nTo visualize and interact with a legend, use the .legend callback\n\n\nlegend.css\n==========\n\n    <link type='text/css' rel='stylesheet' href='legend.css' />\n\nAlso in the root directory of this package is a file called legend.css that you should include.\n\n\nLabels go with the value\n------------------------\n\n    datasorce.emit('data',{'units sold':9.2})\n\nYou can supply multiple labels\n------------------------------\n\n    datasorce1.emit('data',{'units sold':9.2})\n    datasorce2.emit('data',{'current energy consumption':30})\n\nTests\n=====\n\n    // to install tap, simply npm install tap\n    \n    tap ./test\n\n\nMISC\n====\n\nAuthor: David Wee <rook2pawn@gmail.com>\nLicense: MIT\nDeveloped At : Malhar, Inc. <david@malhar-inc.com>\n","readmeFilename":"README.md","_id":"chart@0.0.5","dist":{"shasum":"b70faf9c8788122d1cc43e96b200a76e3ccac53f","tarball":"https://registry.npmjs.org/chart/-/chart-0.0.5.tgz","integrity":"sha512-1QIkXacLDPjhsP7WIdTOyhVVVPoUcbbLdGE1sELjABdrKzkQZm6ZDY+tx6xZMgrkXplUjQEqqXAKoWJtDB5CbA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIC0q8uSQKiUpgY6GK4OHV+EGgDCeJgojP9CAItkAX2gQAiBmitL7GhmeJBs3wRD4qj31n6MPAM+EqT8I7ze+f59n3Q=="}]},"_npmVersion":"1.1.68","_npmUser":{"name":"rook2pawn","email":"rook2pawn@gmail.com"},"maintainers":[{"name":"rook2pawn","email":"rook2pawn@gmail.com"}],"directories":{}},"0.0.6":{"author":{"name":"David Wee","email":"rook2pawn@gmail.com","url":"http://rook2pawn.com"},"name":"chart","description":"event based time series charting API","version":"0.0.6","homepage":"https://github.com/rook2pawn/node-chart","keywords":["chart","time series","canvas"],"repository":{"type":"git","url":"git://github.com/rook2pawn/node-chart.git"},"main":"index.js","dependencies":{"hat":"","mrcolor":"","hashish":""},"devDependencies":{},"readme":"node-chart\n==========\n\nTime Series Charting Canvas API \n\nUse\n===\n\n    var chart = new Chart();\n    var ee = require('events').EventEmitter;\n    var datasource = new ee;\n\n    chart.series(datasource);\n    chart.to(document.getElementById('mychart'));\n\n    setInterval(function() {\n        var random = Math.floor(Math.random()*100);\n        datasource.emit('data',{y:random});\n    },1000);\n\nMultiple Data sources\n=====================\n\n    var d1 = new ee;\n    var d2 = new ee;\n\n    chart.series(d1);\n    chart.series(d2);\n    \n    // or\n    chart.series([d1,d2])\n        \n    // or\n    chart.series(d1,d2);\n\nMultiple Y-Axises\n=================\n\nTo have the data you emit treated as separate y-axises with different scaling, simply\npass a second object {multiple:true} in your emit\n\n    datasource.emit('data',{stockPrice:235,temperature:88},{multiple:true});\n\n\nchart.series\n============\n\nEvent types that chart.series responds to are \n\n'data' - provides data for timeseries and optional labels\n\n'stop' - stops the timeseries for that datastream\n\nchart.legend\n============\n\n    <div id='legend'></div>\n    chart.legend(document.getElementById('legend'));\n\nLegend is automatically created with the data that is sent. \nTo visualize and interact with a legend, use the .legend callback\n\n\nlegend.css\n==========\n\n    <link type='text/css' rel='stylesheet' href='legend.css' />\n\nAlso in the root directory of this package is a file called legend.css that you should include.\n\n\nLabels go with the value\n------------------------\n\n    datasorce.emit('data',{'units sold':9.2})\n\nYou can supply multiple labels\n------------------------------\n\n    datasorce1.emit('data',{'units sold':9.2})\n    datasorce2.emit('data',{'current energy consumption':30})\n\nTests\n=====\n\n    // to install tap, simply npm install tap\n    \n    tap ./test\n\n\nMISC\n====\n\nAuthor: David Wee <rook2pawn@gmail.com>\nLicense: MIT\nDeveloped At : Malhar, Inc. <david@malhar-inc.com>\n","readmeFilename":"README.md","_id":"chart@0.0.6","dist":{"shasum":"412b46705f0de50da3c6f16a8605b02836e056ac","tarball":"https://registry.npmjs.org/chart/-/chart-0.0.6.tgz","integrity":"sha512-84kjH+cjQqAexTrDsyoquFOszYRQct/x3FEksefAv15ejPETk/jz2pGBZIiQ6BiH554uz6nYWCenapt6i5Z7IQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDNu0zIBSRQhtaHGnge3Iwme5iEmk6eff2qOBQIrIMMxwIgI1vhU9sxZbbmzjH/nJtgSvBrshIGdYOTt2mzfkWofQw="}]},"_npmVersion":"1.1.68","_npmUser":{"name":"rook2pawn","email":"rook2pawn@gmail.com"},"maintainers":[{"name":"rook2pawn","email":"rook2pawn@gmail.com"}],"directories":{}},"0.0.7":{"author":{"name":"David Wee","email":"rook2pawn@gmail.com","url":"http://rook2pawn.com"},"name":"chart","description":"event based time series charting API","version":"0.0.7","homepage":"https://github.com/rook2pawn/node-chart","keywords":["chart","time series","canvas"],"repository":{"type":"git","url":"git://github.com/rook2pawn/node-chart.git"},"main":"index.js","dependencies":{"hat":"","mrcolor":"","hashish":""},"devDependencies":{},"readme":"node-chart\n==========\n\nTime Series Charting Canvas API \n\nUse\n===\n\n    var chart = new Chart();\n    var ee = require('events').EventEmitter;\n    var datasource = new ee;\n\n    chart.series(datasource);\n    chart.to(document.getElementById('mychart'));\n\n    setInterval(function() {\n        var random = Math.floor(Math.random()*100);\n        datasource.emit('data',{y:random});\n    },1000);\n\nMultiple Data sources\n=====================\n\n    var d1 = new ee;\n    var d2 = new ee;\n\n    chart.series(d1);\n    chart.series(d2);\n    \n    // or\n    chart.series([d1,d2])\n        \n    // or\n    chart.series(d1,d2);\n\nMultiple Y-Axises\n=================\n\nTo have the data you emit treated as separate y-axises with different scaling, simply\npass a second object {multiple:true} in your emit\n\n    datasource.emit('data',{stockPrice:235,temperature:88},{multiple:true});\n\n\nchart.series\n============\n\nEvent types that chart.series responds to are \n\n'data' - provides data for timeseries and optional labels\n\n'stop' - stops the timeseries for that datastream\n\nchart.legend\n============\n\n    <div id='legend'></div>\n    chart.legend(document.getElementById('legend'));\n\nLegend is automatically created with the data that is sent. \nTo visualize and interact with a legend, use the .legend callback\n\n\nlegend.css\n==========\n\n    <link type='text/css' rel='stylesheet' href='legend.css' />\n\nAlso in the root directory of this package is a file called legend.css that you should include.\n\n\nLabels go with the value\n------------------------\n\n    datasorce.emit('data',{'units sold':9.2})\n\nYou can supply multiple labels\n------------------------------\n\n    datasorce1.emit('data',{'units sold':9.2})\n    datasorce2.emit('data',{'current energy consumption':30})\n\nTests\n=====\n\n    // to install tap, simply npm install tap\n    \n    tap ./test\n\n\nMISC\n====\n\nAuthor: David Wee <rook2pawn@gmail.com>\nLicense: MIT\nDeveloped At : Malhar, Inc. <david@malhar-inc.com>\n","readmeFilename":"README.md","_id":"chart@0.0.7","dist":{"shasum":"bfabf7a38a23a5a3d49bb21d0f19ea5ecfb7fbe9","tarball":"https://registry.npmjs.org/chart/-/chart-0.0.7.tgz","integrity":"sha512-z9w8JiKgMc7TjUlKcAc7IReV8iTd7Oo1rnMBFf4e35XDNsQcrQxNr58pZnpsYUsuvBDlyMfIjHaPseteX7ZRuw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIFvfc2tnfK4BUqFKATSL0szWkDTBe8cYKBdOzGz9FYc4AiEA1weYULFp1L0B7o0vNJlO+02/zUOf55J2C2QTDF2sb8E="}]},"_npmVersion":"1.1.68","_npmUser":{"name":"rook2pawn","email":"rook2pawn@gmail.com"},"maintainers":[{"name":"rook2pawn","email":"rook2pawn@gmail.com"}],"directories":{}},"0.0.8":{"author":{"name":"David Wee","email":"rook2pawn@gmail.com","url":"http://rook2pawn.com"},"name":"chart","description":"event based time series charting API","version":"0.0.8","homepage":"https://github.com/rook2pawn/node-chart","keywords":["chart","time series","canvas"],"repository":{"type":"git","url":"git://github.com/rook2pawn/node-chart.git"},"main":"index.js","dependencies":{"hat":"","mrcolor":"","hashish":""},"devDependencies":{},"readme":"node-chart\n==========\n\nTime Series Charting Canvas API \n\nUse\n===\n\n    var chart = new Chart();\n    var ee = require('events').EventEmitter;\n    var datasource = new ee;\n\n    chart.series(datasource);\n    chart.to(document.getElementById('mychart'));\n\n    setInterval(function() {\n        var random = Math.floor(Math.random()*100);\n        datasource.emit('data',{y:random});\n    },1000);\n\nMultiple Data sources\n=====================\n\n    var d1 = new ee;\n    var d2 = new ee;\n\n    chart.series(d1);\n    chart.series(d2);\n    \n    // or\n    chart.series([d1,d2])\n        \n    // or\n    chart.series(d1,d2);\n\nMultiple Y-Axises\n=================\n\nTo have the data you emit treated as separate y-axises with different scaling, simply\npass a second object {multiple:true} in your emit\n\n    datasource.emit('data',{stockPrice:235,temperature:88},{multiple:true});\n\n\nchart.series\n============\n\nEvent types that chart.series responds to are \n\n'data' - provides data for timeseries and optional labels\n\n'stop' - stops the timeseries for that datastream\n\nchart.legend\n============\n\n    <div id='legend'></div>\n    chart.legend(document.getElementById('legend'));\n\nLegend is automatically created with the data that is sent. \nTo visualize and interact with a legend, use the .legend callback\n\n\nlegend.css\n==========\n\n    <link type='text/css' rel='stylesheet' href='legend.css' />\n\nAlso in the root directory of this package is a file called legend.css that you should include.\n\n\nLabels go with the value\n------------------------\n\n    datasorce.emit('data',{'units sold':9.2})\n\nYou can supply multiple labels\n------------------------------\n\n    datasorce1.emit('data',{'units sold':9.2})\n    datasorce2.emit('data',{'current energy consumption':30})\n\nTests\n=====\n\n    // to install tap, simply npm install tap\n    \n    tap ./test\n\n\nMISC\n====\n\nAuthor: David Wee <rook2pawn@gmail.com>\nLicense: MIT\nDeveloped At : Malhar, Inc. <david@malhar-inc.com>\n","readmeFilename":"README.md","_id":"chart@0.0.8","dist":{"shasum":"b4f308448a24c7aba5c82887477b4685b2978566","tarball":"https://registry.npmjs.org/chart/-/chart-0.0.8.tgz","integrity":"sha512-5MIUcSMTJ+EYn2UUr6Gv6Hpa7sVM+0c6XYMX6NOi+2XvkhNFPWwq+M0gCDc3M0/ZHLxMSEkEfW4eArfjtgcDVQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCGbmXrNDIhHtMfsONqT3vYk7v1EOezhKlK8TOmp68gfgIhALQ+ktPi1mlfo7hX7lvQkqw4qDcPInKQ1bteXxyW1qta"}]},"_npmVersion":"1.1.68","_npmUser":{"name":"rook2pawn","email":"rook2pawn@gmail.com"},"maintainers":[{"name":"rook2pawn","email":"rook2pawn@gmail.com"}],"directories":{}},"0.0.9":{"author":{"name":"David Wee","email":"rook2pawn@gmail.com","url":"http://rook2pawn.com"},"name":"chart","description":"event based time series charting API","version":"0.0.9","homepage":"https://github.com/rook2pawn/node-chart","keywords":["chart","time series","canvas"],"repository":{"type":"git","url":"git://github.com/rook2pawn/node-chart.git"},"main":"index.js","dependencies":{"hat":"","mrcolor":"","hashish":""},"devDependencies":{},"readme":"node-chart\n==========\n\nTime Series Charting Canvas API \n\nUse\n===\n\n    var Chart = require('chart');\n    var chart = new Chart;\n    var ee = require('events').EventEmitter;\n    var datasource = new ee;\n\n    chart.series(datasource);\n    chart.to(document.getElementById('mychart'));\n\n    setInterval(function() {\n        var random = Math.floor(Math.random()*100);\n        datasource.emit('data',{y:random});\n    },1000);\n\nMultiple Data sources\n=====================\n\n    var d1 = new ee;\n    var d2 = new ee;\n\n    chart.series(d1);\n    chart.series(d2);\n    \n    // or\n    chart.series([d1,d2])\n        \n    // or\n    chart.series(d1,d2);\n\nMultiple Y-Axises\n=================\n\nTo have the data you emit treated as separate y-axises with different scaling, simply\npass a second object {multiple:true} in your emit\n\n    datasource.emit('data',{stockPrice:235,temperature:88},{multiple:true});\n\n\nchart.series\n============\n\nEvent types that chart.series responds to are \n\n'data' - provides data for timeseries and optional labels\n\n'stop' - stops the timeseries for that datastream\n\nchart.legend\n============\n\n    <div id='legend'></div>\n    chart.legend(document.getElementById('legend'));\n\nLegend is automatically created with the data that is sent. \nTo visualize and interact with a legend, use the .legend callback\n\n\nlegend.css\n==========\n\n    <link type='text/css' rel='stylesheet' href='legend.css' />\n\nAlso in the root directory of this package is a file called legend.css that you should include.\n\n\nLabels go with the value\n------------------------\n\n    datasorce.emit('data',{'units sold':9.2})\n\nYou can supply multiple labels\n------------------------------\n\n    datasorce1.emit('data',{'units sold':9.2})\n    datasorce2.emit('data',{'current energy consumption':30})\n\nTests\n=====\n\n    // to install tap, simply npm install tap\n    \n    tap ./test\n\n\nMISC\n====\n\nAuthor: David Wee <rook2pawn@gmail.com>\nLicense: MIT\nDeveloped At : Malhar, Inc. <david@malhar-inc.com>\n","readmeFilename":"README.md","_id":"chart@0.0.9","dist":{"shasum":"5c6b1eb769f85273a8a9b5247272251066ea2819","tarball":"https://registry.npmjs.org/chart/-/chart-0.0.9.tgz","integrity":"sha512-waLJxXGAHRlx746FHeQUjEtQ54gsrkeix3+zq5AKE/Y4GsrGOcQQU+RezyD6IiJsSTtBdIClfCwEpP3Bi4DdWg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCHyYRlOXn2iH/iqjXHtX5O4QZHfHgK60itXW9lM79/tQCIQDJxIhWbOrmLI8TuIfJRPHZL8YUfHOsS6OR4ZTZZDsKHg=="}]},"_npmVersion":"1.1.71","_npmUser":{"name":"rook2pawn","email":"rook2pawn@gmail.com"},"maintainers":[{"name":"rook2pawn","email":"rook2pawn@gmail.com"}],"directories":{}},"0.0.10":{"author":{"name":"David Wee","email":"rook2pawn@gmail.com","url":"http://rook2pawn.com"},"name":"chart","description":"event based time series charting API","version":"0.0.10","homepage":"https://github.com/rook2pawn/node-chart","keywords":["chart","time series","canvas"],"repository":{"type":"git","url":"git://github.com/rook2pawn/node-chart.git"},"main":"index.js","dependencies":{"hat":"","mrcolor":"","hashish":""},"devDependencies":{},"readme":"node-chart\n==========\n\nTime Series Charting Canvas API \n\nUse\n===\n\n    var Chart = require('chart');\n    var chart = new Chart;\n    var ee = require('events').EventEmitter;\n    var datasource = new ee;\n\n    chart.series(datasource);\n    chart.to(document.getElementById('mychart'));\n\n    setInterval(function() {\n        var random = Math.floor(Math.random()*100);\n        datasource.emit('data',{y:random});\n    },1000);\n\nMultiple Data sources\n=====================\n\n    var d1 = new ee;\n    var d2 = new ee;\n\n    chart.series(d1);\n    chart.series(d2);\n    \n    // or\n    chart.series([d1,d2])\n        \n    // or\n    chart.series(d1,d2);\n\nMultiple Y-Axises\n=================\n\nTo have the data you emit treated as separate y-axises with different scaling, simply\npass a second object {multiple:true} in your emit\n\n    datasource.emit('data',{stockPrice:235,temperature:88},{multiple:true});\n\n\nchart.series\n============\n\nEvent types that chart.series responds to are \n\n'data' - provides data for timeseries and optional labels\n\n'stop' - stops the timeseries for that datastream\n\nchart.legend\n============\n\n    <div id='legend'></div>\n    chart.legend(document.getElementById('legend'));\n\nLegend is automatically created with the data that is sent. \nTo visualize and interact with a legend, use the .legend callback\n\n\nlegend.css\n==========\n\n    <link type='text/css' rel='stylesheet' href='legend.css' />\n\nAlso in the root directory of this package is a file called legend.css that you should include.\n\n\nLabels go with the value\n------------------------\n\n    datasorce.emit('data',{'units sold':9.2})\n\nYou can supply multiple labels\n------------------------------\n\n    datasorce1.emit('data',{'units sold':9.2})\n    datasorce2.emit('data',{'current energy consumption':30})\n\nColors\n======\nYou can set the following colors. Defaults to below.\n\n    chart.color.grid = '#c9d6de';\n    chart.color.gridbg = '#FFF';\n    chart.color.gridxlabel = '#000';\n    chart.color.gridxline = '#000';\n    chart.color.gridylabel = '#000'\n    chart.color.gridyline = '#000';\n    chart.color.grid.interactionline = '#000';\n\nTests\n=====\n\n    // to install tap, simply npm install tap\n    \n    tap ./test\n\n\nMISC\n====\n\nAuthor: David Wee <rook2pawn@gmail.com>\nLicense: MIT\nDeveloped At : Malhar, Inc. <david@malhar-inc.com>\n","readmeFilename":"README.md","_id":"chart@0.0.10","dist":{"shasum":"a33ebdcc052081d5c9c871f0d294e1ec093a08a9","tarball":"https://registry.npmjs.org/chart/-/chart-0.0.10.tgz","integrity":"sha512-fyNYETKUD3k1WTJr9LryCDbG5s0+9Amf7kbK+c3IwevO11cQmkIyv51WgS4jLRevw0PC4aN1rqyYtTcdhlvxOQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIBIj/hyPByAZiZZkBA1fAYtibKK/7ZKRcwdBPvDCKwKGAiAUUhB2X+ZFnB5zzUd4MAQUNUp+HOzJhGn74KStSofAmQ=="}]},"_npmVersion":"1.1.71","_npmUser":{"name":"rook2pawn","email":"rook2pawn@gmail.com"},"maintainers":[{"name":"rook2pawn","email":"rook2pawn@gmail.com"}],"directories":{}},"0.0.11":{"author":{"name":"David Wee","email":"rook2pawn@gmail.com","url":"http://rook2pawn.com"},"name":"chart","description":"event based time series charting API","version":"0.0.11","homepage":"https://github.com/rook2pawn/node-chart","keywords":["chart","time series","canvas"],"repository":{"type":"git","url":"git://github.com/rook2pawn/node-chart.git"},"main":"index.js","dependencies":{"hat":"","mrcolor":"https://github.com/rook2pawn/mrcolor/archive/master.tar.gz","hashish":""},"devDependencies":{},"readme":"node-chart\n==========\n\nTime Series Charting Canvas API \n\nUse\n===\n\n    var Chart = require('chart');\n    var chart = new Chart;\n    var ee = require('events').EventEmitter;\n    var datasource = new ee;\n\n    chart.series(datasource);\n    chart.to(document.getElementById('mychart'));\n\n    setInterval(function() {\n        var random = Math.floor(Math.random()*100);\n        datasource.emit('data',{y:random});\n    },1000);\n\nMultiple Data sources\n=====================\n\n    var d1 = new ee;\n    var d2 = new ee;\n\n    chart.series(d1);\n    chart.series(d2);\n    \n    // or\n    chart.series([d1,d2])\n        \n    // or\n    chart.series(d1,d2);\n\nMultiple Y-Axises\n=================\n\nTo have the data you emit treated as separate y-axises with different scaling, simply\npass a second object {multiple:true} in your emit\n\n    datasource.emit('data',{stockPrice:235,temperature:88},{multiple:true});\n\n\nchart.series\n============\n\nEvent types that chart.series responds to are \n\n'data' - provides data for timeseries and optional labels\n\n'stop' - stops the timeseries for that datastream\n\nchart.legend\n============\n\n    <div id='legend'></div>\n    chart.legend(document.getElementById('legend'));\n\nLegend is automatically created with the data that is sent. \nTo visualize and interact with a legend, use the .legend callback\n\n\nlegend.css\n==========\n\n    <link type='text/css' rel='stylesheet' href='legend.css' />\n\nAlso in the root directory of this package is a file called legend.css that you should include.\n\n\nLabels go with the value\n------------------------\n\n    datasorce.emit('data',{'units sold':9.2})\n\nYou can supply multiple labels\n------------------------------\n\n    datasorce1.emit('data',{'units sold':9.2})\n    datasorce2.emit('data',{'current energy consumption':30})\n\nColors\n======\nYou can set the following colors. Defaults to below.\n\n    chart.color.grid = '#c9d6de';\n    chart.color.gridbg = '#FFF';\n    chart.color.gridxlabel = '#000';\n    chart.color.gridxline = '#000';\n    chart.color.gridylabel = '#000'\n    chart.color.gridyline = '#000';\n    chart.color.grid.interactionline = '#000';\n\nRender Modes\n============\n\nYou can set the render modes any time, change them at any time like so:\n\n    chart.rendermode = \"line\"; // defaults to line, also can use \"linefill\", \"bar\"\n\nYou can also set the rendermode from a specific event and it will take precedence.\nYou can switch this at will.\n\n    datasource.rendermode = \"linefill\";\n\n\nTests\n=====\n\n    // to install tap, simply npm install tap\n    \n    tap ./test\n\n\nMISC\n====\n\nAuthor: David Wee <rook2pawn@gmail.com>\nLicense: MIT/X11\n","readmeFilename":"README.md","_id":"chart@0.0.11","dist":{"shasum":"7b816edb85a0d6ea787d8265e6d13d95405edfad","tarball":"https://registry.npmjs.org/chart/-/chart-0.0.11.tgz","integrity":"sha512-x3zhZNgSR3hB4oK608vb4Xr2tZDqLNeMmJYuPMoW1i6P0nwaGlTDejJMNlm37rrfplgxJSLHHoBreIMsPMWDAw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIDf0Q7/CxA8jBPd8ZagWg/DjimrPTwt6LjrZzAN/nh4JAiADz1crjMrSVvffZ2oJIkto/mNxoxB2f8VQ0LbZPbKNvw=="}]},"_npmVersion":"1.1.71","_npmUser":{"name":"rook2pawn","email":"rook2pawn@gmail.com"},"maintainers":[{"name":"rook2pawn","email":"rook2pawn@gmail.com"}],"directories":{}},"0.0.13":{"author":{"name":"David Wee","email":"rook2pawn@gmail.com","url":"http://rook2pawn.com"},"name":"chart","description":"event based time series charting API","version":"0.0.13","homepage":"https://github.com/rook2pawn/node-chart","keywords":["chart","time series","canvas"],"repository":{"type":"git","url":"git://github.com/rook2pawn/node-chart.git"},"main":"index.js","dependencies":{"hat":"","mrcolor":"https://github.com/rook2pawn/mrcolor/archive/master.tar.gz","hashish":""},"devDependencies":{},"readme":"node-chart\n==========\n\nTime Series Charting Canvas API \n\nUse\n===\n\n    var Chart = require('chart');\n    var chart = new Chart;\n    var ee = require('events').EventEmitter;\n    var datasource = new ee;\n\n    chart.series(datasource);\n    chart.to(document.getElementById('mychart'));\n\n    setInterval(function() {\n        var random = Math.floor(Math.random()*100);\n        datasource.emit('data',{y:random});\n    },1000);\n\nMultiple Data sources\n=====================\n\n    var d1 = new ee;\n    var d2 = new ee;\n\n    chart.series(d1);\n    chart.series(d2);\n    \n    // or\n    chart.series([d1,d2])\n        \n    // or\n    chart.series(d1,d2);\n\nMultiple Y-Axises\n=================\n\nTo have the data you emit treated as separate y-axises with different scaling, simply\npass a second object {multiple:true} in your emit\n\n    datasource.emit('data',{stockPrice:235,temperature:88},{multiple:true});\n\n\nchart.series\n============\n\nEvent types that chart.series responds to are \n\n'data' - provides data for timeseries and optional labels\n\n'stop' - stops the timeseries for that datastream\n\nchart.legend\n============\n\n    <div id='legend'></div>\n    chart.legend(document.getElementById('legend'));\n\nLegend is automatically created with the data that is sent. \nTo visualize and interact with a legend, use the .legend callback\n\n\nlegend.css\n==========\n\n    <link type='text/css' rel='stylesheet' href='legend.css' />\n\nAlso in the root directory of this package is a file called legend.css that you should include.\n\n\nLabels go with the value\n------------------------\n\n    datasorce.emit('data',{'units sold':9.2})\n\nYou can supply multiple labels\n------------------------------\n\n    datasorce1.emit('data',{'units sold':9.2})\n    datasorce2.emit('data',{'current energy consumption':30})\n\nColors\n======\n\nYou can set the following colors. Defaults to below.\n\n    chart.color.grid = '#c9d6de';\n    chart.color.gridbg = '#FFF';\n    chart.color.gridxlabel = '#000';\n    chart.color.gridxline = '#000';\n    chart.color.gridylabel = '#000'\n    chart.color.gridyline = '#000';\n    chart.color.grid.interactionline = '#000';\n\nYou can also create a preferred ordered set of colors for the lines.\nYou must supply the lines in six digit RGB hexadecimal like so:\n\n    chart.color.line = ['#FF0000','#00FF'];\n\nAny colors you do not supply will be provided for.\n\n    chart.color.line = ['#FF0000',undefined,'#00FF'];\n    // will choose '#FFFF00' for the second element automatically.\n\nYou can also set colors for the legend, through these CSS classes\n\n    div.legend {\n    }\n    div.legend div.axisname {\n    }\n\nRender Modes\n============\n\nYou can set the render modes any time, change them at any time like so:\n\n    chart.rendermode = \"line\"; // defaults to line, also can use \"linefill\", \"bar\"\n\nYou can also set the rendermode from a specific event and it will take precedence.\nYou can switch this at will.\n\n    datasource.rendermode = \"linefill\";\n\n\nTests\n=====\n\n    // to install tap, simply npm install tap\n    \n    tap ./test\n\n\nMISC\n====\n\nAuthor: David Wee <rook2pawn@gmail.com>\nLicense: MIT/X11\n","readmeFilename":"README.md","_id":"chart@0.0.13","dist":{"shasum":"deb066a24964549bb1d1c407db43525a7550001a","tarball":"https://registry.npmjs.org/chart/-/chart-0.0.13.tgz","integrity":"sha512-dhLt619u7Me4iqkW9f8BZxc6nGxVv/1sug8K9lytTS34P9Plse1D79ToLGpv47mtzSVZme4WLriw+R++gaYwqQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCICxJAxhOxFLgT4E4cyL+e4G6w0WH0k9pIG5eaVVf63lSAiEAxx+cahGpju9LJSI/1PK5gFYGAmNpu9KrGFKZUgQprWI="}]},"_npmVersion":"1.1.71","_npmUser":{"name":"rook2pawn","email":"rook2pawn@gmail.com"},"maintainers":[{"name":"rook2pawn","email":"rook2pawn@gmail.com"}],"directories":{}},"0.0.14":{"author":{"name":"David Wee","email":"rook2pawn@gmail.com","url":"http://rook2pawn.com"},"name":"chart","description":"event based time series charting API","version":"0.0.14","homepage":"https://github.com/rook2pawn/node-chart","keywords":["chart","time series","canvas"],"repository":{"type":"git","url":"git://github.com/rook2pawn/node-chart.git"},"main":"index.js","dependencies":{"hat":"","mrcolor":"https://github.com/rook2pawn/mrcolor/archive/master.tar.gz","hashish":""},"devDependencies":{},"readme":"node-chart\n==========\n\nTime Series Charting Canvas API \n\nUse\n===\n\n    var Chart = require('chart');\n    var chart = new Chart;\n    var ee = require('events').EventEmitter;\n    var datasource = new ee;\n\n    chart.series(datasource);\n    chart.to(document.getElementById('mychart'));\n\n    setInterval(function() {\n        var random = Math.floor(Math.random()*100);\n        datasource.emit('data',{y:random});\n    },1000);\n\nMultiple Data sources\n=====================\n\n    var d1 = new ee;\n    var d2 = new ee;\n\n    chart.series(d1);\n    chart.series(d2);\n    \n    // or\n    chart.series([d1,d2])\n        \n    // or\n    chart.series(d1,d2);\n\nMultiple Y-Axises\n=================\n\nTo have the data you emit treated as separate y-axises with different scaling, simply\npass a second object {multiple:true} in your emit\n\n    datasource.emit('data',{stockPrice:235,temperature:88},{multiple:true});\n\n\nchart.series\n============\n\nEvent types that chart.series responds to are \n\n'data' - provides data for timeseries and optional labels\n\n'stop' - stops the timeseries for that datastream\n\nchart.legend\n============\n\n    <div id='legend'></div>\n    chart.legend(document.getElementById('legend'));\n\nLegend is automatically created with the data that is sent. \nTo visualize and interact with a legend, use the .legend callback\n\n\nlegend.css\n==========\n\n    <link type='text/css' rel='stylesheet' href='legend.css' />\n\nAlso in the root directory of this package is a file called legend.css that you should include.\n\n\nLabels go with the value\n------------------------\n\n    datasorce.emit('data',{'units sold':9.2})\n\nYou can supply multiple labels\n------------------------------\n\n    datasorce1.emit('data',{'units sold':9.2})\n    datasorce2.emit('data',{'current energy consumption':30})\n\nColors\n======\n\nYou can set the following colors. Defaults to below.\n\n    chart.color.grid = '#c9d6de';\n    chart.color.gridbg = '#FFF';\n    chart.color.gridxlabel = '#000';\n    chart.color.gridxline = '#000';\n    chart.color.gridylabel = '#000'\n    chart.color.gridyline = '#000';\n    chart.color.grid.interactionline = '#000';\n\nYou can also create a preferred ordered set of colors for the lines.\nYou must supply the lines in six digit RGB hexadecimal like so:\n\n    chart.color.line = ['#FF0000','#00FF'];\n\nAny colors you do not supply will be provided for.\n\n    chart.color.line = ['#FF0000',undefined,'#00FF'];\n    // will choose '#FFFF00' for the second element automatically.\n\nYou can also set colors for the legend, through these CSS classes\n\n    div.legend {\n    }\n    div.legend div.axisname {\n    }\n\nRender Modes\n============\n\nYou can set the render modes any time, change them at any time like so:\n\n    chart.rendermode = \"line\"; // defaults to line, also can use \"linefill\", \"bar\"\n\nYou can also set the rendermode from a specific event and it will take precedence.\nYou can switch this at will.\n\n    datasource.rendermode = \"linefill\";\n\nMISC\n====\n\nchart.inspect\n=============\n\nchart.inspect() returns the current data passing through.\n\n\nTests\n=====\n\n    // to install tap, simply npm install tap\n    \n    tap ./test\n\n\nMISC\n====\n\nAuthor: David Wee <rook2pawn@gmail.com>\nLicense: MIT/X11\n","readmeFilename":"README.md","_id":"chart@0.0.14","dist":{"shasum":"22ac2a3c4166bb8271b3d931a116a814032742f4","tarball":"https://registry.npmjs.org/chart/-/chart-0.0.14.tgz","integrity":"sha512-Qk1RzNCXjf+Dmmhsf3NMK70tMMd9khAzoES6L1dhwOrKIGAV++wLrxph9+rUBizIMciI+pRsm0tZQjf4VG0e0A==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCn3CG7pPTaUovvGYS/molfMY2lZpE5E1mfrVxx1kx2kAIhAMgRQwCL+vnpb+d88Kjf1fbc5/gV5zSKwJuI02DPpWhN"}]},"_npmVersion":"1.1.71","_npmUser":{"name":"rook2pawn","email":"rook2pawn@gmail.com"},"maintainers":[{"name":"rook2pawn","email":"rook2pawn@gmail.com"}],"directories":{}},"0.0.15":{"author":{"name":"David Wee","email":"rook2pawn@gmail.com","url":"http://rook2pawn.com"},"name":"chart","description":"event based time series charting API","version":"0.0.15","homepage":"https://github.com/rook2pawn/node-chart","keywords":["chart","time series","canvas"],"repository":{"type":"git","url":"git://github.com/rook2pawn/node-chart.git"},"main":"index.js","dependencies":{"hat":"","mrcolor":"https://github.com/rook2pawn/mrcolor/archive/master.tar.gz","hashish":""},"devDependencies":{},"readme":"node-chart\n==========\n\nTime Series Charting Canvas API \n\nUse\n===\n\n    var Chart = require('chart');\n    var chart = new Chart;\n    var ee = require('events').EventEmitter;\n    var datasource = new ee;\n\n    chart.series(datasource);\n    chart.to(document.getElementById('mychart'));\n\n    setInterval(function() {\n        var random = Math.floor(Math.random()*100);\n        datasource.emit('data',{y:random});\n    },1000);\n\nMultiple Data sources\n=====================\n\n    var d1 = new ee;\n    var d2 = new ee;\n\n    chart.series(d1);\n    chart.series(d2);\n    \n    // or\n    chart.series([d1,d2])\n        \n    // or\n    chart.series(d1,d2);\n\nMultiple Y-Axises\n=================\n\nTo have the data you emit treated as separate y-axises with different scaling, simply\npass a second object {multiple:true} in your emit\n\n    datasource.emit('data',{stockPrice:235,temperature:88},{multiple:true});\n\n\nchart.series\n============\n\nEvent types that chart.series responds to are \n\n'data' - provides data for timeseries and optional labels\n\n'stop' - stops the timeseries for that datastream\n\nchart.legend\n============\n\n    <div id='legend'></div>\n    chart.legend(document.getElementById('legend'));\n\nLegend is automatically created with the data that is sent. \nTo visualize and interact with a legend, use the .legend callback\n\n\nlegend.css\n==========\n\n    <link type='text/css' rel='stylesheet' href='legend.css' />\n\nAlso in the root directory of this package is a file called legend.css that you should include.\n\n\nLabels go with the value\n------------------------\n\n    datasorce.emit('data',{'units sold':9.2})\n\nYou can supply multiple labels\n------------------------------\n\n    datasorce1.emit('data',{'units sold':9.2})\n    datasorce2.emit('data',{'current energy consumption':30})\n\nColors\n======\n\nYou can set the following colors. Defaults to below.\n\n    chart.color.grid = '#c9d6de';\n    chart.color.gridbg = '#FFF';\n    chart.color.gridxlabel = '#000';\n    chart.color.gridxline = '#000';\n    chart.color.gridylabel = '#000'\n    chart.color.gridyline = '#000';\n    chart.color.grid.interactionline = '#000';\n\nYou can also create a preferred ordered set of colors for the lines.\nYou must supply the lines in six digit RGB hexadecimal like so:\n\n    chart.color.line = ['#FF0000','#00FF'];\n\nAny colors you do not supply will be provided for.\n\n    chart.color.line = ['#FF0000',undefined,'#00FF'];\n    // will choose '#FFFF00' for the second element automatically.\n\nYou can also set colors for the legend, through these CSS classes\n\n    div.legend {\n    }\n    div.legend div.axisname {\n    }\n\nRender Modes\n============\n\nYou can set the render modes any time, change them at any time like so:\n\n    chart.rendermode = \"line\"; // defaults to line, also can use \"linefill\", \"bar\"\n\nYou can also set the rendermode from a specific event and it will take precedence.\nYou can switch this at will.\n\n    datasource.rendermode = \"linefill\";\n\nMISC\n====\n\nchart.inspect\n=============\n\nchart.inspect() returns the current data passing through.\n\n\nTests\n=====\n\n    // to install tap, simply npm install tap\n    \n    tap ./test\n\n\nMISC\n====\n\nAuthor: David Wee <rook2pawn@gmail.com>\nLicense: MIT/X11\n","readmeFilename":"README.md","_id":"chart@0.0.15","dist":{"shasum":"2e5bf4d51ab33f7a0a7342179f32ff3fa5d53346","tarball":"https://registry.npmjs.org/chart/-/chart-0.0.15.tgz","integrity":"sha512-YeOpUKkbhiWtPoA9tM3EzUu5DRK+72eYc2VuHjCz7Q0iim6g4vvbmocbMrLCANEJRUzohUn3pkGoGb8mWFth4w==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQC4rmisw+yEawdInNlJ39AJ4uZHG2RSu2gYH14GSDwTUQIgGD7ULf2HDUHquK3hnAZFfGafyxMXkeDj8S9yAu6r8Hg="}]},"_npmVersion":"1.1.71","_npmUser":{"name":"rook2pawn","email":"rook2pawn@gmail.com"},"maintainers":[{"name":"rook2pawn","email":"rook2pawn@gmail.com"}],"directories":{}},"0.0.16":{"author":{"name":"David Wee","email":"rook2pawn@gmail.com","url":"http://rook2pawn.com"},"name":"chart","description":"event based time series charting API","version":"0.0.16","homepage":"https://github.com/rook2pawn/node-chart","keywords":["chart","time series","canvas"],"repository":{"type":"git","url":"git://github.com/rook2pawn/node-chart.git"},"main":"index.js","dependencies":{"hat":"","mrcolor":"https://github.com/rook2pawn/mrcolor/archive/master.tar.gz","hashish":""},"devDependencies":{},"readme":"node-chart\n==========\n\nTime Series Charting Canvas API \n\nUse\n===\n\n    var Chart = require('chart');\n    var chart = new Chart;\n    var ee = require('events').EventEmitter;\n    var datasource = new ee;\n\n    chart.series(datasource);\n    chart.to(document.getElementById('mychart'));\n\n    setInterval(function() {\n        var random = Math.floor(Math.random()*100);\n        datasource.emit('data',{y:random});\n    },1000);\n\nMultiple Data sources\n=====================\n\n    var d1 = new ee;\n    var d2 = new ee;\n\n    chart.series(d1);\n    chart.series(d2);\n    \n    // or\n    chart.series([d1,d2])\n        \n    // or\n    chart.series(d1,d2);\n\nMultiple Y-Axises\n=================\n\nTo have the data you emit treated as separate y-axises with different scaling, simply\npass a second object {multiple:true} in your emit\n\n    datasource.emit('data',{stockPrice:235,temperature:88},{multiple:true});\n\n\nchart.series\n============\n\nEvent types that chart.series responds to are \n\n'data' - provides data for timeseries and optional labels\n\n'stop' - stops the timeseries for that datastream\n\nchart.legend\n============\n\n    <div id='legend'></div>\n    chart.legend(document.getElementById('legend'));\n\nLegend is automatically created with the data that is sent. \nTo visualize and interact with a legend, use the .legend callback\n\n\nlegend.css\n==========\n\n    <link type='text/css' rel='stylesheet' href='legend.css' />\n\nAlso in the root directory of this package is a file called legend.css that you should include.\n\n\nLabels go with the value\n------------------------\n\n    datasorce.emit('data',{'units sold':9.2})\n\nYou can supply multiple labels\n------------------------------\n\n    datasorce1.emit('data',{'units sold':9.2})\n    datasorce2.emit('data',{'current energy consumption':30})\n\nColors\n======\n\nYou can set the following colors. Defaults to below.\n\n    chart.color.grid = '#c9d6de';\n    chart.color.gridbg = '#FFF';\n    chart.color.gridxlabel = '#000';\n    chart.color.gridxline = '#000';\n    chart.color.gridylabel = '#000'\n    chart.color.gridyline = '#000';\n    chart.color.grid.interactionline = '#000';\n\nYou can also create a preferred ordered set of colors for the lines.\nYou must supply the lines in six digit RGB hexadecimal like so:\n\n    chart.color.line = ['#FF0000','#00FF'];\n\nAny colors you do not supply will be provided for.\n\n    chart.color.line = ['#FF0000',undefined,'#00FF'];\n    // will choose '#FFFF00' for the second element automatically.\n\nYou can also set colors for the legend, through these CSS classes\n\n    div.legend {\n    }\n    div.legend div.axisname {\n    }\n\nRender Modes\n============\n\nYou can set the render modes any time, change them at any time like so:\n\n    chart.rendermode = \"line\"; // defaults to line, also can use \"linefill\", \"bar\"\n\nYou can also set the rendermode from a specific event and it will take precedence.\nYou can switch this at will.\n\n    datasource.rendermode = \"linefill\";\n\nMISC\n====\n\nchart.inspect\n=============\n\nchart.inspect() returns the current data passing through.\n\n\nTests\n=====\n\n    // to install tap, simply npm install tap\n    \n    tap ./test\n\n\nMISC\n====\n\nAuthor: David Wee <rook2pawn@gmail.com>\nLicense: MIT/X11\n","readmeFilename":"README.md","_id":"chart@0.0.16","dist":{"shasum":"9f717331046be85bab3882ec14c85a55f948f15d","tarball":"https://registry.npmjs.org/chart/-/chart-0.0.16.tgz","integrity":"sha512-feJU2yLo9o73Wi+5V+g/1FyBRFIkM0O6iCGLtNwadIixX8U4uKuT0qUHNyiPnxO4c6Fq50zXzk8AMdlQl3w0oQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIDMhWlpHqG7Cy/AiVSXmqB7JZaL3zo9me4X/cse0HQjrAiEAyGfBpbxOLDDMmgRmQ8lNiRwuEHxzSTe5SR7sPVDu0Yg="}]},"_npmVersion":"1.1.71","_npmUser":{"name":"rook2pawn","email":"rook2pawn@gmail.com"},"maintainers":[{"name":"rook2pawn","email":"rook2pawn@gmail.com"}],"directories":{}},"0.0.18":{"author":{"name":"David Wee","email":"rook2pawn@gmail.com","url":"http://rook2pawn.com"},"name":"chart","description":"event based time series charting API","version":"0.0.18","homepage":"https://github.com/rook2pawn/node-chart","keywords":["chart","time series","canvas"],"repository":{"type":"git","url":"git://github.com/rook2pawn/node-chart.git"},"main":"index.js","dependencies":{"hat":"","mrcolor":"https://github.com/rook2pawn/mrcolor/archive/master.tar.gz","hashish":""},"devDependencies":{},"readme":"node-chart\n==========\n\nTime Series Charting Canvas API \n\n[Example](http://rook2pawn.com)\n\nUse\n===\n\n    var Chart = require('chart');\n    var chart = new Chart;\n    var ee = require('events').EventEmitter;\n    var datasource = new ee;\n\n    chart.series(datasource);\n    chart.to(document.getElementById('mychart'));\n\n    setInterval(function() {\n        var random = Math.floor(Math.random()*100);\n        datasource.emit('data',{y:random});\n    },1000);\n\nMultiple Data sources\n=====================\n\n    var d1 = new ee;\n    var d2 = new ee;\n\n    chart.series(d1);\n    chart.series(d2);\n    \n    // or\n    chart.series([d1,d2])\n        \n    // or\n    chart.series(d1,d2);\n\nMultiple Y-Axises\n=================\n\nTo have the data you emit treated as separate y-axises with different scaling, simply\npass a second object {multiple:true} in your emit\n\n    datasource.emit('data',{stockPrice:235,temperature:88},{multiple:true});\n\n\nchart.series\n============\n\nEvent types that chart.series responds to are \n\n'data' - provides data for timeseries and optional labels\n\n'stop' - stops the timeseries for that datastream\n\nchart.legend\n============\n\n    <div id='legend'></div>\n    chart.legend(document.getElementById('legend'));\n\nLegend is automatically created with the data that is sent. \nTo visualize and interact with a legend, use the .legend callback\n\n\nlegend.css\n==========\n\n    <link type='text/css' rel='stylesheet' href='legend.css' />\n\nAlso in the root directory of this package is a file called legend.css that you should include.\n\n\nLabels go with the value\n------------------------\n\n    datasorce.emit('data',{'units sold':9.2})\n\nYou can supply multiple labels\n------------------------------\n\n    datasorce1.emit('data',{'units sold':9.2})\n    datasorce2.emit('data',{'current energy consumption':30})\n\nColors\n======\n\nYou can set the following colors. Defaults to below.\n\n    chart.color.bg = '#FFF'; // the background color\n    chart.color.grid = '#c9d6de'; // a pleasant grid\n    chart.color.xlabel = '#000'; // the color of the x-axis labels\n    chart.color.xline = '#000'; // the color the x-axis line\n    chart.color.ylabel = '#000'\n    chart.color.yline = '#000';\n    chart.color.interactionline = '#000';\n\nYou can also create a preferred ordered set of colors for the lines.\nYou must supply the lines in six digit RGB hexadecimal like so:\n\n    chart.color.line = ['#FF0000','#00FF'];\n\nAny colors you do not supply will be provided for.\n\n    chart.color.line = ['#FF0000',undefined,'#00FF'];\n    // will choose '#FFFF00' for the second element automatically.\n\nYou can also set colors for the legend, through these CSS classes\n\n    div.legend {\n    }\n    div.legend div.axisname {\n    }\n\nRender Modes\n============\n\nYou can set the render modes any time, change them at any time like so:\n\n    chart.rendermode = \"line\"; // defaults to line, also can use \"linefill\", \"bar\"\n\nYou can also set the rendermode from a specific event and it will take precedence.\nYou can switch this at will.\n\n    datasource.rendermode = \"linefill\";\n\nMISC\n====\n\nchart.inspect\n=============\n\nchart.inspect() returns the current data passing through.\n\n\nTests\n=====\n\n    // to install tap, simply npm install tap\n    \n    tap ./test\n\n\nMISC\n====\n\nAuthor: David Wee <rook2pawn@gmail.com>\nLicense: MIT/X11\n","readmeFilename":"README.md","_id":"chart@0.0.18","dist":{"shasum":"0b08e5e66329c0f2927d6696abc61188be36c646","tarball":"https://registry.npmjs.org/chart/-/chart-0.0.18.tgz","integrity":"sha512-MiJ+JoaI9X7UHSnaRauNsE9wx7Wy2xA2qiozIjiyprm9/VnVI/H7qOAQnIMFjLAe+Cyuo/uTGmIuXYhjEBLgUg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIDD+UbYAvuwKf5vyQyN7HpzruBGYenNv0qYJtLo6GArOAiEApzKqg+Ygj7K3SyN09fJbL/bHoNt++rx1U+r1Jcg+vLM="}]},"_npmVersion":"1.1.71","_npmUser":{"name":"rook2pawn","email":"rook2pawn@gmail.com"},"maintainers":[{"name":"rook2pawn","email":"rook2pawn@gmail.com"}]},"0.0.19":{"author":{"name":"David Wee","email":"rook2pawn@gmail.com","url":"http://rook2pawn.com"},"name":"chart","description":"event based time series charting API","version":"0.0.19","homepage":"https://github.com/rook2pawn/node-chart","keywords":["chart","time series","canvas"],"repository":{"type":"git","url":"git://github.com/rook2pawn/node-chart.git"},"main":"index.js","dependencies":{"hat":"","mrcolor":"https://github.com/rook2pawn/mrcolor/archive/master.tar.gz","hashish":""},"devDependencies":{},"readme":"node-chart\n==========\n\nTime Series Charting Canvas API \n\n[Example](http://rook2pawn.com)\n\nUse\n===\n\n    var Chart = require('chart');\n    var chart = new Chart;\n    var ee = require('events').EventEmitter;\n    var datasource = new ee;\n\n    chart.series(datasource);\n    chart.to(document.getElementById('mychart'));\n\n    setInterval(function() {\n        var random = Math.floor(Math.random()*100);\n        datasource.emit('data',{y:random});\n    },1000);\n\nMultiple Data sources\n=====================\n\n    var d1 = new ee;\n    var d2 = new ee;\n\n    chart.series(d1);\n    chart.series(d2);\n    \n    // or\n    chart.series([d1,d2])\n        \n    // or\n    chart.series(d1,d2);\n\nMultiple Y-Axises\n=================\n\nTo have the data you emit treated as separate y-axises with different scaling, simply\npass a second object {multiple:true} in your emit\n\n    datasource.emit('data',{stockPrice:235,temperature:88},{multiple:true});\n\n\nchart.series\n============\n\nEvent types that chart.series responds to are \n\n'data' - provides data for timeseries and optional labels\n\n'stop' - stops the timeseries for that datastream\n\nchart.legend\n============\n\n    <div id='legend'></div>\n    chart.legend(document.getElementById('legend'));\n\nLegend is automatically created with the data that is sent. \nTo visualize and interact with a legend, use the .legend callback\n\n\nlegend.css\n==========\n\n    <link type='text/css' rel='stylesheet' href='legend.css' />\n\nAlso in the root directory of this package is a file called legend.css that you should include.\n\n\nLabels go with the value\n------------------------\n\n    datasorce.emit('data',{'units sold':9.2})\n\nYou can supply multiple labels\n------------------------------\n\n    datasorce1.emit('data',{'units sold':9.2})\n    datasorce2.emit('data',{'current energy consumption':30})\n\nColors\n======\n\nYou can set the following colors. Defaults to below.\n\n    chart.color.bg = '#FFF'; // the background color\n    chart.color.grid = '#c9d6de'; // a pleasant grid\n    chart.color.xlabel = '#000'; // the color of the x-axis labels\n    chart.color.xline = '#000'; // the color the x-axis line\n    chart.color.ylabel = '#000'\n    chart.color.yline = '#000';\n    chart.color.interactionline = '#000';\n\nYou can also create a preferred ordered set of colors for the lines.\nYou must supply the lines in six digit RGB hexadecimal like so:\n\n    chart.color.line = ['#FF0000','#00FF'];\n\nAny colors you do not supply will be provided for.\n\n    chart.color.line = ['#FF0000',undefined,'#00FF'];\n    // will choose '#FFFF00' for the second element automatically.\n\nYou can also set colors for the legend, through these CSS classes\n\n    div.legend {\n    }\n    div.legend div.axisname {\n    }\n\nRender Modes\n============\n\nYou can set the render modes any time, change them at any time like so:\n\n    chart.rendermode = \"line\"; // defaults to line, also can use \"linefill\", \"bar\"\n\nYou can also set the rendermode from a specific event and it will take precedence.\nYou can switch this at will.\n\n    datasource.rendermode = \"linefill\";\n\nMISC\n====\n\nchart.inspect\n=============\n\nchart.inspect() returns the current data passing through.\n\n\nTests\n=====\n\n    // to install tap, simply npm install tap\n    \n    tap ./test\n\n\nMISC\n====\n\nAuthor: David Wee <rook2pawn@gmail.com>\nLicense: MIT/X11\n","readmeFilename":"README.md","_id":"chart@0.0.19","dist":{"shasum":"925d00bdd12e69106042ffd35576d49f3d28fc12","tarball":"https://registry.npmjs.org/chart/-/chart-0.0.19.tgz","integrity":"sha512-XvwVLb/AfWvecmvdGjISUve3SMvTY3EgyJIRCdOkWtA8IGYBNlZBd1kKBCCgyLk+vXZB6J7HkYBU0+vGnUfBig==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIGyjHWX/ng8M2O7WgxCYIJxB2LsOiTdB5FGHr2Pf5dcfAiBgLafiem4b7rH/47w9oSJCa9NYfUYkRXva02785jTM4Q=="}]},"_npmVersion":"1.1.71","_npmUser":{"name":"rook2pawn","email":"rook2pawn@gmail.com"},"maintainers":[{"name":"rook2pawn","email":"rook2pawn@gmail.com"}]},"0.1.0":{"author":{"name":"David Wee","email":"rook2pawn@gmail.com","url":"http://rook2pawn.com"},"name":"chart","description":"event based time series charting API","version":"0.1.0","homepage":"https://github.com/rook2pawn/node-chart","keywords":["chart","time series","canvas"],"repository":{"type":"git","url":"git://github.com/rook2pawn/node-chart.git"},"main":"index.js","dependencies":{"hat":"","mrcolor":"https://github.com/rook2pawn/mrcolor/archive/master.tar.gz","hashish":""},"devDependencies":{},"readme":"node-chart\n==========\n\nTime Series Charting Canvas API \n\n[Example](http://rook2pawn.com)\n\nUse\n===\n\n    var Chart = require('chart');\n    var chart = new Chart;\n    var ee = require('events').EventEmitter;\n    var datasource = new ee;\n\n    chart.series(datasource);\n    chart.to(document.getElementById('mychart'));\n\n    setInterval(function() {\n        var random = Math.floor(Math.random()*100);\n        datasource.emit('data',{y:random});\n    },1000);\n\nMultiple Data sources\n=====================\n\n    var d1 = new ee;\n    var d2 = new ee;\n\n    chart.series(d1);\n    chart.series(d2);\n    \n    // or\n    chart.series([d1,d2])\n        \n    // or\n    chart.series(d1,d2);\n\nMultiple Y-Axises\n=================\n\nTo have the data you emit treated as separate y-axises with different scaling, simply\npass a second object {multiple:true} in your emit\n\n    datasource.emit('data',{stockPrice:235,temperature:88},{multiple:true});\n\n\nchart.series\n============\n\nEvent types that chart.series responds to are \n\n'data' - provides data for timeseries and optional labels\n\n'stop' - stops the timeseries for that datastream\n\nchart.legend\n============\n\n    <div id='legend'></div>\n    chart.legend(document.getElementById('legend'));\n\nLegend is automatically created with the data that is sent. \nTo visualize and interact with a legend, use the .legend callback\n\n\nlegend.css\n==========\n\n    <link type='text/css' rel='stylesheet' href='legend.css' />\n\nAlso in the root directory of this package is a file called legend.css that you should include.\n\n\nLabels go with the value\n------------------------\n\n    datasorce.emit('data',{'units sold':9.2})\n\nYou can supply multiple labels\n------------------------------\n\n    datasorce1.emit('data',{'units sold':9.2})\n    datasorce2.emit('data',{'current energy consumption':30})\n\nColors\n======\n\nYou can set the following colors. Defaults to below.\n\n    chart.color.bg = '#FFF'; // the background color\n    chart.color.grid = '#c9d6de'; // a pleasant grid\n    chart.color.xlabel = '#000'; // the color of the x-axis labels\n    chart.color.xline = '#000'; // the color the x-axis line\n    chart.color.ylabel = '#000'\n    chart.color.yline = '#000';\n    chart.color.interactionline = '#000';\n\nYou can also create a preferred ordered set of colors for the lines.\nYou must supply the lines in six digit RGB hexadecimal like so:\n\n    chart.color.line = ['#FF0000','#00FF'];\n\nAny colors you do not supply will be provided for.\n\n    chart.color.line = ['#FF0000',undefined,'#00FF'];\n    // will choose '#FFFF00' for the second element automatically.\n\nYou can also set colors for the legend, through these CSS classes\n\n    div.legend {\n    }\n    div.legend div.axisname {\n    }\n\nRender Modes\n============\n\nYou can set the render modes any time, change them at any time like so:\n\n    chart.rendermode = \"line\"; // defaults to line, also can use \"linefill\", \"bar\"\n\nYou can also set the rendermode from a specific event and it will take precedence.\nYou can switch this at will.\n\n    datasource.rendermode = \"linefill\";\n\nMISC\n====\n\nchart.inspect\n=============\n\nchart.inspect() returns the current data passing through.\n\n\nTests\n=====\n\n    // to install tap, simply npm install tap\n    \n    tap ./test\n\n\nMISC\n====\n\nAuthor: David Wee <rook2pawn@gmail.com>\nLicense: MIT/X11\n","readmeFilename":"README.md","_id":"chart@0.1.0","dist":{"shasum":"4d3288c738edb0709f98ec460ce7cfce1402d073","tarball":"https://registry.npmjs.org/chart/-/chart-0.1.0.tgz","integrity":"sha512-XAv5bAlTeKSCn92erVOFhvNiiTLcqSMsJ7yMGNBHccn4DVLM0oA/RxESLPKZj+/542TRcgLo53uVShmLoWNzMA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIEUtP/eufGTddX6cACZDStRYPXNwqM8/jkL+ldT+ixboAiBo2/ZMgxqcDYk8nrLCvOqWG/gV+vXRRvwsFfc8acenFw=="}]},"_npmVersion":"1.1.71","_npmUser":{"name":"rook2pawn","email":"rook2pawn@gmail.com"},"maintainers":[{"name":"rook2pawn","email":"rook2pawn@gmail.com"}]},"0.1.1":{"author":{"name":"David Wee","email":"rook2pawn@gmail.com","url":"http://rook2pawn.com"},"name":"chart","description":"event based time series charting API","version":"0.1.1","homepage":"https://github.com/rook2pawn/node-chart","keywords":["chart","time series","canvas"],"repository":{"type":"git","url":"git://github.com/rook2pawn/node-chart.git"},"main":"index.js","dependencies":{"hat":"","mrcolor":"https://github.com/rook2pawn/mrcolor/archive/master.tar.gz","hashish":""},"devDependencies":{},"readme":"node-chart\n==========\n\nTime Series Charting Canvas API \n\n[Example](http://rook2pawn.com)\n\nUse\n===\n\n    var Chart = require('chart');\n    var chart = new Chart;\n    var ee = require('events').EventEmitter;\n    var datasource = new ee;\n\n    chart.series(datasource);\n    chart.to(document.getElementById('mychart'));\n\n    setInterval(function() {\n        var random = Math.floor(Math.random()*100);\n        datasource.emit('data',{y:random});\n    },1000);\n\nMultiple Data sources\n=====================\n\n    var d1 = new ee;\n    var d2 = new ee;\n\n    chart.series(d1);\n    chart.series(d2);\n    \n    // or\n    chart.series([d1,d2])\n        \n    // or\n    chart.series(d1,d2);\n\nMultiple Y-Axises\n=================\n\nTo have the data you emit treated as separate y-axises with different scaling, simply\npass a second object {multiple:true} in your emit\n\n    datasource.emit('data',{stockPrice:235,temperature:88},{multiple:true});\n\n\nchart.series\n============\n\nEvent types that chart.series responds to are \n\n'data' - provides data for timeseries and optional labels\n\n'stop' - stops the timeseries for that datastream\n\nchart.legend\n============\n\n    <div id='legend'></div>\n    chart.legend(document.getElementById('legend'));\n\nLegend is automatically created with the data that is sent. \nTo visualize and interact with a legend, use the .legend callback\n\n\nlegend.css\n==========\n\n    <link type='text/css' rel='stylesheet' href='legend.css' />\n\nAlso in the root directory of this package is a file called legend.css that you should include.\n\n\nLabels go with the value\n------------------------\n\n    datasorce.emit('data',{'units sold':9.2})\n\nYou can supply multiple labels\n------------------------------\n\n    datasorce1.emit('data',{'units sold':9.2})\n    datasorce2.emit('data',{'current energy consumption':30})\n\nColors\n======\n\nYou can set the following colors. Defaults to below.\n\n    chart.color.bg = '#FFF'; // the background color\n    chart.color.grid = '#c9d6de'; // a pleasant grid\n    chart.color.xlabel = '#000'; // the color of the x-axis labels\n    chart.color.xline = '#000'; // the color the x-axis line\n    chart.color.ylabel = '#000'\n    chart.color.yline = '#000';\n    chart.color.interactionline = '#000';\n\nYou can also create a preferred ordered set of colors for the lines.\nYou must supply the lines in six digit RGB hexadecimal like so:\n\n    chart.color.line = ['#FF0000','#00FF'];\n\nAny colors you do not supply will be provided for.\n\n    chart.color.line = ['#FF0000',undefined,'#00FF'];\n    // will choose '#FFFF00' for the second element automatically.\n\nYou can also set colors for the legend, through these CSS classes\n\n    div.legend {\n    }\n    div.legend div.axisname {\n    }\n\nRender Modes\n============\n\nYou can set the render modes any time, change them at any time like so:\n\n    chart.rendermode = \"line\"; // defaults to line, also can use \"linefill\", \"bar\"\n\nYou can also set the rendermode from a specific event and it will take precedence.\nYou can switch this at will.\n\n    datasource.rendermode = \"linefill\";\n\nMISC\n====\n\nchart.inspect\n=============\n\nchart.inspect() returns the current data passing through.\n\n\nTests\n=====\n\n    // to install tap, simply npm install tap\n    \n    tap ./test\n\n\nMISC\n====\n\nAuthor: David Wee <rook2pawn@gmail.com>\nLicense: MIT/X11\n","readmeFilename":"README.md","_id":"chart@0.1.1","dist":{"shasum":"6c086eb7689ab2c6172609513b4da12a2e9f9e20","tarball":"https://registry.npmjs.org/chart/-/chart-0.1.1.tgz","integrity":"sha512-MsJ553bq94upgTQeQHc6pSAttfzyxQluD0mBA2dvjMfr/LNBqde4/qxkLU4h6KNopk4pWUJqn+sXtrcUEqeohQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIHa/p0h2GrYbrD35Ha8hkk4zO480sje+1KbmY0hPx6RlAiEAx0Vlj35+B0N5EA5gyIgL9cN2oc9HuTIBaqIeqWgBiFk="}]},"_npmVersion":"1.1.71","_npmUser":{"name":"rook2pawn","email":"rook2pawn@gmail.com"},"maintainers":[{"name":"rook2pawn","email":"rook2pawn@gmail.com"}]},"0.1.2":{"author":{"name":"David Wee","email":"rook2pawn@gmail.com","url":"http://rook2pawn.com"},"name":"chart","description":"event based time series charting API","version":"0.1.2","homepage":"https://github.com/rook2pawn/node-chart","keywords":["chart","time series","canvas"],"repository":{"type":"git","url":"git://github.com/rook2pawn/node-chart.git"},"main":"index.js","dependencies":{"hat":"","mrcolor":"https://github.com/rook2pawn/mrcolor/archive/master.tar.gz","hashish":""},"devDependencies":{},"readme":"node-chart\n==========\n\nTime Series Charting Canvas API \n\n[Example](http://rook2pawn.com)\n\nUse\n===\n\n    var Chart = require('chart');\n    var chart = new Chart;\n    var ee = require('events').EventEmitter;\n    var datasource = new ee;\n\n    chart.series(datasource);\n    chart.to(document.getElementById('mychart'));\n\n    setInterval(function() {\n        var random = Math.floor(Math.random()*100);\n        datasource.emit('data',{y:random});\n    },1000);\n\nMultiple Data sources\n=====================\n\n    var d1 = new ee;\n    var d2 = new ee;\n\n    chart.series(d1);\n    chart.series(d2);\n    \n    // or\n    chart.series([d1,d2])\n        \n    // or\n    chart.series(d1,d2);\n\nMultiple Y-Axises\n=================\n\nTo have the data you emit treated as separate y-axises with different scaling, simply\npass a second object {multiple:true} in your emit\n\n    datasource.emit('data',{stockPrice:235,temperature:88},{multiple:true});\n\n\nchart.series\n============\n\nEvent types that chart.series responds to are \n\n'data' - provides data for timeseries and optional labels\n\n'stop' - stops the timeseries for that datastream\n\nchart.legend\n============\n\n    <div id='legend'></div>\n    chart.legend(document.getElementById('legend'));\n\nLegend is automatically created with the data that is sent. \nTo visualize and interact with a legend, use the .legend callback\n\n\nlegend.css\n==========\n\n    <link type='text/css' rel='stylesheet' href='legend.css' />\n\nAlso in the root directory of this package is a file called legend.css that you should include.\n\n\nLabels go with the value\n------------------------\n\n    datasorce.emit('data',{'units sold':9.2})\n\nYou can supply multiple labels\n------------------------------\n\n    datasorce1.emit('data',{'units sold':9.2})\n    datasorce2.emit('data',{'current energy consumption':30})\n\nColors\n======\n\nYou can set the following colors. Defaults to below.\n\n    chart.color.bg = '#FFF'; // the background color\n    chart.color.grid = '#c9d6de'; // a pleasant grid\n    chart.color.xlabel = '#000'; // the color of the x-axis labels\n    chart.color.xline = '#000'; // the color the x-axis line\n    chart.color.ylabel = '#000'\n    chart.color.yline = '#000';\n    chart.color.interactionline = '#000';\n\nYou can also create a preferred ordered set of colors for the lines.\nYou must supply the lines in six digit RGB hexadecimal like so:\n\n    chart.color.line = ['#FF0000','#00FF'];\n\nAny colors you do not supply will be provided for.\n\n    chart.color.line = ['#FF0000',undefined,'#00FF'];\n    // will choose '#FFFF00' for the second element automatically.\n\nYou can also set colors for the legend, through these CSS classes\n\n    div.legend {\n    }\n    div.legend div.axisname {\n    }\n\nRender Modes\n============\n\nYou can set the render modes any time, change them at any time like so:\n\n    chart.rendermode = \"line\"; // defaults to line, also can use \"linefill\", \"bar\"\n\nYou can also set the rendermode from a specific event and it will take precedence.\nYou can switch this at will.\n\n    datasource.rendermode = \"linefill\";\n\nMISC\n====\n\nchart.inspect\n=============\n\nchart.inspect() returns the current data passing through.\n\n\nTests\n=====\n\n    // to install tap, simply npm install tap\n    \n    tap ./test\n\n\nMISC\n====\n\nAuthor: David Wee <rook2pawn@gmail.com>\nLicense: MIT/X11\n","readmeFilename":"README.md","_id":"chart@0.1.2","dist":{"shasum":"69d9e916c26a8bed85b29df802c763ab5297d318","tarball":"https://registry.npmjs.org/chart/-/chart-0.1.2.tgz","integrity":"sha512-MSiVzAd3qUEXv54k9KGe1oIoC7WG32W9wtjpovlTGlzo2ue/fRiHf7kJAK1zmD736jH/0fVWNCQLh41btfAEZQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIComh0+hCajNveWB1bLsboMKZZlfcQouSMVh9joNxci/AiEAlFzIiiRoe6wbfpuFrG5bMEhsGR9fjvDtN4HWD1d681U="}]},"_npmVersion":"1.1.71","_npmUser":{"name":"rook2pawn","email":"rook2pawn@gmail.com"},"maintainers":[{"name":"rook2pawn","email":"rook2pawn@gmail.com"}]}},"readme":"node-chart\n==========\n\nTime Series Charting Canvas API \n\nUse\n===\n\n    var chart = new Chart();\n    var ee = require('events').EventEmitter;\n    var datasource = new ee;\n\n    chart.series(datasource);\n    chart.to(document.getElementById('mychart'));\n\n    setInterval(function() {\n        var random = Math.floor(Math.random()*100);\n        datasource.emit('data',{y:random});\n    },1000);\n\nMultiple Data sources\n=====================\n\n    var d1 = new ee;\n    var d2 = new ee;\n\n    chart.series(d1);\n    chart.series(d2);\n    \n    // or\n    chart.series([d1,d2])\n        \n    // or\n    chart.series(d1,d2);\n\nchart.series\n============\n\nEvent types that chart.series responds to are \n\n'data' - provides data for timeseries and optional labels\n\n'stop' - stops the timeseries for that datastream\n\nchart.legend\n============\n\n    <canvas id='legend'></canvas>\n    chart.legend(document.getElementById('legend'));\n\nLegend is automatically created with the data that is sent. \nTo visualize and interact with a legend, use the .legend callback\n\n\nLabels go with the value\n------------------------\n\n    datasorce.emit('data',{'units sold':9.2})\n\nYou can supply multiple labels\n------------------------------\n\n    datasorce1.emit('data',{'units sold':9.2})\n    datasorce2.emit('data',{'current energy consumption':30})\n\nTests\n=====\n\n    // to install tap, simply npm install tap\n    \n    tap ./test\n\n\nMISC\n====\n\nAuthor: David Wee <rook2pawn@gmail.com>\nLicense: MIT\nDeveloped At : Malhar, Inc. <david@malhar-inc.com>\n","maintainers":[{"name":"rook2pawn","email":"rook2pawn@gmail.com"}],"time":{"modified":"2022-06-13T05:53:56.674Z","created":"2013-01-01T10:28:16.723Z","0.0.1":"2013-01-01T10:28:18.273Z","0.0.2":"2013-01-01T13:37:15.365Z","0.0.3":"2013-01-03T01:26:25.807Z","0.0.4":"2013-01-03T02:36:26.523Z","0.0.5":"2013-01-03T12:44:30.265Z","0.0.6":"2013-01-04T10:46:22.885Z","0.0.7":"2013-01-10T11:17:09.141Z","0.0.8":"2013-01-10T20:26:18.818Z","0.0.9":"2013-01-16T07:00:48.054Z","0.0.10":"2013-01-19T11:42:39.803Z","0.0.11":"2013-01-20T23:29:14.171Z","0.0.13":"2013-01-21T18:54:05.957Z","0.0.14":"2013-01-23T06:17:39.970Z","0.0.15":"2013-01-23T10:35:27.468Z","0.0.16":"2013-01-23T10:39:27.374Z","0.0.18":"2013-01-23T17:07:10.582Z","0.0.19":"2013-01-31T10:19:09.855Z","0.1.0":"2013-02-01T05:11:46.845Z","0.1.1":"2013-02-12T13:13:38.282Z","0.1.2":"2013-02-13T16:25:35.689Z"},"author":{"name":"David Wee","email":"rook2pawn@gmail.com","url":"http://rook2pawn.com"},"repository":{"type":"git","url":"git://github.com/rook2pawn/node-chart.git"},"users":{"andr":true}}