public async Task LoadSubjectData(SubjectViewModel subject, int vertexLimit) { if (_adjBySubjectId.ContainsKey(subject.SubjectId)) { var adjs = _adjBySubjectId[subject.SubjectId]; foreach(var adj in adjs) { // Read in all the lines var lines = await Windows.Storage.FileIO.ReadLinesAsync(adj.File); //subjectGraph.AddGraphLines(lines); for (int lineIdx = 0; lineIdx < lines.Count; lineIdx++) { var line = lines[lineIdx]; var columns = line.TrimEnd().Split('\t'); for (int colIdx = 0; colIdx < columns.Length; colIdx++) { if (lineIdx < vertexLimit && colIdx < vertexLimit) { var val = Double.Parse(columns[colIdx]); if (DoWeCare(lineIdx, colIdx) && (adj.DataType == "fMRI-mo") && (colIdx > lineIdx)) { var str = string.Format("{0}, {1:00}{2:00}, {3}", subject.SubjectId, lineIdx, colIdx, val); Debug.WriteLine(str); } // Only load the upper triangle if (colIdx > lineIdx) adj.Graph.AddEdge(lineIdx, colIdx, Math.Abs(val)); } } } subject.AddGraph(adj.DataType, adj.Graph); } } }