'use strict'; if (!("Hist2D" in this)){ var Hist2D = { Hist2D : function(nx, xmin, xmax, ny, ymin, ymax) { var arr = new Array(nx); arr.get = function(x, y) { var ix = parseInt(nx*(x-xmin)/(xmax-xmin)); var iy = parseInt(ny*(y-ymin)/(ymax-ymin)); if (!arr[ix]) return 0; if (!arr[ix][iy]) return 0; return arr[ix][iy]; } arr.fill = function(x, y, w) { var ix = parseInt(nx*(x-xmin)/(xmax-xmin)); var iy = parseInt(ny*(y-ymin)/(ymax-ymin)); if (ix<0 || ix>=nx || iy<0 || iy>=ny) return false; if (!arr[ix]) arr[ix] = new Array(ny); if (!arr[ix][iy]) arr[ix][iy] = 0; arr[ix][iy] += w ? w : 1; return true; } arr.print = function() { var line1 = " |"; for (var ix=0; ix=0; iy--) { var line = "%3d|".$(iy); var sy = 0; for (var ix=0; ix