private void drawDetails(int index, Graphics g) { int increment = -1; String geneName = ""; double geneValue = 0; int indexInGroup = 0; for (int i = 0; i < geneGroups.size(); i++) { GeneGroup group = geneGroups.get(i); if (index > group.getSize() + increment) { increment += group.getSize(); continue; } else { indexInGroup = index - increment - 1; geneName = group.getGeneName(indexInGroup); geneValue = group.getGeneValue(indexInGroup); break; } } g.drawString(geneName + " (" + Double.toString(geneValue) + ")", Xleft, Ybottom + 47); }