Skip to content

Instantly share code, notes, and snippets.

@tdack
Last active July 30, 2019 15:56
Show Gist options
  • Star 1 You must be signed in to star a gist
  • Fork 1 You must be signed in to fork a gist
  • Save tdack/eb51f3bedcf80d893171 to your computer and use it in GitHub Desktop.
Save tdack/eb51f3bedcf80d893171 to your computer and use it in GitHub Desktop.
D3 graph from RRD data
<!DOCTYPE html>
<html>
<meta charset="utf-8">
<head>
<link rel="stylesheet" type="text/css" href="style.css" />
<script src="http://d3js.org/d3.v3.min.js"></script>
<script src="x60min.js"></script>
<script src="x24hours.js"></script>
</head>
<body>
<div id="chart">
<div id="option">
<input name="updateButton"
type="button"
value="Update"
onclick="renderGraph(dataset2, 'usage', ['Bob', 'Mary'])" />
</div>
</div>
<script>
initialiseGraph('Internet Usage', dataset1, 'usage', ['Bob', 'Mary']);
renderGraph(dataset1, 'usage', ['Bob', 'Mary']);
function renderGraph(dataset, res_id, labels) {
//Width and height
var w = 880;
var h = 370;
var padding = 40;
var div, svg; // div and svg elements for this graph
var clrs = d3.scale.category10();
// Define axis ranges & scales
var xExtents = d3.extent(d3.merge(dataset), function (d) { return d.time; });
var yExtents = d3.extent(d3.merge(dataset), function (d) { return d.val; });
var xScale = d3.time.scale()
.domain([xExtents[0], xExtents[1]])
.range([padding, w - padding * 2]);
var yScale = d3.scale.linear()
.domain([(yExtents[0] > 0) ? 0 : yExtents[0], yExtents[1] * 1.1])
.range([h - padding, padding]);
// Define line
var line = d3.svg.line()
.interpolate('basis')
.x(function (d) { return xScale(d.time); })
.y(function (d) { return yScale(d.val); })
//Define X axis
var xAxis = d3.svg.axis()
.scale(xScale)
.orient("bottom")
.ticks(5);
//Define Y axis
var format_y = d3.format(".2s");
var yAxis = d3.svg.axis()
.scale(yScale)
.orient("left")
.ticks(5)
.tickFormat(function(d) { return format_y(d); });
// Grid functions
function make_x_axis() {
return d3.svg.axis()
.scale(xScale)
.orient("bottom")
.ticks(5);
}
function make_y_axis() {
return d3.svg.axis()
.scale(yScale)
.orient("left")
.ticks(5);
}
svg = d3.select("#" + res_id +" svg")
// Render the data
d3.transition().duration(1250).each(function(){
var pathContainers = svg.selectAll('g.line')
.data(dataset);
pathContainers.enter()
.append('g')
.attr('class', function(d, i) { return 'line ' + labels[i]; })
.attr("style", function(d, i) { return 'stroke: ' + clrs(i); });
pathContainers.exit()
.remove();
var path = pathContainers.selectAll('path')
.data(function (d) { return [d]; }); // continues the data from the pathContainer
path.attr('d', line);
path.enter()
.append('path')
.attr('d', line);
path.exit()
.remove();
pathContainers.selectAll('path')
.data(function (d) { return [d]; }) // continues the data from the pathContainer
.exit()
.remove();
// Update the grid
svg.select(".x.grid")
.call(make_x_axis()
.tickSize(-(h - padding * 2), 0, 0)
.tickFormat("")
);
svg.select(".y.grid")
.call(make_y_axis()
.tickSize(-(w - padding * 3), 0, 0)
.tickFormat("")
);
// Update the axis
svg.select(".x.axis")
.call(xAxis);
svg.select(".y.axis")
.call(yAxis);
});
}
function initialiseGraph(title, dataset, res_id, labels) {
//Width and height
var w = 880;
var h = 370;
var padding = 40;
var div, svg; // div and svg elements for this graph
var clrs = d3.scale.category10();
// Define axis ranges & scales
var xExtents = d3.extent(d3.merge(dataset), function (d) { return d.time; });
var yExtents = d3.extent(d3.merge(dataset), function (d) { return d.val; });
var xScale = d3.time.scale()
.domain([xExtents[0], xExtents[1]])
.range([padding, w - padding * 2]);
var yScale = d3.scale.linear()
.domain([(yExtents[0] > 0) ? 0 : yExtents[0], yExtents[1] * 1.1])
.range([h - padding, padding]);
// Define line
var line = d3.svg.line()
.interpolate('basis')
.x(function (d) { return xScale(d.time); })
.y(function (d) { return yScale(d.val); })
//Define X axis
var xAxis = d3.svg.axis()
.scale(xScale)
.orient("bottom")
.ticks(5);
//Define Y axis
var format_y = d3.format(".2s");
var yAxis = d3.svg.axis()
.scale(yScale)
.orient("left")
.ticks(5)
.tickFormat(function(d) { return format_y(d); });
// Grid functions
function make_x_axis() {
return d3.svg.axis()
.scale(xScale)
.orient("bottom")
.ticks(5);
}
function make_y_axis() {
return d3.svg.axis()
.scale(yScale)
.orient("left")
.ticks(5);
}
// Add the DIV for the SVG element
div = d3.select("#chart")
.append("div")
.attr("id", res_id);
// Create SVG element
svg = div
.append("svg")
.attr("width", w)
.attr("height", h);
// Draw the grid
svg.append("g")
.attr("class", "x grid")
.attr("transform", "translate(0," + (h - padding) + ")")
.call(make_x_axis()
.tickSize(-(h - padding * 2), 0, 0)
.tickFormat("")
);
svg.append("g")
.attr("class", "y grid")
.attr("transform", "translate(" + padding +",0)")
.call(make_y_axis()
.tickSize(-(w - padding * 3), 0, 0)
.tickFormat("")
);
//Add X axis
svg.append("g")
.attr("class", "x axis")
.attr("transform", "translate(0," + (h - padding) + ")")
.call(xAxis);
//Add Y axis
svg.append("g")
.attr("class", "y axis")
.attr("transform", "translate(" + padding + ",0)")
.call(yAxis);
// Add title
svg.append("svg:text")
.attr("class", "chart-title")
.attr("x", (w / 2))
.attr("y", (padding / 2))
.attr("text-anchor", "middle")
.text(title);
// add legend
var legend = svg.append("g")
.attr("class", "legend")
.attr("height", 100)
.attr("width", 100)
.attr('transform', 'translate(-10,50)');
legend.selectAll('rect')
.data(dataset)
.enter()
.append("rect")
.attr("x", w - 65)
.attr("y", function(d, i){ return i * 20;})
.attr("width", 10)
.attr("height", 10)
.style("fill", function(d, i) { return clrs(i); });
legend.selectAll('text')
.data(dataset)
.enter()
.append("text")
.attr("x", w - 52)
.attr("y", function(d, i){ return i * 20 + 9;})
.text(function(d, i) { return labels[i]; });
}
</script>
</body>
</html>
.plot {
fill: rgba(250, 250, 255, 0.6);
}
.grid .tick {
stroke: lightgrey;
opacity: 0.7;
shape-rendering: crispEdges;
}
.grid path {
stroke-width: 0;
}
.axis path, .axis line {
fill: none;
stroke: #000;
shape-rendering: crispEdges;
}
.x.axis path {
display: none;
}
.line {
fill: none;
stroke-width: 2.5px;
stroke-opacity: 0.65;
}
#usage .line {
stroke-width: 4px;
}
.line.in {
stroke-width: 2.5px;
}
.line.out {
stroke-width: 0.75px;
}
.area {
stroke-width: 0;
opacity: 0.65;
}
.area {
fill: lightred;
}
.chart-title {
text-transform: capitalize;
}
// Data in same format as javascriptrrd delivers
dataset2 = [
[
{
"time":1410048000000,
"val":2182257289.448362
},
{
"time":1410134400000,
"val":1693164286.4698827
},
{
"time":1410220800000,
"val":0
},
{
"time":1410307200000,
"val":267777106.4830405
},
{
"time":1410393600000,
"val":877137983.3012608
},
{
"time":1410480000000,
"val":1170355204.8265276
},
{
"time":1410566400000,
"val":2236323408.7122583
},
{
"time":1410652800000,
"val":3464282939.5505056
},
{
"time":1410739200000,
"val":3872946934.6443024
},
{
"time":1410825600000,
"val":4362078979.983146
},
{
"time":1410912000000,
"val":5046703739.626564
},
{
"time":1410998400000,
"val":5792853446.137399
},
{
"time":1411084800000,
"val":7047588649.656401
},
{
"time":1411171200000,
"val":7966338586.003215
},
{
"time":1411257600000,
"val":8493581118.435952
},
{
"time":1411344000000,
"val":8735462994
},
{
"time":1411430400000,
"val":8735462994
},
{
"time":1411516800000,
"val":8735462994
},
{
"time":1411603200000,
"val":8837626921.294561
},
{
"time":1411689600000,
"val":8973142716.210575
},
{
"time":1411776000000,
"val":9017263393
},
{
"time":1411862400000,
"val":9017263393
},
{
"time":1411948800000,
"val":9017263393
},
{
"time":1412035200000,
"val":9017263393
},
{
"time":1412121600000,
"val":9017263393
},
{
"time":1412208000000,
"val":9017263393
},
{
"time":1412294400000,
"val":9017263393
},
{
"time":1412380800000,
"val":9017263393
},
{
"time":1412467200000,
"val":9321485108.784147
},
{
"time":1412553600000,
"val":11529203483.672947
},
{
"time":1412640000000,
"val":12441170381.529055
},
{
"time":1412726400000,
"val":7481386735.61005
},
{
"time":1412812800000,
"val":638538649.8507408
},
{
"time":1412899200000,
"val":1369151620.5813909
},
{
"time":1412985600000,
"val":1847012959.4518697
},
{
"time":1413072000000,
"val":3064666577.0655212
},
{
"time":1413158400000,
"val":8278028275.065669
},
{
"time":1413244800000,
"val":10262671185.892187
},
{
"time":1413331200000,
"val":10754671351.605291
},
{
"time":1413417600000,
"val":11413418008.237617
},
{
"time":1413504000000,
"val":12585022798.494478
},
{
"time":1413590400000,
"val":13374764886.99059
},
{
"time":1413676800000,
"val":13569675682.700798
},
{
"time":1413763200000,
"val":13710682116.66351
},
{
"time":1413849600000,
"val":14282491571.968079
},
{
"time":1413936000000,
"val":14946531520.114578
},
{
"time":1414022400000,
"val":17718229711.17844
},
{
"time":1414108800000,
"val":19629887284.041344
},
{
"time":1414195200000,
"val":20504577600.25255
},
{
"time":1414281600000,
"val":21201039691.630257
},
{
"time":1414368000000,
"val":21630430578.334976
},
{
"time":1414454400000,
"val":22099793101.15366
},
{
"time":1414540800000,
"val":22285739468.281345
},
{
"time":1414627200000,
"val":22818438174.19404
},
{
"time":1414713600000,
"val":23185646540.911285
},
{
"time":1414800000000,
"val":23424663536.895744
},
{
"time":1414886400000,
"val":23960178443.351734
},
{
"time":1414972800000,
"val":25300164389.837162
},
{
"time":1415059200000,
"val":26813543690.35698
},
{
"time":1415145600000,
"val":27722381641.068928
},
{
"time":1415318400000,
"val":29848533219.196163
},
{
"time":1415404800000,
"val":17489055065.902737
},
{
"time":1415491200000,
"val":0
},
{
"time":1415577600000,
"val":142730482.40914348
},
{
"time":1415664000000,
"val":1296776391.474978
},
{
"time":1415750400000,
"val":2248327796.6737175
},
{
"time":1415836800000,
"val":3574052883.9308295
},
{
"time":1415923200000,
"val":5916877766.6348095
},
{
"time":1416009600000,
"val":7163924079.977285
},
{
"time":1416096000000,
"val":8387727371.975952
},
{
"time":1416182400000,
"val":9118105670.54057
},
{
"time":1416268800000,
"val":9870719383.481924
},
{
"time":1416355200000,
"val":10516793191.857775
},
{
"time":1416441600000,
"val":11538271348.27063
},
{
"time":1416528000000,
"val":12740892770.360489
},
{
"time":1416614400000,
"val":13529359397.290983
},
{
"time":1416700800000,
"val":14333532266.028059
},
{
"time":1416787200000,
"val":15796849326.399288
},
{
"time":1416873600000,
"val":16780395005.031868
},
{
"time":1416960000000,
"val":17743447102.804134
},
{
"time":1417046400000,
"val":19150134745.188763
},
{
"time":1417132800000,
"val":20564639567.772907
},
{
"time":1417219200000,
"val":25300982499.449905
},
{
"time":1417305600000,
"val":27017800545.586422
},
{
"time":1417392000000,
"val":28142934223.478054
},
{
"time":1417478400000,
"val":28578491482.568226
},
{
"time":1417564800000,
"val":29244712531.378178
},
{
"time":1417651200000,
"val":29919481121.773758
},
{
"time":1417737600000,
"val":29713805197.027298
},
{
"time":1417824000000,
"val":28799414674.12777
},
{
"time":1417910400000,
"val":29326446527.74354
},
{
"time":1417996800000,
"val":17362270273.839928
},
{
"time":1418083200000,
"val":237667858.70984313
},
{
"time":1418169600000,
"val":1154500448.3724654
},
{
"time":1418256000000,
"val":1813177020.9741616
},
{
"time":1418342400000,
"val":2022905675.9276996
},
{
"time":1418428800000,
"val":2827070254.741576
},
{
"time":1418515200000,
"val":4296516097.607684
},
{
"time":1418601600000,
"val":4552826280.191635
},
{
"time":1418688000000,
"val":4553393597
},
{
"time":1418774400000,
"val":4553372895.499958
},
{
"time":1418860800000,
"val":4553393597
},
{
"time":1418947200000,
"val":4553393597
},
{
"time":1419033600000,
"val":4553393597
},
{
"time":1419120000000,
"val":4553393597
},
{
"time":1419206400000,
"val":4553393597
},
{
"time":1419292800000,
"val":4553393597
},
{
"time":1419379200000,
"val":4553393597
},
{
"time":1419465600000,
"val":4553393597
},
{
"time":1419552000000,
"val":4553393597
},
{
"time":1419638400000,
"val":4553393597
},
{
"time":1419724800000,
"val":4553393597
},
{
"time":1419811200000,
"val":4553393597
},
{
"time":1419897600000,
"val":4553393597
},
{
"time":1419984000000,
"val":4553393597
},
{
"time":1420070400000,
"val":4553393597
},
{
"time":1420156800000,
"val":4553393597
},
{
"time":1420243200000,
"val":4553393597
},
{
"time":1420329600000,
"val":4553393597
},
{
"time":1420416000000,
"val":4553393597
},
{
"time":1420502400000,
"val":4553393597
},
{
"time":1420588800000,
"val":4553393597
},
{
"time":1420675200000,
"val":2642924122.960033
},
{
"time":1420761600000,
"val":0
},
{
"time":1420848000000,
"val":0
},
{
"time":1420934400000,
"val":1895988811.023718
},
{
"time":1421020800000,
"val":3121491465.333223
},
{
"time":1421107200000,
"val":3289670725.7352843
},
{
"time":1421193600000,
"val":3697288145.199413
}
],
[
{
"time":1410048000000,
"val":1600071082.4768825
},
{
"time":1410134400000,
"val":1243405427.1394928
},
{
"time":1410220800000,
"val":0
},
{
"time":1410307200000,
"val":435997792.7251654
},
{
"time":1410393600000,
"val":1743548937.4684386
},
{
"time":1410480000000,
"val":3023134554.48205
},
{
"time":1410566400000,
"val":4806876377.598467
},
{
"time":1410652800000,
"val":6427274603.6541605
},
{
"time":1410739200000,
"val":7444409750.599968
},
{
"time":1410825600000,
"val":8392654197.790853
},
{
"time":1410912000000,
"val":9198789670.07292
},
{
"time":1410998400000,
"val":10253962564.7669
},
{
"time":1411084800000,
"val":13088398789.033085
},
{
"time":1411171200000,
"val":14485691697.72757
},
{
"time":1411257600000,
"val":16216024336.023123
},
{
"time":1411344000000,
"val":16729423327.368282
},
{
"time":1411430400000,
"val":16729425409
},
{
"time":1411516800000,
"val":16729425409
},
{
"time":1411603200000,
"val":16810958973.167751
},
{
"time":1411689600000,
"val":16922547267.107126
},
{
"time":1411776000000,
"val":16924161964
},
{
"time":1411862400000,
"val":16924161964
},
{
"time":1411948800000,
"val":16924161964
},
{
"time":1412035200000,
"val":16924161964
},
{
"time":1412121600000,
"val":16924161964
},
{
"time":1412208000000,
"val":16924161964
},
{
"time":1412294400000,
"val":16924161964
},
{
"time":1412380800000,
"val":16924161964
},
{
"time":1412467200000,
"val":17151143563.369066
},
{
"time":1412553600000,
"val":18787059465.603355
},
{
"time":1412640000000,
"val":20133697392.52834
},
{
"time":1412726400000,
"val":12162439765.694681
},
{
"time":1412812800000,
"val":474054099.64694667
},
{
"time":1412899200000,
"val":1429118421.693579
},
{
"time":1412985600000,
"val":3260214432.1079865
},
{
"time":1413072000000,
"val":5198619997.196583
},
{
"time":1413158400000,
"val":7221257232.354597
},
{
"time":1413244800000,
"val":8510795366.039144
},
{
"time":1413331200000,
"val":9634337290.253569
},
{
"time":1413417600000,
"val":11100408969.932701
},
{
"time":1413504000000,
"val":12400015010.44343
},
{
"time":1413590400000,
"val":13747603735.989742
},
{
"time":1413676800000,
"val":14134898440.217026
},
{
"time":1413763200000,
"val":14246108282.043848
},
{
"time":1413849600000,
"val":21308676409.8331
},
{
"time":1413936000000,
"val":23255445470.720432
},
{
"time":1414022400000,
"val":23793933277.766586
},
{
"time":1414108800000,
"val":25194278061.56361
},
{
"time":1414195200000,
"val":26920518475.94258
},
{
"time":1414281600000,
"val":29197282984.87151
},
{
"time":1414368000000,
"val":30050693793.97372
},
{
"time":1414454400000,
"val":30053161111.921383
},
{
"time":1414540800000,
"val":30753723479.813877
},
{
"time":1414627200000,
"val":31813778089.89407
},
{
"time":1414713600000,
"val":32292567339.889908
},
{
"time":1414800000000,
"val":32969072245.31694
},
{
"time":1414886400000,
"val":33991977896.01953
},
{
"time":1414972800000,
"val":36468065420.754364
},
{
"time":1415059200000,
"val":38942288560.64859
},
{
"time":1415145600000,
"val":39864033505.11747
},
{
"time":1415318400000,
"val":40524311715.59005
},
{
"time":1415404800000,
"val":23798662182.4445
},
{
"time":1415491200000,
"val":0
},
{
"time":1415577600000,
"val":87265425.75264402
},
{
"time":1415664000000,
"val":394449417.57188535
},
{
"time":1415750400000,
"val":2579030977.616787
},
{
"time":1415836800000,
"val":4127965476.1018195
},
{
"time":1415923200000,
"val":26857076775.766705
},
{
"time":1416009600000,
"val":42512065905.22852
},
{
"time":1416096000000,
"val":42554009060.27312
},
{
"time":1416182400000,
"val":42893884858.72848
},
{
"time":1416268800000,
"val":43053945293.82698
},
{
"time":1416355200000,
"val":43452915526.49988
},
{
"time":1416441600000,
"val":44297062936.70434
},
{
"time":1416528000000,
"val":45269537547.36063
},
{
"time":1416614400000,
"val":47027522127.20232
},
{
"time":1416700800000,
"val":49509622085.4122
},
{
"time":1416787200000,
"val":50911793733.62918
},
{
"time":1416873600000,
"val":51191231378.82359
},
{
"time":1416960000000,
"val":52261175922.16021
},
{
"time":1417046400000,
"val":53309091193.314674
},
{
"time":1417132800000,
"val":54208723838.80387
},
{
"time":1417219200000,
"val":56067013599.45534
},
{
"time":1417305600000,
"val":56935294952.4765
},
{
"time":1417392000000,
"val":57321406950.22722
},
{
"time":1417478400000,
"val":57797188079.803604
},
{
"time":1417564800000,
"val":58567120501.39107
},
{
"time":1417651200000,
"val":59423857715.8958
},
{
"time":1417737600000,
"val":59511086503.12673
},
{
"time":1417824000000,
"val":57898298657.14822
},
{
"time":1417910400000,
"val":58176229065.260284
},
{
"time":1417996800000,
"val":34024452410.992275
},
{
"time":1418083200000,
"val":345512559.12337554
},
{
"time":1418169600000,
"val":162990429.70746335
},
{
"time":1418256000000,
"val":448193921.7727449
},
{
"time":1418342400000,
"val":784025372.7378744
},
{
"time":1418428800000,
"val":1131382812.8407202
},
{
"time":1418515200000,
"val":4043158704.381603
},
{
"time":1418601600000,
"val":5516695264
},
{
"time":1418688000000,
"val":5516695264
},
{
"time":1418774400000,
"val":5516670182.955543
},
{
"time":1418860800000,
"val":5516695264
},
{
"time":1418947200000,
"val":5516695264
},
{
"time":1419033600000,
"val":5516695264
},
{
"time":1419120000000,
"val":5516695264
},
{
"time":1419206400000,
"val":5516695264
},
{
"time":1419292800000,
"val":5516695264
},
{
"time":1419379200000,
"val":5516695264
},
{
"time":1419465600000,
"val":5516695264
},
{
"time":1419552000000,
"val":5516695264
},
{
"time":1419638400000,
"val":5516695264
},
{
"time":1419724800000,
"val":5516695264
},
{
"time":1419811200000,
"val":5516695264
},
{
"time":1419897600000,
"val":5516695264
},
{
"time":1419984000000,
"val":5516695264
},
{
"time":1420070400000,
"val":5516695264
},
{
"time":1420156800000,
"val":5516695264
},
{
"time":1420243200000,
"val":5516695264
},
{
"time":1420329600000,
"val":5516695264
},
{
"time":1420416000000,
"val":5516695264
},
{
"time":1420502400000,
"val":5516695264
},
{
"time":1420588800000,
"val":5516695264
},
{
"time":1420675200000,
"val":3202052860.497525
},
{
"time":1420761600000,
"val":0
},
{
"time":1420848000000,
"val":0
},
{
"time":1420934400000,
"val":38678221.8390924
},
{
"time":1421020800000,
"val":380176080.0611793
},
{
"time":1421107200000,
"val":15900581586.948984
},
{
"time":1421193600000,
"val":18883592199.70106
}
]
];
// Data in same format as javascriptrrd delivers
dataset1 = [
[
{
"time":1420592400000,
"val":4553393597
},
{
"time":1420596000000,
"val":4553393597
},
{
"time":1420599600000,
"val":4553393597
},
{
"time":1420603200000,
"val":4553393597
},
{
"time":1420606800000,
"val":4553393597
},
{
"time":1420610400000,
"val":4553393597
},
{
"time":1420614000000,
"val":4552342935.459873
},
{
"time":1420617600000,
"val":4553393597
},
{
"time":1420621200000,
"val":4553393597
},
{
"time":1420624800000,
"val":4553393597
},
{
"time":1420628400000,
"val":4553393597
},
{
"time":1420632000000,
"val":4553393597
},
{
"time":1420635600000,
"val":4553393597
},
{
"time":1420639200000,
"val":4553393597
},
{
"time":1420642800000,
"val":2043278.4592337871
},
{
"time":1420646400000,
"val":0
},
{
"time":1420650000000,
"val":0
},
{
"time":1420653600000,
"val":0
},
{
"time":1420657200000,
"val":0
},
{
"time":1420660800000,
"val":0
},
{
"time":1420664400000,
"val":0
},
{
"time":1420668000000,
"val":0
},
{
"time":1420671600000,
"val":0
},
{
"time":1420675200000,
"val":0
},
{
"time":1420678800000,
"val":0
},
{
"time":1420682400000,
"val":0
},
{
"time":1420686000000,
"val":0
},
{
"time":1420689600000,
"val":0
},
{
"time":1420693200000,
"val":0
},
{
"time":1420696800000,
"val":0
},
{
"time":1420700400000,
"val":0
},
{
"time":1420704000000,
"val":0
},
{
"time":1420707600000,
"val":0
},
{
"time":1420711200000,
"val":0
},
{
"time":1420714800000,
"val":0
},
{
"time":1420718400000,
"val":0
},
{
"time":1420722000000,
"val":0
},
{
"time":1420725600000,
"val":0
},
{
"time":1420729200000,
"val":0
},
{
"time":1420732800000,
"val":0
},
{
"time":1420736400000,
"val":0
},
{
"time":1420740000000,
"val":0
},
{
"time":1420743600000,
"val":0
},
{
"time":1420747200000,
"val":0
},
{
"time":1420750800000,
"val":0
},
{
"time":1420754400000,
"val":0
},
{
"time":1420758000000,
"val":0
},
{
"time":1420761600000,
"val":0
},
{
"time":1420765200000,
"val":0
},
{
"time":1420768800000,
"val":0
},
{
"time":1420772400000,
"val":0
},
{
"time":1420776000000,
"val":0
},
{
"time":1420779600000,
"val":0
},
{
"time":1420783200000,
"val":0
},
{
"time":1420786800000,
"val":0
},
{
"time":1420790400000,
"val":0
},
{
"time":1420794000000,
"val":0
},
{
"time":1420797600000,
"val":0
},
{
"time":1420801200000,
"val":0
},
{
"time":1420804800000,
"val":0
},
{
"time":1420808400000,
"val":0
},
{
"time":1420812000000,
"val":0
},
{
"time":1420815600000,
"val":0
},
{
"time":1420819200000,
"val":0
},
{
"time":1420822800000,
"val":0
},
{
"time":1420826400000,
"val":0
},
{
"time":1420830000000,
"val":0
},
{
"time":1420833600000,
"val":0
},
{
"time":1420837200000,
"val":0
},
{
"time":1420840800000,
"val":0
},
{
"time":1420844400000,
"val":0
},
{
"time":1420848000000,
"val":0
},
{
"time":1420851600000,
"val":0
},
{
"time":1420855200000,
"val":0
},
{
"time":1420858800000,
"val":0
},
{
"time":1420862400000,
"val":0
},
{
"time":1420866000000,
"val":0
},
{
"time":1420869600000,
"val":0
},
{
"time":1420873200000,
"val":38833200.285134725
},
{
"time":1420876800000,
"val":1128919474.64482
},
{
"time":1420880400000,
"val":2221808511.8818736
},
{
"time":1420884000000,
"val":2372606429.7447433
},
{
"time":1420887600000,
"val":2417225998.0964727
},
{
"time":1420891200000,
"val":2711049113.9161906
},
{
"time":1420894800000,
"val":2884440728
},
{
"time":1420898400000,
"val":2884440728
},
{
"time":1420902000000,
"val":2884440728
},
{
"time":1420905600000,
"val":2884440728
},
{
"time":1420909200000,
"val":2884440728
},
{
"time":1420912800000,
"val":2884440728
},
{
"time":1420916400000,
"val":2884440728
},
{
"time":1420920000000,
"val":2884440728
},
{
"time":1420923600000,
"val":2884440728
},
{
"time":1420927200000,
"val":2884440728
},
{
"time":1420930800000,
"val":2884440728
},
{
"time":1420934400000,
"val":2884440728
},
{
"time":1420938000000,
"val":2884440728
},
{
"time":1420941600000,
"val":2884440728
},
{
"time":1420945200000,
"val":2884440728
},
{
"time":1420948800000,
"val":2884440728
},
{
"time":1420952400000,
"val":2884440728
},
{
"time":1420956000000,
"val":2884440728
},
{
"time":1420959600000,
"val":2884440728
},
{
"time":1420963200000,
"val":2884440728
},
{
"time":1420966800000,
"val":2884440728
},
{
"time":1420970400000,
"val":2944710194.2576537
},
{
"time":1420974000000,
"val":3253487807.995205
},
{
"time":1420977600000,
"val":3281469387.613556
},
{
"time":1420981200000,
"val":3289651427.1309304
},
{
"time":1420984800000,
"val":3289682709
},
{
"time":1420988400000,
"val":3289682709
},
{
"time":1420992000000,
"val":3289682709
},
{
"time":1420995600000,
"val":3289682709
},
{
"time":1420999200000,
"val":3289682709
},
{
"time":1421002800000,
"val":3289682709
},
{
"time":1421006400000,
"val":3289682709
},
{
"time":1421010000000,
"val":3289682709
},
{
"time":1421013600000,
"val":3289682709
},
{
"time":1421017200000,
"val":3289682709
},
{
"time":1421020800000,
"val":3289682709
},
{
"time":1421024400000,
"val":3289682709
},
{
"time":1421028000000,
"val":3289682709
},
{
"time":1421031600000,
"val":3289682709
},
{
"time":1421042400000,
"val":3289366350.811511
},
{
"time":1421046000000,
"val":3289682709
},
{
"time":1421049600000,
"val":3289682709
},
{
"time":1421053200000,
"val":3289682709
},
{
"time":1421056800000,
"val":3289682709
},
{
"time":1421060400000,
"val":3289682709
},
{
"time":1421064000000,
"val":3289682709
},
{
"time":1421067600000,
"val":3289682709
},
{
"time":1421071200000,
"val":3289682709
},
{
"time":1421074800000,
"val":3289682709
},
{
"time":1421078400000,
"val":3289682709
},
{
"time":1421082000000,
"val":3289682709
},
{
"time":1421085600000,
"val":3289682709
},
{
"time":1421089200000,
"val":3289682709
},
{
"time":1421092800000,
"val":3289682709
},
{
"time":1421096400000,
"val":3289682709
},
{
"time":1421100000000,
"val":3289682709
},
{
"time":1421103600000,
"val":3289682709
},
{
"time":1421107200000,
"val":3289682709
},
{
"time":1421110800000,
"val":3289682709
},
{
"time":1421114400000,
"val":3289682709
},
{
"time":1421118000000,
"val":3289682709
},
{
"time":1421121600000,
"val":3289693340.853489
},
{
"time":1421125200000,
"val":3291344432.319971
},
{
"time":1421128800000,
"val":3301695371.5620933
},
{
"time":1421132400000,
"val":3302774291.2419567
},
{
"time":1421136000000,
"val":3327220578.04019
},
{
"time":1421139600000,
"val":3479183796.349478
},
{
"time":1421143200000,
"val":3595430778.438393
},
{
"time":1421146800000,
"val":3634622790.734979
},
{
"time":1421150400000,
"val":3704054034.3636765
},
{
"time":1421154000000,
"val":3921403930.3606915
},
{
"time":1421157600000,
"val":3969217252.1538663
},
{
"time":1421161200000,
"val":3974254459.699306
},
{
"time":1421164800000,
"val":3978826280.4143524
},
{
"time":1421168400000,
"val":3978851038.5015583
},
{
"time":1421172000000,
"val":3980767930.3108997
},
{
"time":1421175600000,
"val":3988445536.364836
},
{
"time":1421179200000,
"val":4001522836.7335267
},
{
"time":1421182800000,
"val":4016787223.904762
},
{
"time":1421186400000,
"val":4030540373.843023
},
{
"time":1421190000000,
"val":4043472971.5485935
},
{
"time":1421193600000,
"val":4055758110.046295
}
],
[
{
"time":1420592400000,
"val":5516695264
},
{
"time":1420596000000,
"val":5516695264
},
{
"time":1420599600000,
"val":5516695264
},
{
"time":1420603200000,
"val":5516695264
},
{
"time":1420606800000,
"val":5516695264
},
{
"time":1420610400000,
"val":5516695264
},
{
"time":1420614000000,
"val":5515422327.799996
},
{
"time":1420617600000,
"val":5516695264
},
{
"time":1420621200000,
"val":5516695264
},
{
"time":1420624800000,
"val":5516695264
},
{
"time":1420628400000,
"val":5516695264
},
{
"time":1420632000000,
"val":5516695264
},
{
"time":1420635600000,
"val":5516695264
},
{
"time":1420639200000,
"val":5516695264
},
{
"time":1420642800000,
"val":2475548.0410292
},
{
"time":1420646400000,
"val":0
},
{
"time":1420650000000,
"val":0
},
{
"time":1420653600000,
"val":0
},
{
"time":1420657200000,
"val":0
},
{
"time":1420660800000,
"val":0
},
{
"time":1420664400000,
"val":0
},
{
"time":1420668000000,
"val":0
},
{
"time":1420671600000,
"val":0
},
{
"time":1420675200000,
"val":0
},
{
"time":1420678800000,
"val":0
},
{
"time":1420682400000,
"val":0
},
{
"time":1420686000000,
"val":0
},
{
"time":1420689600000,
"val":0
},
{
"time":1420693200000,
"val":0
},
{
"time":1420696800000,
"val":0
},
{
"time":1420700400000,
"val":0
},
{
"time":1420704000000,
"val":0
},
{
"time":1420707600000,
"val":0
},
{
"time":1420711200000,
"val":0
},
{
"time":1420714800000,
"val":0
},
{
"time":1420718400000,
"val":0
},
{
"time":1420722000000,
"val":0
},
{
"time":1420725600000,
"val":0
},
{
"time":1420729200000,
"val":0
},
{
"time":1420732800000,
"val":0
},
{
"time":1420736400000,
"val":0
},
{
"time":1420740000000,
"val":0
},
{
"time":1420743600000,
"val":0
},
{
"time":1420747200000,
"val":0
},
{
"time":1420750800000,
"val":0
},
{
"time":1420754400000,
"val":0
},
{
"time":1420758000000,
"val":0
},
{
"time":1420761600000,
"val":0
},
{
"time":1420765200000,
"val":0
},
{
"time":1420768800000,
"val":0
},
{
"time":1420772400000,
"val":0
},
{
"time":1420776000000,
"val":0
},
{
"time":1420779600000,
"val":0
},
{
"time":1420783200000,
"val":0
},
{
"time":1420786800000,
"val":0
},
{
"time":1420790400000,
"val":0
},
{
"time":1420794000000,
"val":0
},
{
"time":1420797600000,
"val":0
},
{
"time":1420801200000,
"val":0
},
{
"time":1420804800000,
"val":0
},
{
"time":1420808400000,
"val":0
},
{
"time":1420812000000,
"val":0
},
{
"time":1420815600000,
"val":0
},
{
"time":1420819200000,
"val":0
},
{
"time":1420822800000,
"val":0
},
{
"time":1420826400000,
"val":0
},
{
"time":1420830000000,
"val":0
},
{
"time":1420833600000,
"val":0
},
{
"time":1420837200000,
"val":0
},
{
"time":1420840800000,
"val":0
},
{
"time":1420844400000,
"val":0
},
{
"time":1420848000000,
"val":0
},
{
"time":1420851600000,
"val":0
},
{
"time":1420855200000,
"val":0
},
{
"time":1420858800000,
"val":0
},
{
"time":1420862400000,
"val":2290045.2981414837
},
{
"time":1420866000000,
"val":31379231.918010484
},
{
"time":1420869600000,
"val":31955748.054652292
},
{
"time":1420873200000,
"val":32045456.48610589
},
{
"time":1420876800000,
"val":32069169
},
{
"time":1420880400000,
"val":32069169
},
{
"time":1420884000000,
"val":32069169
},
{
"time":1420887600000,
"val":32422164.271705274
},
{
"time":1420891200000,
"val":42950804.61588005
},
{
"time":1420894800000,
"val":51489958.599485636
},
{
"time":1420898400000,
"val":55059317.74016415
},
{
"time":1420902000000,
"val":55108595.88007524
},
{
"time":1420905600000,
"val":55126798.49653501
},
{
"time":1420909200000,
"val":55127219
},
{
"time":1420912800000,
"val":55134328.007686175
},
{
"time":1420916400000,
"val":55240233.31606573
},
{
"time":1420920000000,
"val":55280465.434673995
},
{
"time":1420923600000,
"val":55312992.82846794
},
{
"time":1420927200000,
"val":55342960.00290289
},
{
"time":1420930800000,
"val":55370318.187665366
},
{
"time":1420934400000,
"val":55433179
},
{
"time":1420938000000,
"val":57363425.90178978
},
{
"time":1420941600000,
"val":58871222
},
{
"time":1420945200000,
"val":58871222
},
{
"time":1420948800000,
"val":67249423.66304189
},
{
"time":1420952400000,
"val":263085802.35789955
},
{
"time":1420956000000,
"val":290207508.6637055
},
{
"time":1420959600000,
"val":290493335.39677954
},
{
"time":1420963200000,
"val":291318652.71391565
},
{
"time":1420966800000,
"val":350351110.12876946
},
{
"time":1420970400000,
"val":377725754.9044301
},
{
"time":1420974000000,
"val":381690884.82679063
},
{
"time":1420977600000,
"val":386246806.8902355
},
{
"time":1420981200000,
"val":413451455.5391504
},
{
"time":1420984800000,
"val":517783388.3655811
},
{
"time":1420988400000,
"val":526377919
},
{
"time":1420992000000,
"val":526377919
},
{
"time":1420995600000,
"val":526377919
},
{
"time":1420999200000,
"val":526380966.0644981
},
{
"time":1421002800000,
"val":526506717.01939124
},
{
"time":1421006400000,
"val":526552502
},
{
"time":1421010000000,
"val":526567548.34527534
},
{
"time":1421013600000,
"val":526594473.8227217
},
{
"time":1421017200000,
"val":542280123.481305
},
{
"time":1421020800000,
"val":565499840.3830191
},
{
"time":1421024400000,
"val":565505779
},
{
"time":1421028000000,
"val":565716046.5297639
},
{
"time":1421031600000,
"val":1446889822.4456167
},
{
"time":1421042400000,
"val":18232400873.55613
},
{
"time":1421046000000,
"val":18301172317.978954
},
{
"time":1421049600000,
"val":18369471791.465588
},
{
"time":1421053200000,
"val":18382168103.124786
},
{
"time":1421056800000,
"val":18382168125
},
{
"time":1421060400000,
"val":18382181924.235607
},
{
"time":1421064000000,
"val":18382201287
},
{
"time":1421067600000,
"val":18382201287
},
{
"time":1421071200000,
"val":18385280985.475307
},
{
"time":1421074800000,
"val":18429439913.9669
},
{
"time":1421078400000,
"val":18437713107.652103
},
{
"time":1421082000000,
"val":18437814810.90864
},
{
"time":1421085600000,
"val":18437904626.152515
},
{
"time":1421089200000,
"val":18438086981.492855
},
{
"time":1421092800000,
"val":18438193997.221355
},
{
"time":1421096400000,
"val":18453185682.617214
},
{
"time":1421100000000,
"val":18456319175.505222
},
{
"time":1421103600000,
"val":18457440379.565662
},
{
"time":1421107200000,
"val":18458322845.27425
},
{
"time":1421110800000,
"val":18458488146.158154
},
{
"time":1421114400000,
"val":18458588886.16855
},
{
"time":1421118000000,
"val":18470354214.199554
},
{
"time":1421121600000,
"val":18670411059.174633
},
{
"time":1421125200000,
"val":18872623508.966686
},
{
"time":1421128800000,
"val":18940901296.652893
},
{
"time":1421132400000,
"val":18941437721.754684
},
{
"time":1421136000000,
"val":18942153105.84707
},
{
"time":1421139600000,
"val":18943392898.910503
},
{
"time":1421143200000,
"val":18945512820.63654
},
{
"time":1421146800000,
"val":18945805628.11215
},
{
"time":1421150400000,
"val":18949235931.902485
},
{
"time":1421154000000,
"val":18964884992.34394
},
{
"time":1421157600000,
"val":18972377043.272503
},
{
"time":1421161200000,
"val":18972527023.638035
},
{
"time":1421164800000,
"val":18972688865.534706
},
{
"time":1421168400000,
"val":18972741666.287167
},
{
"time":1421172000000,
"val":18972742617
},
{
"time":1421175600000,
"val":18972814685.066784
},
{
"time":1421179200000,
"val":18972831679
},
{
"time":1421182800000,
"val":18972831679
},
{
"time":1421186400000,
"val":18973357986.30493
},
{
"time":1421190000000,
"val":18973750391.893482
},
{
"time":1421193600000,
"val":18973758945
}
]
];
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment