diff --git a/GUI/View/Scene/MaskGraphicsScene.cpp b/GUI/View/Scene/MaskGraphicsScene.cpp
index aca246e387c17bb5950148650722c9e4d54cd7d1..57cd10cbca3ec3776392589e41edf33ef11f2334 100644
--- a/GUI/View/Scene/MaskGraphicsScene.cpp
+++ b/GUI/View/Scene/MaskGraphicsScene.cpp
@@ -343,6 +343,7 @@ IOverlay* MaskGraphicsScene::registerOverlay(OverlayItem* item)
         connect(line_item, &OverlayItem::maskToBeDestroyed,
                 [this, line_item] { emit lineItemDeleted(line_item); });
     }
+    connect(m_plot.get(), &QCustomPlot::afterReplot, overlay, &IOverlay::onGeometryChange);
     connect(item, &OverlayItem::maskGeometryChanged, overlay, &IOverlay::onGeometryChange);
     if (auto* mask_item = dynamic_cast<MaskItem*>(item)) {
         if (auto* mask_overlay = dynamic_cast<IMaskOverlay*>(overlay))