finish the implementation of SuperDotPlot