Actually, there is a simple way to handle your example:
plot(x, x*1e-6, yformatter=x->round(x,sigdigits=1))