console
var tb=document.getElementById('sts');
function xrmit(x){
return parseInt(Math.random()*x)
}
stsdata = (function (stsn,ptn){
var data = [], tp;
for(var i=0;i<stsn;i++){
var tpi = [];
for(var j=0;j<ptn;j++){
tp = xrmit(100)
tpi.push( [tp, tp*(30+xrmit(50))]);
}
data.push(tpi)
}
return data
})(13,5)
function xrngsts(data){
var tp=[0,0],st=[],pt=[];
for(var i=0,iL=data.length;i<iL;i++){
st.push([0,0,0,0,i]);
for(var j=0,jL=data[0].length;j<jL;j++){
st[i][0] += data[i][j][0]; st[i][1] += data[i][j][1];
if( i<1 )pt.push( [0,0,0,0,j] )
pt[j][0] += data[i][j][0]; pt[j][1] += data[i][j][1];
tp[0] += data[i][j][0]; tp[1] += data[i][j][1];
}
}
for(var i=0,iL=data.length;i<iL;i++){
st[i][2] = st[i][0]/tp[0]; st[i][3] = st[i][1]/tp[1];
}
for(var j=0,jL=data[0].length;j<jL;j++){
pt[i][2] = pt[i][0]/tp[0]; pt[i][3] = pt[i][1]/tp[1];
}
return {st:st, pt:pt}
}
function initable(tb){
var s='';
for(var i=0,iL=stsdata.length;i<iL;i++){
s += '<tr>'
st.push([0,0,0,0,i]);
for(var j=0,jL=stsdata[0].length;j<jL;j++){
}
s += '</tr>'
}
}
initable(tb)
<div id=phone>
<table id=sts></table>
</div>
html, head {
width: 100%;
height: 100%;
margin: 0;
padding: 0;
}
#phone {
width: 400px;
height: 700px;
border: solid 1px;
}