Closed

HTML5/Javascript Chart Utility

This project received 11 bids from talented freelancers with an average bid price of $333 USD.

Get free quotes for a project like this
Employer working
Project Budget
$100 - $300 USD
Total Bids
11
Project Description

I need a html5/javascript implementation of my chart utility. The chart utility displays sensor time/value data

and also displays markers for ON/OFF times of outputs. I need something implmented in html5/js that provides

the same type of functionality. JSON data is available from the web server.

For example the following http request:

[url removed, login to view]

hardwareName=someSensor&startDate=1173551940612&endDate=2378171603111&maxDataPoints=15000

would return (shortened for readability):
{"datapoints":[{"v":"5.6","t":1381103025762},{"v":"5.6","t":1381103146752},{"v":"5.6","t":1381103266995},

{"v":"5.6","t":1381103387170},{"v":"5.6","t":1381103508142},{"v":"5.6","t":1381103628858},

{"v":"5.6","t":1381103749489},{"v":"5.6","t":1381103870488},{"v":"5.6","t":1381103991390},

{"v":"5.6","t":1381104112629},{"v":"5.6","t":1381104233148},{"v":"5.6","t":1381104353670},

{"v":"5.6","t":1381104474200},{"v":"5.6","t":1381104594957},{"v":"5.6","t":1381104715354},

{"v":"5.6","t":1381104835836},{"v":"5.6","t":1381104956338},{"v":"5.6","t":1381105077674},

{"v":"5.6","t":1381105198165},{"v":"5.6","t":1381105318671},{"v":"5.6","t":1381105439166},

{"v":"5.6","t":1381105559942},{"v":"5.6","t":1381105680416},{"v":"5.0","t":1381177680739}],"name":"someSensor"}

An outputs data would look like this:

Request:
[url removed, login to view]

%20Exhaust&startDate=51940612&endDate=3378171603111&maxDataPoints=15000

Response:
{"datapoints":[{"v":true,"t":1380170993272},{"v":false,"t":1380170999334},{"v":true,"t":1380171992770},

{"v":false,"t":1380171997667},{"v":true,"t":1380172054144},{"v":false,"t":1380172062683},

{"v":true,"t":1380172125078},{"v":false,"t":1380172126256},{"v":true,"t":1380172130657},

{"v":false,"t":1380172132540},{"v":true,"t":1380172135817},{"v":true,"t":1380699219967},

{"v":false,"t":1380699221454},{"v":true,"t":1381103936250},{"v":false,"t":1381104527795},

{"v":true,"t":1381182696772}],"name":"FR Exhaust"}

You can discover all the hardware using this request:
[url removed, login to view]

Example response:
{
"hardware":[
{
"name":"Temperature in the front room 1",
"type":"value_sensor",
"units":"°F"
},
{
"name":"CA Temperature",
"type":"value_sensor",
"units":"°F"
},
{
"name":"CA 94553 Humidity",
"type":"value_sensor",
"units":"%RH"
},
{
"name":"Res1pH",
"type":"value_sensor",
"units":"pH"
},
{
"high_reading":"Closed",
"name":"Front Door",
"low_reading":"Open",
"type":"binary_sensor"
},
{
"name":"FR Exhaust",
"type":"standard_output_device"
},
{
"name":"FR Lights",
"type":"standard_output_device"
}
]
}

binary_sensors have only 2 possible readings 0 and 5. 5 corresponds to a "high_reading" and 0 to the "low reading" tooltips for each datapoint should show the low and high reading text.

Please discuss in your bid the charting library you intend to use. We will consider commercial libraries.

Attached is a video with a walk through of the current implementation. We require similar functionality but we are open to changes/improvements.

Looking to make some money?

  • Set your budget and the timeframe
  • Outline your proposal
  • Get paid for your work

Hire Freelancers who also bid on this project

    • Forbes
    • The New York Times
    • Time
    • Wall Street Journal
    • Times Online