/** * Makes a stair step heat map from an array of windows in bar format. One per chromosome. Don't * forget to set the barDirectory and score Index!!!!!!! */ public void makeStairStepBarFiles() { // make bar parser BarParser bp = new BarParser(); bp.setZipCompress(true); HashMap<String, String> tagVals = new HashMap<String, String>(); tagVals.put(BarParser.GRAPH_TYPE_TAG, BarParser.GRAPH_TYPE_STAIRSTEP); tagVals.put(BarParser.GRAPH_TYPE_COLOR_TAG, "#FF00FF"); // fusha tagVals.put(BarParser.SOURCE_TAG, bedFile.toString()); // for each chromosome System.out.print("Printing... "); Iterator<String> it = bedLinesHash.keySet().iterator(); while (it.hasNext()) { chromosome = it.next(); System.out.print(chromosome + " "); windows = bedLinesHash.get(chromosome); // add blocks assembleBlocks(); // balance by adding max or min at zero base balanceValues(); // write bar file File barFile = new File(barDirectory, chromosome + ".bar"); bp.writeBarFile( barFile, chromosome, genomeVersion, '.', Num.arrayListOfIntegerToInts(bases), Num.arrayListOfFloatToArray(values), tagVals); // clear ArrayLists bases.clear(); values.clear(); } System.out.println(); }