if (!Double.isNaN(table.getValueNumber(startRow, i))) {
numCols++;
}
}
DatasetFactory dsFactory = Chronoscope.get().getComponentFactory()
.getDatasetFactory();
Dataset[] ds = new Dataset[numCols];
numCols = 0;
for (int i = 1; i < table.getNumberOfColumns(); i++) {
if (Double.isNaN(table.getValueNumber(startRow, i))) {
continue;
}
String label = table.getColumnLabel(i);
if (label == null || "".equals(label)) {
label = "Series " + numCols;
}
label = label.trim();
int ind = label.indexOf("(");
int end = label.indexOf(")");
String units = label;
if (ind != -1 && end != -1 && end > ind) {
units = label.substring(ind + 1, end).trim();
label = label.substring(0, ind);
}
DataPair pair = table2datapair(table, startRow, i);
sortAscendingDate(pair);
DatasetRequest.Basic request = new DatasetRequest.Basic();
request.setDomain(pair.domain);
request.addRangeTupleSlice(pair.range);
request.setIdentifier("col" + i);
request.setRangeLabel(label);
request.setAxisId(units);
ds[numCols++] = dsFactory.create(request);
if (dataset2Column != null) {
dataset2Column.put(numCols - 1, i);
}
}