Changeset 232 for trunk/sources/HeuristicLab.DataAnalysis/DatasetView.cs
- Timestamp:
- 05/11/08 12:33:07 (16 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/sources/HeuristicLab.DataAnalysis/DatasetView.cs
r168 r232 25 25 26 26 namespace HeuristicLab.DataAnalysis { 27 public partial class DatasetView : ViewBase { 28 29 private OpenFileDialog openFileDialog; 30 27 public partial class DatasetView : EditorBase { 31 28 public Dataset Dataset { 32 29 get { return (Dataset)Item; } … … 37 34 } 38 35 36 private double[] scalingFactor; 37 private double[] scalingOffset; 39 38 public DatasetView() 40 39 : base() { 41 40 InitializeComponent(); 42 openFileDialog = new OpenFileDialog();43 41 } 44 42 … … 50 48 protected override void UpdateControls() { 51 49 base.UpdateControls(); 50 if(this.scalingFactor == null) { 51 this.scalingFactor = new double[Dataset.Columns]; 52 this.scalingOffset = new double[Dataset.Columns]; 53 for(int i = 0; i < scalingFactor.Length; i++) { 54 scalingFactor[i] = 1.0; 55 scalingOffset[i] = 0.0; 56 } 57 } 52 58 if (Dataset != null) { 53 59 int rows = Dataset.Rows; … … 63 69 } 64 70 } 65 if (Dataset.VariableNames.Length == dataGridView.Columns.Count) { 66 for (int i = 0; i < columns; i++) { 67 dataGridView.Columns[i].Name = Dataset.VariableNames[i]; 68 } 69 } else { 70 for (int i = 0; i < columns; i++) { 71 dataGridView.Columns[i].Name = "Var" + i; 72 } 71 for (int i = 0; i < columns; i++) { 72 dataGridView.Columns[i].SortMode = DataGridViewColumnSortMode.NotSortable; 73 dataGridView.Columns[i].Name = GetColumnName(i); 74 dataGridView.Columns[i].ContextMenuStrip = contextMenuStrip; 73 75 } 74 76 dataGridView.SelectionMode = DataGridViewSelectionMode.ColumnHeaderSelect; 75 77 } else { 76 78 rowsTextBox.Text = "1"; … … 104 106 return element != null && double.TryParse(element, out result); 105 107 } 108 109 private void exportButton_Click(object sender, EventArgs e) { 110 throw new NotImplementedException(); 111 } 112 113 private void scaleValuesToolStripMenuItem_Click(object sender, EventArgs e) { 114 foreach(DataGridViewColumn column in dataGridView.SelectedColumns) { 115 if(scalingFactor[column.Index] == 1.0) { 116 double min = Dataset.GetMinimum(column.Index); 117 double max = Dataset.GetMaximum(column.Index); 118 double range = max - min; 119 scalingFactor[column.Index] = range; 120 scalingOffset[column.Index] = min; 121 column.Name = GetColumnName(column.Index) + " [scaled]"; 122 for(int i = 0; i < Dataset.Rows; i++) { 123 Dataset.SetValue(i, column.Index, (Dataset.GetValue(i, column.Index)-min) / range); 124 } 125 } 126 } 127 Refresh(); 128 } 129 130 private void originalValuesToolStripMenuItem_Click(object sender, EventArgs e) { 131 foreach(DataGridViewColumn column in dataGridView.SelectedColumns) { 132 if(scalingFactor[column.Index] != 1.0) { 133 column.Name = GetColumnName(column.Index); 134 for(int i = 0; i < Dataset.Rows; i++) { 135 Dataset.SetValue(i, column.Index, Dataset.GetValue(i, column.Index) * scalingFactor[column.Index] + scalingOffset[column.Index]); 136 } 137 scalingFactor[column.Index] = 1.0; 138 scalingOffset[column.Index] = 0.0; 139 } 140 } 141 Refresh(); 142 } 143 144 private string GetColumnName(int index) { 145 if(Dataset.VariableNames.Length == dataGridView.Columns.Count) { 146 return Dataset.VariableNames[index]; 147 } else { 148 return "Var " + index; 149 } 150 } 106 151 } 107 152 }
Note: See TracChangeset
for help on using the changeset viewer.