diff --git a/src/logic/tile/tiles/SensorLineChartTile.py b/src/logic/tile/tiles/SensorLineChartTile.py
index dbd5c72a79ba157864a769b3dace55536709fc78..5493459c496db9cc994d2fe2cd51c412994ae4ac 100644
--- a/src/logic/tile/tiles/SensorLineChartTile.py
+++ b/src/logic/tile/tiles/SensorLineChartTile.py
@@ -84,12 +84,7 @@ class SensorLineChartTile(Tile):
 
         # Check if all values are above zero and the min value for the sensor group is below zero.
         # Therefore a ghost trace must be generated that fills the area underneath the x-axis.
-        ghostTraceX = []
-        ghostTraceY = []
-        if all(float(i) >= 0 for i in y):
-            if minValue < 0:
-                ghostTraceX = [x[0], x[-1]]
-                ghostTraceY = [minValue, minValue]
+        ghostTraceX, ghostTraceY = self._prepare_ghost_trace(minValue, x, y)
 
         return {
             'latest': latestValue,
@@ -149,6 +144,17 @@ class SensorLineChartTile(Tile):
         y.reverse()
         return x, y
 
+    def _prepare_ghost_trace(self, minValue, x, y):
+        ghostTraceX = []
+        ghostTraceY = []
+
+        if all(float(i) >= 0 for i in y):
+            if minValue < 0:
+                ghostTraceX = [x[0], x[-1]]
+                ghostTraceY = [minValue, minValue]
+
+        return ghostTraceX, ghostTraceY
+
     def render(self, data: Dict) -> str:
         sensorType = data['sensorInfo']['type']
         unit = self.UNIT_BY_SENSOR_TYPE.get(sensorType, '')
diff --git a/src/logic/tile/tiles/TestSensorLineChartTile.py b/src/logic/tile/tiles/TestSensorLineChartTile.py
index 41b40b34fc23ee1c0d9223c48af5868cd282bae7..065fa6f9419db9468b3c317b336b53e1d8e1d088 100644
--- a/src/logic/tile/tiles/TestSensorLineChartTile.py
+++ b/src/logic/tile/tiles/TestSensorLineChartTile.py
@@ -142,3 +142,23 @@ class TestPrepareMeasurementData:
         ]
 
         assert tile._prepare_measurement_data(measurements) == ([timestamp2, timestamp1], ['-6.2', '-5.4'])
+
+
+class TestPrepareGhostTrace:
+    def test_all_values_below_zero_returns_empty_lists(self):
+        tile = SensorLineChartTile('mySensorTile', example_settings(False), 10)
+        x = ['2021-02-09 17:47:55']
+        y = [-12]
+        assert tile._prepare_ghost_trace(-10, x, y) == ([], [])
+
+    def test_all_values_above_zero_and_min_from_api_above_zero_returns_empty_lists(self):
+        tile = SensorLineChartTile('mySensorTile', example_settings(False), 10)
+        x = ['2021-02-09 17:47:55', '2021-02-09 17:48:55']
+        y = [6, 8]
+        assert tile._prepare_ghost_trace(10, x, y) == ([], [])
+
+    def test_all_values_above_zero_and_min_from_api_below_zero_returns_ghost_trace(self):
+        tile = SensorLineChartTile('mySensorTile', example_settings(False), 10)
+        x = ['2021-02-09 17:47:55', '2021-02-09 17:48:55']
+        y = [6, 8]
+        assert tile._prepare_ghost_trace(-10, x, y) == (x, [-10, -10])