The same 200×150 scene three times, all the same size on the page. pixelRatio in createGame is how many real pixels each game pixel is drawn with: at 2 the buffer is 400×300, and 'device' follows the screen's devicePixelRatio. The game does not notice: cameras, positions, the pointer and getWidth() still measure 200×150.
Look at the thin ring and the far edge of the floor: that is what it is for, 3D and HD games on dense screens. Then look at the rotating sprite: above 1 it loses the stepped edges of the era. Pixel art stays at 1, and the cost grows with the square: four times the pixels at 2, nine at 3.