diff --git a/CBSVisualizer/CBSVisualizer.Services.SettingsService/SettingService.cs b/CBSVisualizer/CBSVisualizer.Services.SettingsService/SettingService.cs
index 0f60a91149d5a3aa1501565e35a12227ebfc6c22..5970161612e580a2023ac9ee757fa9b14695fddd 100644
--- a/CBSVisualizer/CBSVisualizer.Services.SettingsService/SettingService.cs
+++ b/CBSVisualizer/CBSVisualizer.Services.SettingsService/SettingService.cs
@@ -35,7 +35,9 @@ namespace CBSVisualizer.Services.SettingService
             var statisticsGroupMembers = new ObservableCollection<ISetting>()
             {
                 new StringSetting("histogram_buckets", "Amount of Histogram Bins", "1000"),
-                new BooleanSetting("boxplot_display_besteffort_tt", "Box Plot: Show BestEffort and TT Queue?", false)
+                new BooleanSetting("boxplot_display_besteffort_tt", "Box Plot: Show BestEffort and TT Queue?", false),
+                new BooleanSetting("filter_raw_data", "Filter raw data? (outlier elimination)", true),
+                new StringSetting("raw_data_upper_limit", "Upper Limit (inclusive) of raw delay data [ms]", "600")
             };
 
             var statisticsGroup = new SettingGroup("Statistics", statisticsGroupMembers);
diff --git a/CBSVisualizer/CBSVisualizer.Services.StatisticsService/StatisticsService.cs b/CBSVisualizer/CBSVisualizer.Services.StatisticsService/StatisticsService.cs
index e2ab61f765d7ec5596f02b794bf3c18e879234a2..ff022e8960d7de1793e55eefb3ac735d78c2235e 100644
--- a/CBSVisualizer/CBSVisualizer.Services.StatisticsService/StatisticsService.cs
+++ b/CBSVisualizer/CBSVisualizer.Services.StatisticsService/StatisticsService.cs
@@ -167,16 +167,25 @@ namespace CBSVisualizer.Services.StatisticsService
             return (xAxis, yAxis);
         }
 
-        private static List<double> CalculateDelays(ConcurrentBag<PacketTimestampCollection> data)
+        private List<double> CalculateDelays(ConcurrentBag<PacketTimestampCollection> data)
         {
-            return data.AsParallel().Select(collection =>
+            // Calculate delays.
+            var delays =  data.AsParallel().Select(collection =>
             {
                 if (collection.Arrival.HasValue && collection.Departure.HasValue)
                 {
                     return collection.Departure.Value.Subtract(collection.Arrival.Value).TotalMilliseconds;
                 }
                 return 0;
-            }).ToList();
+            });
+
+            // Filter if the settings say so.
+            if (settings.GetSettingValue<bool>("filter_raw_data"))
+            {
+                delays = delays.AsParallel().Where(delay => delay <= settings.GetSettingValue<double>("raw_data_upper_limit"));
+            }
+
+            return delays.ToList();
         }
     }
 }
diff --git a/CBSVisualizer/CBSVisualizer/Views/MainWindow.xaml b/CBSVisualizer/CBSVisualizer/Views/MainWindow.xaml
index 5478e0ce5b4f4ffc5946ff4888652c9ee10863e9..0f60e99e75e704c9a73f8ff4abaf6b803044eb95 100644
--- a/CBSVisualizer/CBSVisualizer/Views/MainWindow.xaml
+++ b/CBSVisualizer/CBSVisualizer/Views/MainWindow.xaml
@@ -10,6 +10,8 @@
         Background="{DynamicResource MaterialDesignPaper}"
         TextElement.FontWeight="Medium"
         TextElement.FontSize="14"
+        WindowState="Maximized"
+        SizeToContent="Manual"
         FontFamily="{materialDesign:MaterialDesignFont}">
     <Grid>
         <Grid.RowDefinitions>