The plot itself can be made visible or not by using SetPlotAttribute (, , , ATTR_TRACE_VISIBLE, ); You do not need to cover the old plot with a new one.
I don't understand your sentence about not all points deleted with DeleteGraphPlot. Moreover, adding a transparent plot won't cover the previous one!