Index: /trunk/sources/HeuristicLab.Analysis.Statistics.Views/3.3/CorrelationView.cs
===================================================================
--- /trunk/sources/HeuristicLab.Analysis.Statistics.Views/3.3/CorrelationView.cs	(revision 12150)
+++ /trunk/sources/HeuristicLab.Analysis.Statistics.Views/3.3/CorrelationView.cs	(revision 12151)
@@ -56,4 +56,5 @@
       stringConvertibleMatrixView.Minimum = -1.0;
       stringConvertibleMatrixView.Maximum = 1.0;
+      stringConvertibleMatrixView.FormatPattern = "0.000";
 
       methodComboBox.Items.Add(PearsonName);
@@ -216,11 +217,9 @@
           if (!rowValues.Any() || !columnValues.Any() || rowValues.Count() != columnValues.Count()) {
             dt[i, j] = double.NaN;
-          } else if (i == j) {
-            dt[i, j] = 1.0;
           } else {
             if (methodName == PearsonName) {
-              dt[i, j] = Math.Round(alglib.pearsoncorr2(rowValues.ToArray(), columnValues.ToArray()), 3); // for correlations it is usually sufficient to show only 3 digits
+              dt[i, j] = alglib.pearsoncorr2(rowValues.ToArray(), columnValues.ToArray());
             } else {
-              dt[i, j] = Math.Round(alglib.spearmancorr2(rowValues.ToArray(), columnValues.ToArray()), 3); // for correlations it is usually sufficient to show only 3 digits
+              dt[i, j] = alglib.spearmancorr2(rowValues.ToArray(), columnValues.ToArray());
             }
           }
Index: /trunk/sources/HeuristicLab.Data.Views/3.3/EnhancedStringConvertibleMatrixView.cs
===================================================================
--- /trunk/sources/HeuristicLab.Data.Views/3.3/EnhancedStringConvertibleMatrixView.cs	(revision 12150)
+++ /trunk/sources/HeuristicLab.Data.Views/3.3/EnhancedStringConvertibleMatrixView.cs	(revision 12151)
@@ -45,4 +45,6 @@
     public double Minimum { get; set; }
 
+    public string FormatPattern { get; set; }
+
     public new DoubleMatrix Content {
       get { return (DoubleMatrix)base.Content; }
@@ -52,4 +54,5 @@
     public EnhancedStringConvertibleMatrixView() {
       InitializeComponent();
+      FormatPattern = string.Empty;
     }
 
@@ -57,4 +60,11 @@
       columnVisibility = null;
       rowVisibility = null;
+    }
+
+    protected override void dataGridView_CellValueNeeded(object sender, DataGridViewCellValueEventArgs e) {
+      if (Content != null && e.RowIndex < Content.Rows && e.ColumnIndex < Content.Columns) {
+        int rowIndex = virtualRowIndices[e.RowIndex];
+        e.Value = Content[rowIndex, e.ColumnIndex].ToString(FormatPattern);
+      }
     }
 
Index: /trunk/sources/HeuristicLab.Data.Views/3.3/StringConvertibleMatrixView.cs
===================================================================
--- /trunk/sources/HeuristicLab.Data.Views/3.3/StringConvertibleMatrixView.cs	(revision 12150)
+++ /trunk/sources/HeuristicLab.Data.Views/3.3/StringConvertibleMatrixView.cs	(revision 12151)
@@ -281,5 +281,5 @@
       dataGridView.Rows[e.RowIndex].ErrorText = string.Empty;
     }
-    private void dataGridView_CellValueNeeded(object sender, DataGridViewCellValueEventArgs e) {
+    protected virtual void dataGridView_CellValueNeeded(object sender, DataGridViewCellValueEventArgs e) {
       if (Content != null && e.RowIndex < Content.Rows && e.ColumnIndex < Content.Columns) {
         int rowIndex = virtualRowIndices[e.RowIndex];
Index: /trunk/sources/HeuristicLab.Problems.DataAnalysis.Views/3.4/FeatureCorrelation/AbstractFeatureCorrelationView.cs
===================================================================
--- /trunk/sources/HeuristicLab.Problems.DataAnalysis.Views/3.4/FeatureCorrelation/AbstractFeatureCorrelationView.cs	(revision 12150)
+++ /trunk/sources/HeuristicLab.Problems.DataAnalysis.Views/3.4/FeatureCorrelation/AbstractFeatureCorrelationView.cs	(revision 12151)
@@ -48,4 +48,5 @@
     protected AbstractFeatureCorrelationView() {
       InitializeComponent();
+      dataView.FormatPattern = "0.000";
       fcc = new FeatureCorrelationCalculator();
       var calculators = ApplicationManager.Manager.GetInstances<IDependencyCalculator>();
@@ -115,4 +116,5 @@
       dataView.Maximum = calc.Maximum;
       dataView.Minimum = calc.Minimum;
+
       dataView.Content = correlation;
       dataView.Enabled = true;
Index: /trunk/sources/HeuristicLab.Problems.DataAnalysis.Views/3.4/FeatureCorrelation/FeatureCorrelationCalculator.cs
===================================================================
--- /trunk/sources/HeuristicLab.Problems.DataAnalysis.Views/3.4/FeatureCorrelation/FeatureCorrelationCalculator.cs	(revision 12150)
+++ /trunk/sources/HeuristicLab.Problems.DataAnalysis.Views/3.4/FeatureCorrelation/FeatureCorrelationCalculator.cs	(revision 12151)
@@ -139,5 +139,5 @@
           IEnumerable<double> var2 = problemData.Dataset.GetDoubleValues(doubleVariableNames[j], indices);
 
-          elements[i, j] = Math.Round(calc.Calculate(var1, var2, out error), 3); // only show correlations to 3 digits accuracy
+          elements[i, j] = calc.Calculate(var1, var2, out error);
 
           if (!error.Equals(OnlineCalculatorError.None)) {
