d3 directive