new version using canvas tag element instead of table
switched from HTML table to canvase element, much faster