Added canvas implementation with D3.js library