Index: stable/HeuristicLab.DataPreprocessing.Views/3.4/HistogramView.Designer.cs
===================================================================
--- stable/HeuristicLab.DataPreprocessing.Views/3.4/HistogramView.Designer.cs	(revision 14190)
+++ stable/HeuristicLab.DataPreprocessing.Views/3.4/HistogramView.Designer.cs	(revision 14796)
@@ -49,18 +49,27 @@
       this.label1 = new System.Windows.Forms.Label();
       this.classifierComboBox = new System.Windows.Forms.ComboBox();
+      ((System.ComponentModel.ISupportInitialize)(this.splitContainer)).BeginInit();
+      this.splitContainer.Panel1.SuspendLayout();
+      this.splitContainer.SuspendLayout();
       this.optionsBox.SuspendLayout();
       this.SuspendLayout();
       // 
+      // splitContainer
+      // 
+      // 
+      // splitContainer.Panel1
+      // 
+      this.splitContainer.Panel1.Controls.Add(this.optionsBox);
+      // 
       // optionsBox
       // 
-      this.optionsBox.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
+      this.optionsBox.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left) 
+            | System.Windows.Forms.AnchorStyles.Right)));
       this.optionsBox.Controls.Add(this.displayDetailsCheckBox);
       this.optionsBox.Controls.Add(this.label1);
       this.optionsBox.Controls.Add(this.classifierComboBox);
-      this.optionsBox.Location = new System.Drawing.Point(5, 324);
-      this.optionsBox.Margin = new System.Windows.Forms.Padding(4);
+      this.optionsBox.Location = new System.Drawing.Point(4, 262);
       this.optionsBox.Name = "optionsBox";
-      this.optionsBox.Padding = new System.Windows.Forms.Padding(4);
-      this.optionsBox.Size = new System.Drawing.Size(203, 165);
+      this.optionsBox.Size = new System.Drawing.Size(84, 138);
       this.optionsBox.TabIndex = 7;
       this.optionsBox.TabStop = false;
@@ -70,8 +79,9 @@
       // 
       this.displayDetailsCheckBox.AutoSize = true;
-      this.displayDetailsCheckBox.Location = new System.Drawing.Point(7, 71);
+      this.displayDetailsCheckBox.Location = new System.Drawing.Point(5, 58);
+      this.displayDetailsCheckBox.Margin = new System.Windows.Forms.Padding(2);
       this.displayDetailsCheckBox.Name = "displayDetailsCheckBox";
       this.displayDetailsCheckBox.RightToLeft = System.Windows.Forms.RightToLeft.Yes;
-      this.displayDetailsCheckBox.Size = new System.Drawing.Size(153, 21);
+      this.displayDetailsCheckBox.Size = new System.Drawing.Size(119, 17);
       this.displayDetailsCheckBox.TabIndex = 3;
       this.displayDetailsCheckBox.Text = "Display value count";
@@ -82,8 +92,7 @@
       // 
       this.label1.AutoSize = true;
-      this.label1.Location = new System.Drawing.Point(4, 19);
-      this.label1.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
+      this.label1.Location = new System.Drawing.Point(3, 15);
       this.label1.Name = "label1";
-      this.label1.Size = new System.Drawing.Size(108, 17);
+      this.label1.Size = new System.Drawing.Size(81, 13);
       this.label1.TabIndex = 2;
       this.label1.Text = "Target variable:";
@@ -91,10 +100,11 @@
       // classifierComboBox
       // 
+      this.classifierComboBox.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left) 
+            | System.Windows.Forms.AnchorStyles.Right)));
       this.classifierComboBox.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
       this.classifierComboBox.FormattingEnabled = true;
-      this.classifierComboBox.Location = new System.Drawing.Point(7, 40);
-      this.classifierComboBox.Margin = new System.Windows.Forms.Padding(4);
+      this.classifierComboBox.Location = new System.Drawing.Point(5, 32);
       this.classifierComboBox.Name = "classifierComboBox";
-      this.classifierComboBox.Size = new System.Drawing.Size(160, 24);
+      this.classifierComboBox.Size = new System.Drawing.Size(73, 21);
       this.classifierComboBox.TabIndex = 1;
       this.classifierComboBox.SelectedIndexChanged += new System.EventHandler(this.classifierComboBox_SelectedIndexChanged);
@@ -102,10 +112,11 @@
       // HistogramView
       // 
-      this.AutoScaleDimensions = new System.Drawing.SizeF(8F, 16F);
+      this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
       this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
-      this.Controls.Add(this.optionsBox);
-      this.Margin = new System.Windows.Forms.Padding(5);
+      this.Margin = new System.Windows.Forms.Padding(4);
       this.Name = "HistogramView";
-      this.Controls.SetChildIndex(this.optionsBox, 0);
+      this.splitContainer.Panel1.ResumeLayout(false);
+      ((System.ComponentModel.ISupportInitialize)(this.splitContainer)).EndInit();
+      this.splitContainer.ResumeLayout(false);
       this.optionsBox.ResumeLayout(false);
       this.optionsBox.PerformLayout();
Index: stable/HeuristicLab.DataPreprocessing.Views/3.4/LineChartView.Designer.cs
===================================================================
--- stable/HeuristicLab.DataPreprocessing.Views/3.4/LineChartView.Designer.cs	(revision 14190)
+++ stable/HeuristicLab.DataPreprocessing.Views/3.4/LineChartView.Designer.cs	(revision 14796)
@@ -47,14 +47,25 @@
       this.optionsBox = new System.Windows.Forms.GroupBox();
       this.allInOneCheckBox = new System.Windows.Forms.CheckBox();
+      ((System.ComponentModel.ISupportInitialize)(this.splitContainer)).BeginInit();
+      this.splitContainer.Panel1.SuspendLayout();
+      this.splitContainer.SuspendLayout();
       this.optionsBox.SuspendLayout();
       this.SuspendLayout();
       // 
+      // splitContainer
+      // 
+      // 
+      // splitContainer.Panel1
+      // 
+      this.splitContainer.Panel1.Controls.Add(this.optionsBox);
+      // 
       // optionsBox
       // 
-      this.optionsBox.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
+      this.optionsBox.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left) 
+            | System.Windows.Forms.AnchorStyles.Right)));
       this.optionsBox.Controls.Add(this.allInOneCheckBox);
       this.optionsBox.Location = new System.Drawing.Point(4, 262);
       this.optionsBox.Name = "optionsBox";
-      this.optionsBox.Size = new System.Drawing.Size(151, 134);
+      this.optionsBox.Size = new System.Drawing.Size(84, 138);
       this.optionsBox.TabIndex = 7;
       this.optionsBox.TabStop = false;
@@ -78,7 +89,8 @@
       this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
       this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
-      this.Controls.Add(this.optionsBox);
       this.Name = "LineChartView";
-      this.Controls.SetChildIndex(this.optionsBox, 0);
+      this.splitContainer.Panel1.ResumeLayout(false);
+      ((System.ComponentModel.ISupportInitialize)(this.splitContainer)).EndInit();
+      this.splitContainer.ResumeLayout(false);
       this.optionsBox.ResumeLayout(false);
       this.optionsBox.PerformLayout();
Index: stable/HeuristicLab.DataPreprocessing.Views/3.4/PreprocessingChartView.Designer.cs
===================================================================
--- stable/HeuristicLab.DataPreprocessing.Views/3.4/PreprocessingChartView.Designer.cs	(revision 14190)
+++ stable/HeuristicLab.DataPreprocessing.Views/3.4/PreprocessingChartView.Designer.cs	(revision 14796)
@@ -45,42 +45,65 @@
     /// </summary>
     private void InitializeComponent() {
-      this.dataTableView = new DataPreprocessing.Views.PreprocessingDataTableView();
       this.tableLayoutPanel = new System.Windows.Forms.TableLayoutPanel();
+      this.dataTableView = new HeuristicLab.DataPreprocessing.Views.PreprocessingDataTableView();
+      this.splitContainer = new System.Windows.Forms.SplitContainer();
       this.checkedItemList = new HeuristicLab.DataPreprocessing.Views.PreprocessingCheckedItemListView();
       this.tableLayoutPanel.SuspendLayout();
+      ((System.ComponentModel.ISupportInitialize)(this.splitContainer)).BeginInit();
+      this.splitContainer.Panel1.SuspendLayout();
+      this.splitContainer.Panel2.SuspendLayout();
+      this.splitContainer.SuspendLayout();
       this.SuspendLayout();
+      // 
+      // tableLayoutPanel
+      // 
+      this.tableLayoutPanel.ColumnCount = 1;
+      this.tableLayoutPanel.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle());
+      this.tableLayoutPanel.Controls.Add(this.dataTableView, 0, 0);
+      this.tableLayoutPanel.Dock = System.Windows.Forms.DockStyle.Fill;
+      this.tableLayoutPanel.Location = new System.Drawing.Point(0, 0);
+      this.tableLayoutPanel.Name = "tableLayoutPanel";
+      this.tableLayoutPanel.RowCount = 1;
+      this.tableLayoutPanel.RowStyles.Add(new System.Windows.Forms.RowStyle());
+      this.tableLayoutPanel.Size = new System.Drawing.Size(559, 403);
+      this.tableLayoutPanel.TabIndex = 6;
+      this.tableLayoutPanel.Layout += new System.Windows.Forms.LayoutEventHandler(this.tableLayoutPanel_Layout);
       // 
       // dataTableView
       // 
+      this.dataTableView.AutoScroll = true;
       this.dataTableView.Caption = "DataTable View";
+      this.dataTableView.Classification = null;
       this.dataTableView.Content = null;
       this.dataTableView.Dock = System.Windows.Forms.DockStyle.Fill;
+      this.dataTableView.IsDetailedChartViewEnabled = false;
       this.dataTableView.Location = new System.Drawing.Point(3, 3);
       this.dataTableView.Name = "dataTableView";
       this.dataTableView.ReadOnly = false;
-      this.dataTableView.Size = new System.Drawing.Size(486, 390);
+      this.dataTableView.Size = new System.Drawing.Size(553, 397);
       this.dataTableView.TabIndex = 0;
       // 
-      // tableLayoutPanel
+      // splitContainer
       // 
-      this.tableLayoutPanel.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
-            | System.Windows.Forms.AnchorStyles.Left)
-            | System.Windows.Forms.AnchorStyles.Right)));
-      this.tableLayoutPanel.AutoScroll = true;
-      this.tableLayoutPanel.ColumnCount = 1;
-      this.tableLayoutPanel.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle());
-      this.tableLayoutPanel.Controls.Add(this.dataTableView, 0, 0);
-      this.tableLayoutPanel.Location = new System.Drawing.Point(162, 4);
-      this.tableLayoutPanel.Name = "tableLayoutPanel";
-      this.tableLayoutPanel.RowCount = 1;
-      this.tableLayoutPanel.RowStyles.Add(new System.Windows.Forms.RowStyle());
-      this.tableLayoutPanel.Size = new System.Drawing.Size(492, 396);
-      this.tableLayoutPanel.TabIndex = 6;
-      this.tableLayoutPanel.Layout += new System.Windows.Forms.LayoutEventHandler(this.tableLayoutPanel_Layout);
+      this.splitContainer.Dock = System.Windows.Forms.DockStyle.Fill;
+      this.splitContainer.Location = new System.Drawing.Point(0, 0);
+      this.splitContainer.Name = "splitContainer";
+      // 
+      // splitContainer.Panel1
+      // 
+      this.splitContainer.Panel1.Controls.Add(this.checkedItemList);
+      // 
+      // splitContainer.Panel2
+      // 
+      this.splitContainer.Panel2.Controls.Add(this.tableLayoutPanel);
+      this.splitContainer.Size = new System.Drawing.Size(654, 403);
+      this.splitContainer.SplitterDistance = 91;
+      this.splitContainer.TabIndex = 7;
       // 
       // checkedItemList
       // 
-      this.checkedItemList.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
-            | System.Windows.Forms.AnchorStyles.Left)));
+      this.checkedItemList.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) 
+            | System.Windows.Forms.AnchorStyles.Left) 
+            | System.Windows.Forms.AnchorStyles.Right)));
       this.checkedItemList.Caption = "View";
       this.checkedItemList.Content = null;
@@ -88,5 +111,5 @@
       this.checkedItemList.Name = "checkedItemList";
       this.checkedItemList.ReadOnly = false;
-      this.checkedItemList.Size = new System.Drawing.Size(152, 252);
+      this.checkedItemList.Size = new System.Drawing.Size(84, 252);
       this.checkedItemList.TabIndex = 4;
       // 
@@ -95,9 +118,12 @@
       this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
       this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
-      this.Controls.Add(this.tableLayoutPanel);
-      this.Controls.Add(this.checkedItemList);
+      this.Controls.Add(this.splitContainer);
       this.Name = "PreprocessingChartView";
       this.Size = new System.Drawing.Size(654, 403);
       this.tableLayoutPanel.ResumeLayout(false);
+      this.splitContainer.Panel1.ResumeLayout(false);
+      this.splitContainer.Panel2.ResumeLayout(false);
+      ((System.ComponentModel.ISupportInitialize)(this.splitContainer)).EndInit();
+      this.splitContainer.ResumeLayout(false);
       this.ResumeLayout(false);
 
@@ -109,4 +135,5 @@
     private DataPreprocessing.Views.PreprocessingDataTableView dataTableView;
     private System.Windows.Forms.TableLayoutPanel tableLayoutPanel;
+    protected System.Windows.Forms.SplitContainer splitContainer;
   }
 }
Index: stable/HeuristicLab.DataPreprocessing.Views/3.4/PreprocessingChartView.cs
===================================================================
--- stable/HeuristicLab.DataPreprocessing.Views/3.4/PreprocessingChartView.cs	(revision 14190)
+++ stable/HeuristicLab.DataPreprocessing.Views/3.4/PreprocessingChartView.cs	(revision 14796)
@@ -59,22 +59,23 @@
     //Add or remove data row
     private void CheckedItemsChanged(object sender, CollectionItemsChangedEventArgs<IndexedItem<StringValue>> checkedItems) {
-
+      tableLayoutPanel.SuspendLayout();
       foreach (IndexedItem<StringValue> item in checkedItems.Items) {
         string variableName = item.Value.Value;
 
-        //variable is displayed -> remove
-        if (VariableIsDisplayed(variableName)) {
-          dataTable.Rows.Remove(variableName);
+        // not checked -> remove
+        if (!VariableIsChecked(variableName)) {
+          dataTableView.SetRowEnabled(variableName, false);
           dataTable.SelectedRows.Remove(variableName);
           dataTablePerVariable.Remove(dataTablePerVariable.Find(x => (x.Name == variableName)));
-          //variable isnt't displayed -> add
         } else {
           DataRow row = GetDataRow(variableName);
           DataRow selectedRow = GetSelectedDataRow(variableName);
-          dataTable.Rows.Add(row);
+          dataTableView.SetRowEnabled(variableName, true);
 
           PreprocessingDataTable pdt = new PreprocessingDataTable(variableName);
           pdt.Rows.Add(row);
-          dataTablePerVariable.Add(pdt);
+          // dataTablePerVariable does not contain unchecked variables => reduce insert position by number of unchecked variables to correct the index
+          int uncheckedUntilVariable = checkedItemList.Content.TakeWhile(x => x.Value != variableName).Count(x => !checkedItemList.Content.ItemChecked(x));
+          dataTablePerVariable.Insert(item.Index - uncheckedUntilVariable, pdt);
 
           //update selection
@@ -89,14 +90,9 @@
       if (Content != null && !Content.AllInOneMode)
         GenerateChart();
-
-    }
-
-    private bool VariableIsDisplayed(string name) {
-
-      foreach (var item in dataTable.Rows) {
-        if (item.Name == name)
-          return true;
-      }
-      return false;
+      tableLayoutPanel.ResumeLayout(true);
+    }
+
+    private bool VariableIsChecked(string name) {
+      return Content.VariableItemList.CheckedItems.Any(x => x.Value.Value == name);
     }
 
@@ -158,5 +154,5 @@
       dataTable.SelectedRows.Clear();
       foreach (var selectedRow in selectedDataRows) {
-        if (VariableIsDisplayed(selectedRow.Name))
+        if (VariableIsChecked(selectedRow.Name))
           dataTable.SelectedRows.Add(selectedRow);
       }
Index: stable/HeuristicLab.DataPreprocessing.Views/3.4/PreprocessingDataTableView.cs
===================================================================
--- stable/HeuristicLab.DataPreprocessing.Views/3.4/PreprocessingDataTableView.cs	(revision 14190)
+++ stable/HeuristicLab.DataPreprocessing.Views/3.4/PreprocessingDataTableView.cs	(revision 14796)
@@ -139,4 +139,12 @@
         }
       } else MessageBox.Show("Nothing to configure.");
+    }
+
+    public bool IsRowEnabled(string name) {
+      return chart.Series.FindByName(name) != null && chart.Series[name].Enabled;
+    }
+    public void SetRowEnabled(string name, bool enabled) {
+      if (chart.Series.FindByName(name) != null)
+        chart.Series[name].Enabled = enabled;
     }
 
