use the d3 scale as a source of truth, don't let them desynchronize. pass this thru to the d3 scale