body = {
async function samp1k() {
for(let i=0;i<100;i++) {
for(let j=0;j<10;j++) {
addpoint();
updateHist();
}
updateBar();
await new Promise(r => setTimeout(r, 250));
}
}
function resetfn() {
var xl = d3.range(0,49/48,1/48);
var yl = d3.range(0,49/48,1/48);
var zl = d3.range(0,49/48,1/48);
var xk = []
var yk = []
var zk = []
var pointlist = []
var i,j,k;
for (i = 0; i < xl.length; i++) {
for (j = 0; j < yl.length; j++) {
for (k = 0; k < zl.length; k++) {
if(Math.abs((xl[i]+yl[j]+zl[k])-1.0) < 0.00001) {
xk.push(xl[i]);
yk.push(yl[j]);
zk.push(zl[k]);
}
}
}
}
const points = d3.range(xk.length).map(ind => ({
x: ((xk[ind] - zk[ind])+1.0)*(width/2),
y: height - (Math.sqrt(3)-(yk[ind] * Math.sqrt(3)))*(height / Math.sqrt(3))
}));
const d2l = data2.length;
for(let i=0;i<d2l;i++) {
data2.pop();
}
for(let i=0;i<points.length;i++) {
data2.push(points[i]);
}
updateHist();
}
const container = html`<div id="inputs" style="display: flex">
<div style="margin: 4px">${rinput}</div><div style="margin: 4px">${ginput}</div><div style="margin: 4px">${binput}</div>
<div><button id="b1" style="margin-left: 10px; margin-top: 24px">Sample 1000</button></div>
<div><button id="b3" style="margin-left: 10px; margin-top: 24px">Reset</button></div>
</div>
<br/>
<div width=${2*width2}><svg width=${width2} height=${height2} id='chart'>${chart}</svg><svg width=${width2} height=${height2}>${barchart}</svg></div>`
const but1 = container.querySelector('#b1');
const but2 = container.querySelector('#b3');
but1.onclick = samp1k;
but2.onclick = resetfn;
return container;
}