Change x-scale from linear to ordinal. Fix text alignment with dy in svg:text