{
var mt = new ql.MersenneTwisterUniformRng().init1(42);
var margin = {top: 20, right: 20, bottom: 30, left: 40},
width = 500 - margin.left - margin.right,
height = 500 - margin.top - margin.bottom;
const svg = d3.select(DOM.svg(width + margin.left + margin.right,
height + margin.top + margin.bottom))
.attr("transform", "translate(" + margin.left + "," + margin.top + ")");
var x = d3.scaleLinear()
.domain([0.0,1.0])
.range([0,width]);
var y = d3.scaleLinear()
.domain([0.0,1.0])
.range([height,0]);
var xAxis = d3.axisBottom().scale(x).ticks(5);
var yAxis = d3.axisLeft().scale(y).ticks(5);
svg.append("g")
.attr("class", "x axis label")
.attr("transform", "translate(" + 0 + "," + height + ")")
.call(xAxis)
.append("text")
.text("x")
.attr("x", width)
.attr("y", -6)
.style("text-anchor", "end");
svg.append("g")
.attr("class", "y axis label")
.call(yAxis)
.append("text")
.text("y")
.attr("transform", "rotate(-90)")
.attr("y",6)
.style("text-anchor","end");
var dataset = [];
for(var i=0; i<512; i++) {
var xs = new Array(5000);
for(let j=0; j<5000;j++){
xs[j] = mt.next().value;
}
dataset.push([xs[1738],xs[2889]]);
}
svg.selectAll("circle")
.data(dataset)
.enter()
.append("circle")
.attr("cx", function(d) {
return d[0]*width;
})
.attr("cy", function(d) {
return d[1]*height;
})
.attr("r", 3);
return svg.node()
}