Index: branches/DataPreprocessingImprovements/HeuristicLab.DataPreprocessing.Views/3.4/HistogramView.Designer.cs
===================================================================
--- branches/DataPreprocessingImprovements/HeuristicLab.DataPreprocessing.Views/3.4/HistogramView.Designer.cs	(revision 12168)
+++ branches/DataPreprocessingImprovements/HeuristicLab.DataPreprocessing.Views/3.4/HistogramView.Designer.cs	(revision 12169)
@@ -25,4 +25,5 @@
     private void InitializeComponent() {
       this.optionsBox = new System.Windows.Forms.GroupBox();
+      this.displayDetailsCheckBox = new System.Windows.Forms.CheckBox();
       this.label1 = new System.Windows.Forms.Label();
       this.classifierComboBox = new System.Windows.Forms.ComboBox();
@@ -33,21 +34,37 @@
       // 
       this.optionsBox.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
+      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(4, 263);
+      this.optionsBox.Location = new System.Drawing.Point(5, 324);
+      this.optionsBox.Margin = new System.Windows.Forms.Padding(4);
       this.optionsBox.Name = "optionsBox";
-      this.optionsBox.Size = new System.Drawing.Size(152, 134);
+      this.optionsBox.Padding = new System.Windows.Forms.Padding(4);
+      this.optionsBox.Size = new System.Drawing.Size(203, 165);
       this.optionsBox.TabIndex = 7;
       this.optionsBox.TabStop = false;
       this.optionsBox.Text = "Options";
       // 
+      // displayDetailsCheckBox
+      // 
+      this.displayDetailsCheckBox.AutoSize = true;
+      this.displayDetailsCheckBox.Location = new System.Drawing.Point(7, 71);
+      this.displayDetailsCheckBox.Name = "displayDetailsCheckBox";
+      this.displayDetailsCheckBox.RightToLeft = System.Windows.Forms.RightToLeft.Yes;
+      this.displayDetailsCheckBox.Size = new System.Drawing.Size(153, 21);
+      this.displayDetailsCheckBox.TabIndex = 3;
+      this.displayDetailsCheckBox.Text = "Display value count";
+      this.displayDetailsCheckBox.UseVisualStyleBackColor = true;
+      this.displayDetailsCheckBox.CheckedChanged += new System.EventHandler(this.displayDetailsCheckBox_CheckedChanged);
+      // 
       // label1
       // 
       this.label1.AutoSize = true;
-      this.label1.Location = new System.Drawing.Point(6, 26);
+      this.label1.Location = new System.Drawing.Point(4, 19);
+      this.label1.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
       this.label1.Name = "label1";
-      this.label1.Size = new System.Drawing.Size(91, 13);
+      this.label1.Size = new System.Drawing.Size(108, 17);
       this.label1.TabIndex = 2;
-      this.label1.Text = "Classifier variable:";
+      this.label1.Text = "Target variable:";
       // 
       // classifierComboBox
@@ -55,7 +72,8 @@
       this.classifierComboBox.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
       this.classifierComboBox.FormattingEnabled = true;
-      this.classifierComboBox.Location = new System.Drawing.Point(9, 52);
+      this.classifierComboBox.Location = new System.Drawing.Point(7, 40);
+      this.classifierComboBox.Margin = new System.Windows.Forms.Padding(4);
       this.classifierComboBox.Name = "classifierComboBox";
-      this.classifierComboBox.Size = new System.Drawing.Size(121, 21);
+      this.classifierComboBox.Size = new System.Drawing.Size(160, 24);
       this.classifierComboBox.TabIndex = 1;
       this.classifierComboBox.SelectedIndexChanged += new System.EventHandler(this.classifierComboBox_SelectedIndexChanged);
@@ -63,7 +81,8 @@
       // HistogramView
       // 
-      this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
+      this.AutoScaleDimensions = new System.Drawing.SizeF(8F, 16F);
       this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
       this.Controls.Add(this.optionsBox);
+      this.Margin = new System.Windows.Forms.Padding(5);
       this.Name = "HistogramView";
       this.Controls.SetChildIndex(this.optionsBox, 0);
@@ -79,4 +98,5 @@
     private System.Windows.Forms.ComboBox classifierComboBox;
     private System.Windows.Forms.Label label1;
+    private System.Windows.Forms.CheckBox displayDetailsCheckBox;
 
   }
Index: branches/DataPreprocessingImprovements/HeuristicLab.DataPreprocessing.Views/3.4/HistogramView.cs
===================================================================
--- branches/DataPreprocessingImprovements/HeuristicLab.DataPreprocessing.Views/3.4/HistogramView.cs	(revision 12168)
+++ branches/DataPreprocessingImprovements/HeuristicLab.DataPreprocessing.Views/3.4/HistogramView.cs	(revision 12169)
@@ -70,6 +70,17 @@
 
       Content.ClassifierVariableIndex = classifierComboBox.SelectedIndex;
-
-      GenerateChart();
+      if (Content.IsDetailedChartViewEnabled != IsDetailedChartViewEnabled) {
+        displayDetailsCheckBox.Checked = Content.IsDetailedChartViewEnabled;
+      } else {
+        GenerateChart();
+      }
+    }
+    private void displayDetailsCheckBox_CheckedChanged(object sender, EventArgs e) {
+      bool isChecked = displayDetailsCheckBox.Checked;
+      if (IsDetailedChartViewEnabled != isChecked) {
+        IsDetailedChartViewEnabled = isChecked;
+        Content.IsDetailedChartViewEnabled = isChecked;
+        GenerateChart();
+      }
     }
   }
Index: branches/DataPreprocessingImprovements/HeuristicLab.DataPreprocessing.Views/3.4/PreprocessingChartView.cs
===================================================================
--- branches/DataPreprocessingImprovements/HeuristicLab.DataPreprocessing.Views/3.4/PreprocessingChartView.cs	(revision 12168)
+++ branches/DataPreprocessingImprovements/HeuristicLab.DataPreprocessing.Views/3.4/PreprocessingChartView.cs	(revision 12169)
@@ -49,4 +49,5 @@
 
     public IEnumerable<double> Classification { get; set; }
+    public bool IsDetailedChartViewEnabled { get; set; }
 
     public PreprocessingChartView() {
@@ -354,4 +355,5 @@
       PreprocessingDataTableView dataView = new PreprocessingDataTableView();
       dataView.Classification = Classification;
+      dataView.IsDetailedChartViewEnabled = IsDetailedChartViewEnabled;
 
       if (dataTable == null) {
Index: branches/DataPreprocessingImprovements/HeuristicLab.DataPreprocessing.Views/3.4/PreprocessingDataTableView.cs
===================================================================
--- branches/DataPreprocessingImprovements/HeuristicLab.DataPreprocessing.Views/3.4/PreprocessingDataTableView.cs	(revision 12168)
+++ branches/DataPreprocessingImprovements/HeuristicLab.DataPreprocessing.Views/3.4/PreprocessingDataTableView.cs	(revision 12169)
@@ -47,4 +47,5 @@
 
     public IEnumerable<double> Classification { get; set; }
+    public bool IsDetailedChartViewEnabled { get; set; }
 
     public PreprocessingDataTableView() {
@@ -145,9 +146,14 @@
         RegisterDataRowEvents(row);
         var series = new Series(row.Name);
-        if (row.VisualProperties.DisplayName.Trim() != String.Empty) series.LegendText = row.VisualProperties.DisplayName;
+        if (row.VisualProperties.DisplayName.Trim() != String.Empty)
+          series.LegendText = row.VisualProperties.DisplayName;
         else series.LegendText = row.Name;
+
         ConfigureSeries(series, row);
         FillSeriesWithRowValues(series, row);
 
+        if (IsDetailedChartViewEnabled) {
+          series.LegendText += " Values: " + row.Values.Count;
+        }
         if (Classification == null)
           chart.Series.Add(series);
@@ -661,5 +667,7 @@
 
         chart.Titles.Add(row.Name);
-
+        int featureOverallValueCount = 0;
+        if (IsDetailedChartViewEnabled)
+          featureOverallValueCount = row.Values.Count(x => !IsInvalidValue(x));
         foreach (KeyValuePair<double, List<double>> entry in valuesPerClass) {
           var s = new Series(row.Name + entry.Key);
@@ -669,5 +677,11 @@
 
           s.LegendText = entry.Key.ToString();
-
+          if (IsDetailedChartViewEnabled) {
+            int featureValueCount = entry.Value.Count(x => !IsInvalidValue(x));
+            s.LegendText += " Values: ";
+            s.LegendText += (featureOverallValueCount > 0) ?
+              string.Format("{0} ({1:F2}%)", featureValueCount, (featureValueCount / (double)featureOverallValueCount) * 100)
+            : "0";
+          }
           chart.Series.Add(s);
         }
@@ -752,9 +766,12 @@
                               ? "Y"
                               : Content.VisualProperties.YAxisTitle;
-        series.Points.Add(new DataPoint(d - intervalCenter, sum) {
-          ToolTip =
-            xAxisTitle + ": [" + (d - intervalWidth) + "-" + d + ")" + Environment.NewLine +
-            yAxisTitle + ": " + sum
-        });
+        DataPoint newDataPoint = new DataPoint(d - intervalCenter, sum);
+        newDataPoint.ToolTip =
+          xAxisTitle + ": [" + (d - intervalWidth) + "-" + d + ")" + Environment.NewLine +
+          yAxisTitle + ": " + sum;
+        int overallValueCount = row.Values.Count();
+        if (overallValueCount > 0)
+          newDataPoint.ToolTip += string.Format(" ({0:F2}%)", (sum / overallValueCount) * 100);
+        series.Points.Add(newDataPoint);
       }
     }
Index: branches/DataPreprocessingImprovements/HeuristicLab.DataPreprocessing/3.4/Implementations/HistogramContent.cs
===================================================================
--- branches/DataPreprocessingImprovements/HeuristicLab.DataPreprocessing/3.4/Implementations/HistogramContent.cs	(revision 12168)
+++ branches/DataPreprocessingImprovements/HeuristicLab.DataPreprocessing/3.4/Implementations/HistogramContent.cs	(revision 12169)
@@ -42,4 +42,5 @@
       set { this.classifierVariableIndex = value; }
     }
+    public bool IsDetailedChartViewEnabled { get; set; }
 
 
