Previous changeset 5:15c71ed09efa (2018-11-08) Next changeset 7:c5489978071a (2020-01-28) |
Commit message:
Uploaded |
modified:
CHM_Advanced.R GalaxyMapGen.jar heatmap_advanced.sh mda_advanced_heatmap_gen.xml mda_heatmap_viz.zip |
b |
diff -r 15c71ed09efa -r 1f13d304ddbd CHM_Advanced.R --- a/CHM_Advanced.R Thu Nov 08 14:59:57 2018 -0500 +++ b/CHM_Advanced.R Thu Jun 20 11:36:53 2019 -0400 |
b |
@@ -17,7 +17,7 @@ performDataOrdering<-function(dataFile, rowOrderMethod, rowDistanceMeasure, rowAgglomerationMethod, colOrderMethod, colDistanceMeasure, colAgglomerationMethod,rowOrderFile, colOrderFile, rowDendroFile, colDendroFile, rowCut, colCut) { - dataMatrix = read.table(dataFile, header=TRUE, sep = "\t", row.names = 1, as.is=TRUE, na.strings=c("NA","N/A","-","?")) + dataMatrix = read.table(dataFile, header=TRUE, sep = "\t", check.names = FALSE, row.names = 1, as.is=TRUE, na.strings=c("NA","N/A","-","?")) rowOrder <- createOrdering(dataMatrix, rowOrderMethod, "row", rowDistanceMeasure, rowAgglomerationMethod) if (rowOrderMethod == "Hierarchical") { writeHCDataTSVs(rowOrder, rowDendroFile, rowOrderFile) |
b |
diff -r 15c71ed09efa -r 1f13d304ddbd GalaxyMapGen.jar |
b |
Binary file GalaxyMapGen.jar has changed |
b |
diff -r 15c71ed09efa -r 1f13d304ddbd heatmap_advanced.sh --- a/heatmap_advanced.sh Thu Nov 08 14:59:57 2018 -0500 +++ b/heatmap_advanced.sh Thu Jun 20 11:36:53 2019 -0400 |
[ |
b'@@ -1,39 +1,355 @@\n-#echo "1: " $1 \n-#echo "2: " $2 \n-#echo "3: " $3 \n-#echo "4: " $4 \n-#echo "5: " $5 \n-#echo "6: " $6 \n-#echo "7: " $7 \n-#echo "8: " $8 \n-#echo "9: " $9 \n-#echo "10: " ${10} \n-#echo "11: " ${11} \n-#echo "12: " ${12} \n-#echo "13: " ${13} \n-#echo "14: " ${14} \n-#echo "15: " ${15} \n-#echo "16: " ${16} \n-#echo "17: " ${17} \n-#echo "18: " ${18} \n-#echo "19: " ${19} \n-#echo "20: " ${20} \n-#echo "21: " ${21} \n-#echo "22: " ${22} \n-#echo "23: " ${23} \n-#echo "23: " ${24} \n-#echo $1 $2 $3 $4 $5 $6 $7 $8 $9 ${10} ${11} ${12} ${13} ${14} ${15} ${16} ${17} ${18} ${19} ${20} ${21} ${22} ${23}\n+#echo "1: " $1 " 2: " $2 " 3: " $3 " 4: " $4 " 5: " $5 " 6: " $6 " 7: " $7 " 8: " $8 " 9: " $9 " 10: " ${10} \n+#echo "11: " ${11} " 12: " ${12} 13: " ${13} 14: " ${14} " 15: " ${15} " 16: " ${16} " 17: " ${17} " 18: " ${18} " 19: " ${19} " 20: " ${20} \n+#echo "21: "${21}" 22: "${22}" 23: "${23}" 24: "${24}" 25: "${25}" 26: "${26}" 27: "${27}" 28: "${28}" 29: "${29}" 30: "${30}\n \n-#get tool data and tool install directories\n-tooldir=$(cut -d\';\' -f1 <<< ${12})\n-tooldata=$(cut -d\';\' -f2 <<< ${12})\n+#Count total number of parameters, dataLayer parameters, and classification parameters\n+parmSize=0\n+classSize=0\n+dataLayerSize=0\n+attribSize=0\n+for i in "$@"; do\n+\tcurrParm=$(cut -d\'|\' -f1 <<< $i)\n+\tparmSize=$((parmSize+1))\n+\tif [ $currParm = "classification" ]\n+\tthen\n+\t\tclassSize=$((classSize+1))\n+ \tfi\n+\tif [ $currParm = "matrix_files" ]\n+\tthen\n+\t\tdataLayerSize=$((dataLayerSize+1))\n+ \tfi\n+\tif [ $currParm = "attribute" ]\n+\tthen\n+\t\tattribSize=$((attribSize+1))\n+ \tfi\n+done\n \n+if [ $dataLayerSize -lt 1 ]\n+then\n+\tnoDataLayer="ERROR: No Heat Map Matrices provided. Please add at least one Heat Map Matrix to your request and try again."\n+ \techo $noDataLayer\n+ \texit $noDataLayer\n+fi\n+\n+#Get tool data and tool install directories\n+tooldir=$1\n+tooldata=$2\n #create temp directory for row and col order and dendro files.\n tdir=$tooldata/$(date +%y%m%d%M%S)\n-echo $tdir\n mkdir $tdir\n+#echo "tdir: "$tdir\n+\n+#Extract parameters for row and column order and dendro files\n+rowOrderFile=$tdir/ROfile.txt\n+rowDendroFile=$tdir/RDfile.txt\n+colOrderFile=$tdir/COfile.txt\n+colDendroFile=$tdir/CDfile.txt\n+rowOrderJson=\'"order_file": "\'$rowOrderFile\'",\'\n+rowDendroJson=\'"dendro_file": "\'$rowDendroFile\'",\'\n+colOrderJson=\'"order_file": "\'$colOrderFile\'",\'\n+colDendroJson=\'"dendro_file": "\'$colDendroFile\'",\'\n+\n+#BEGIN: Construct JSON for all non-repeating parameters\n+parmJson=\'{\'\n+rowConfigJson=\'"row_configuration": {\'\n+colConfigJson=\'"col_configuration": {\'\n+\n+ctr=0\n+for i in "$@"; do\n+\tif [ $ctr -gt 1 ]\n+\tthen\n+\t\tcurrParm=$(cut -d\'|\' -f1 <<< $i)\n+\t\tif [ $currParm != "matrix_files" ] && [ $currParm != "row_configuration" ] && [ $currParm != "col_configuration" ] && [ $currParm != "classification" ] && [ $currParm != "attribute" ]\n+\t\tthen\n+\t\t\t#Parse pipe-delimited parameter parameter\n+\t\t\tparmJson=$parmJson\' "\'$(cut -d\'|\' -f1 <<< $i)\'":"\'$(cut -d\'|\' -f2 <<< $i)\'",\'\n+\t \tfi\n+\t\tif [ $currParm = "row_configuration" ]\n+\t\tthen\n+\t\t\trowOrder=$(cut -d\'|\' -f3 <<< $i)\n+\t\t\trowDistance=$(cut -d\'|\' -f5 <<< $i)\n+\t\t\trowAgglomeration=$(cut -d\'|\' -f7 <<< $i)\n+\t\t\trowCuts=$(cut -d\'|\' -f9 <<< $i)\n+\t\t\trowLabels=$(cut -d\'|\' -f11 <<< $i)\n+\t\t\trowDataTypeJson=\'"\'$(cut -d\'|\' -f10 <<< $i)\'":["\'$rowLabels\'"],\'\n+\t\t\trowCutType=$(cut -d\'|\' -f16 <<< $i)\n+\t\t\trowTopItemsJson=\'\'\n+\t\t\trowTopItems=$(cut -d\'|\' -f13 <<< $i)\n+\t\t\tif [ $rowTopItems != "None" ] && [ $rowTopItems != "" ]\n+\t\t\tthen\n+\t\t\t\trowTopItemsJson=\'"\'$(cut -d\'|\' -f12 <<< $i)\'": [\'\n+\t\t\t\trowTopItems=${rowTopItems//,/\'","\'}\n+\t\t\t\trowTopItemsJson=$rowTopItemsJson\'"\'$rowTopItems\'"],\'\n+\t\t\tfi\n+\t\t\trowCutsJson=\'\'\n+\t\t\tif [ $rowCutType != "none" ]\n+\t\t\tthen\n+\t\t\t\tcutValues=$(cut -d\'|\' -f15 <<< $i) \n+\t\t\t\tif [ $cutValues != "None" ] && [ $cutValues != "0" ]\n+\t\t\t\tthen\n+\t\t\t\t\tif [ $rowCutType = "treecuts" ]\n+\t\t\t\t\tthen\n+\t\t\t\t\t\trowCutsJson=$rowCutsJson\'"tree_cuts": "\'$cutValues\'",\' \n+\t\t\t\t\t\trowCutsJson=$rowCutsJson\'"cut_width": "5",\' \n+\t\t\t\t\tfi\n+\t\t\t\t\tif [ $ro'..b'\' -f3 <<< $i)\n+\t\t#Parse pipe-delimited 3-part classification bar parameter\n+\t\tclassJson=$classJson\' {"\'$(cut -d\'|\' -f2 <<< $i)\'":"\'$(cut -d\'|\' -f3 <<< $i)\'","\'$(cut -d\'|\' -f4 <<< $i)\'":"\'$(cut -d\'|\' -f5 <<< $i)\'","\'$(cut -d\'|\' -f8 <<< $i)\'":"\'$(cut -d\'|\' -f9 <<< $i)\'","\'$(cut -d\'|\' -f12 <<< $i)\'":"\'$(cut -d\'|\' -f13 <<< $i)\'","\'$(cut -d\'|\' -f14 <<< $i)\'":"\'$(cut -d\'|\' -f15 <<< $i)\'"\'\n+\t\tclassCat=$(cut -d\'|\' -f7 <<< $i)\n+\t\tclassColorType=$(cut -d\'_\' -f2 <<< $classCat)\n+\t\tclassJson=$classJson\',\'\n+\t\tclassHeight=$(cut -d\'|\' -f11 <<< $i)\n+\t\theightErrorVal=0\n+\t\t[[ $classHeight != ?(-)+([0-9]) ]] && heightErrorVal=$((heightErrorVal+1))\n+\t\tif [ $heightErrorVal -gt 0 ]\n+\t\tthen\n+\t\t\techo \'GALAXY PARAMETER WARNING: Non-numeric values found for covariate bar (\'$className\') height. Height value ignored and default of 15 used: \'$classHeight\n+\t\telse\n+\t\t\tclassJson=$classJson\'"height": "\'$classHeight\'",\' \n+\t\tfi\n+\t\tclassJson=$classJson\' "position":"\'$(cut -d\'_\' -f1 <<< $classCat)\'","color_map": {"type":"\'$classColorType\'"}}\'\n+\t\tif [ $classIter -lt $classSize ]\t\t\n+\t\tthen\n+\t\t\tclassJson=$classJson\',\'\n+\t\tfi\n+ \tfi\n+done\n+classJson=$classJson\']\'\n+#END: Construct JSON for classification files\n+#echo "CLASSIFICATION JSON: "$classJson\n+\n+#Complete construction of Parameter JSON file by adding all JSON sections created above\n+parmJson=$parmJson$rowConfigJson$colConfigJson$attribJson$matrixJson$classJson\n+parmJson=$parmJson\'}\'\n+#echo "COMPLETED PARAMETER JSON: "$parmJson\n+\n #run R to cluster matrix\n-output="$(R --slave --vanilla --file=$tooldir/CHM_Advanced.R --args $4 $5 $6 $7 $8 $9 ${10} $tdir/ROfile.txt $tdir/COfile.txt $tdir/RDfile.txt $tdir/CDfile.txt ${13} ${14} ${15} ${16} 2>&1)"\n+output="$(R --slave --vanilla --file=$tooldir/CHM_Advanced.R --args $inputMatrix $rowOrder $rowDistance $rowAgglomeration $colOrder $colDistance $colAgglomeration $rowOrderFile $colOrderFile $rowDendroFile $colDendroFile $rowCuts $colCuts $rowLabels $colLabels 2>&1)"\n+# Check for errors from R step, log them if found, and exit script\n rc=$?;\n if [ $rc != 0 ]\n then\n@@ -41,40 +357,13 @@\n if [ `echo "$output" | grep -c "Inf in foreign function call"` -gt 0 ]\n then\n echo "";\n- echo "Note: This error can occur when there is no variation in a row or column. Try a different distance measure or remove rows/columns without variation.";\n- echo "This error may also be caused when a covariate file has inadvertently been selected as an Input Matrix. Check your Input Matrix entry.";\n+ echo "NOTE 1: This error can occur when a covariate file has inadvertently been selected as an Input Matrix. Check your Input Matrix entry.";\n+ echo "NOTE 2: This error can occur when there is no variation in a data rows or columns in the input matrix. Try a different distance measure or remove rows/columns without variation.";\n fi\n exit $rc;\n fi\n \n-#there are a variable number of triplicate parameters for classification bars\n-count=0\n-classifications=\'\'\n-\n-#if row cut was done, add that autogenerated classification\n-if [ ${13} -gt 1 ]\n-then\n- classifications="Class $tdir/ROfile.txt.cut row_categorical color_plot"\n-fi\n-\n-#if col cut was done, add that autogenerated classification\n-if [ ${14} -gt 1 ]\n-then\n- classifications="$classifications Class $tdir/COfile.txt.cut col_categorical color_plot"\n-fi\n-\n-#now add the user provided classification files \n-for i in "$@"; do\n- if [ $count -gt 20 ]\n- then\n-# echo "class entry: " $i\n- classifications=$classifications\' \'$i\n- fi\n- count=$((count+1))\n-done\n-#echo "classifications: " $classifications\n-\n-#call java program to generate NGCHM viewer files.\n-java -jar $tooldir/GalaxyMapGen.jar "${1}" "${2}" "${3}" DataLayer1 $4 linear ${15} ${16} $5 $6 $7 $tdir/ROfile.txt $tdir/RDfile.txt "${17}" "${19}" $8 $9 ${10} $tdir/COfile.txt $tdir/CDfile.txt "${18}" "${20}" ${11} "${21}" $classifications \n+#Call java program to generate NGCHM viewer files.\n+java -jar $tooldir/GalaxyMapGen.jar "$parmJson"\n #clean up tempdir\n rm -rf $tdir\n' |
b |
diff -r 15c71ed09efa -r 1f13d304ddbd mda_advanced_heatmap_gen.xml --- a/mda_advanced_heatmap_gen.xml Thu Nov 08 14:59:57 2018 -0500 +++ b/mda_advanced_heatmap_gen.xml Thu Jun 20 11:36:53 2019 -0400 |
b |
b'@@ -2,30 +2,76 @@\n <tool id="mda_advanced_heatmap_gen" name="Advanced NG-CHM Generator" version="2.3">\r\n <requirements>\r\n <requirement type="package" version="3.4.1">r-base</requirement> \r\n-\t <requirement type="package" version="8">openjdk</requirement>\r\n+\t\t<requirement type="package" version="8.0.144">openjdk</requirement>\r\n </requirements>\r\n <description> Create Clustered Heat Maps with Advanced Options</description>\r\n-<command interpreter="bash" detect_errors="aggressive">$__tool_directory__/heatmap_advanced.sh \'advanced\' \'Heat_Map_$hmname\' \'$hmdesc\' \'$inputmatrix\' ${d_rows.rowOrderMethod} ${d_rows.rowDistanceMeasure} ${d_rows.rowAgglomerationMethod} ${d_cols.columnOrderMethod} ${d_cols.columnDistanceMeasure} ${d_cols.columnAgglomerationMethod} $summarymethod \'$__tool_directory__;$__tool_data_path__\' ${d_rows.rowDendroCut} ${d_cols.colDendroCut} $rowDataType $colDataType \'c_${d_rows.rcutrows.rowDendroTreeCut}\' \'c_${d_cols.ccutrows.colDendroTreeCut}\' \'t_$rowTopItems\' \'t_$colTopItems\' \r\n-\r\n- "\r\n+<command interpreter="bash" detect_errors="aggressive">$__tool_directory__/heatmap_advanced.sh "$__tool_directory__" "$__tool_data_path__/" "chm_name|Heat_Map_$hmname" "chm_description|$hmdesc" "summary_width|$summaryDisplayWidth"\r\n+\t"row_configuration|order_method|${d_rows.rowOrderMethod}|distance_metric|${d_rows.rowDistanceMeasure}|agglomeration_method|${d_rows.rowAgglomerationMethod}|tree_covar_cuts|${d_rows.rowDendroCut}|data_type|$rowDataType|top_items|$rowTopItems|tree_cuts|${d_rows.rcutrows.rowDendroTreeCut}|${d_rows.rcutrows.raddcuts}|dendro_show|${d_rows.rowDendroShow}|dendro_height|${d_rows.rowDendroHeight}" \r\n+\t"col_configuration|order_method|${d_cols.columnOrderMethod}|distance_metric|${d_cols.columnDistanceMeasure}|agglomeration_method|${d_cols.columnAgglomerationMethod}|tree_covar_cuts|${d_cols.colDendroCut}|data_type|$colDataType|top_items|$colTopItems|tree_cuts|${d_cols.ccutrows.colDendroTreeCut}|${d_cols.ccutrows.caddcuts}|dendro_show|${d_cols.columnDendroShow}|dendro_height|${d_cols.columnDendroHeight}" \r\n #for $attr in $hm_attribute\r\n- \'${attr.attrbute_key}\':\'${attr.attrbute_value}\';\r\n+ \'attribute|${attr.attrbute_key}\':\'${attr.attrbute_value}\'\r\n #end for\r\n- "\r\n-\r\n+ #for $mx in $matrices\r\n+\t \'matrix_files|path|$mx.dataLayer|name|${mx.dataLayerName}|summary_method|${mx.summarymethod}|selection_color|${mx.dataLayerSelectionColor}|cuts_color|${mx.dataLayerCutsColor}|grid_color|${mx.dataLayerGridColor}|grid_show|${mx.dataLayerGridShow}|${mx.colorsBreaks.setColorsBreaks}|${mx.colorsBreaks.matrixColor1}|${mx.colorsBreaks.matrixColor2}|${mx.colorsBreaks.matrixColor3}|${mx.colorsBreaks.matrixBreak1}|${mx.colorsBreaks.matrixBreak2}|${mx.colorsBreaks.matrixBreak3}|${mx.colorsBreaks.missingColor}\'\r\n+ #end for\r\n #for $op in $operations\r\n- \'${op.class_name}\'\r\n- \'${op.repeatinput.file_name}\'\r\n- \'${op.cattype.cat}\'\r\n- \'${op.cattype.bartype}\'\r\n- #end for\r\n- \t\'$output\' \r\n+ \'classification|name|${op.class_name}|path|${op.repeatinput.file_name}|category|${op.cattype.cat}|bar_type|${op.cattype.scatbar.bartype}|height|${op.classHeight}|fg_color|${op.cattype.scatbar.fg_color}|bg_color|${op.cattype.scatbar.bg_color}\'\r\n+ #end for\r\n+ \t\'output_location|$output\' \r\n </command>\r\n \t<stdio>\r\n <exit_code range="1:" level="fatal" />\r\n \t</stdio>\r\n <inputs>\r\n- <param name="inputmatrix" type="data" format="Tabular" label="Input Data Matrix" help="Tab delimited text file with row labels, column labels, and data."/>\r\n+ <repeat name="matrices" title="Heat Map Matrices">\r\n+ \t<param name="dataLayer" type="data" format="Tabular" label="Input Data Matrix" help="Tab delimited text file with row labels, column labels, and data."/>\r\n+ \t<param name="dataLayerName" size="40" type="text" value="Data_Layer_name" label="Data Layer Name" help="Name for data layer (no spaces).">\r\n+ <sanitizer>\r\n+ <valid>\r\n+ <add'..b'tinuous">\r\n-\t\t \t\t<param name="bartype" type="select" label="Display Type">\r\n-\t\t\t\t <option value="color_plot" >Standard</option>\r\n-\t\t\t\t <option value="bar_plot" >Bar Plot</option>\r\n-\t\t\t\t <option value="scatter_plot" >Scatter Plot</option>\r\n-\t\t\t\t</param>\r\n+ \t\t<conditional name="scatbar">\r\n+\t\t\t \t\t<param name="bartype" type="select" label="Display Type">\r\n+\t\t\t\t\t <option value="color_plot" >Standard</option>\r\n+\t\t\t\t\t <option value="bar_plot" >Bar Plot</option>\r\n+\t\t\t\t\t <option value="scatter_plot" >Scatter Plot</option>\r\n+\t\t\t\t\t</param>\r\n+\t \t\t<when value="color_plot">\r\n+ \t\t\t\t\t\t<param name="bg_color" type="text" size="0" hidden="true" value="#ffffff"/>\r\n+ \t\t\t\t\t\t<param name="fg_color" type="text" size="0" hidden="true" value="#000000"/>\r\n+\t \t\t</when>\r\n+\t \t\t<when value="bar_plot">\r\n+ \t\t\t\t\t\t<param name="bg_color" type="color" label="Color for Bar Plot Background" value="#ffffff"/>\r\n+ \t\t\t\t\t\t<param name="fg_color" type="color" label="Color for Bar Plot Foreground" value="#000000"/>\r\n+\t \t\t</when>\r\n+\t \t\t<when value="scatter_plot">\r\n+ \t\t\t\t\t\t<param name="bg_color" type="color" label="Color for Scatter Plot Background" value="#ffffff"/>\r\n+ \t\t\t\t\t\t<param name="fg_color" type="color" label="Color for Scatter Plot Foreground" value="#000000"/>\r\n+\t \t\t</when>\r\n+\t \t</conditional>\r\n \t </when>\r\n \t <when value="column_continuous">\r\n-\t\t \t\t<param name="bartype" type="select" label="Display Type">\r\n-\t\t\t\t <option value="color_plot" >Standard</option>\r\n-\t\t\t\t <option value="bar_plot" >Bar Plot</option>\r\n-\t\t\t\t <option value="scatter_plot" >Scatter Plot</option>\r\n-\t\t\t\t</param>\r\n+ \t\t<conditional name="scatbar">\r\n+\t\t\t \t\t<param name="bartype" type="select" label="Display Type">\r\n+\t\t\t\t\t <option value="color_plot" >Standard</option>\r\n+\t\t\t\t\t <option value="bar_plot" >Bar Plot</option>\r\n+\t\t\t\t\t <option value="scatter_plot" >Scatter Plot</option>\r\n+\t\t\t\t\t</param>\r\n+\t \t\t<when value="color_plot">\r\n+ \t\t\t\t\t\t<param name="bg_color" type="text" size="0" hidden="true" value="#ffffff"/>\r\n+ \t\t\t\t\t\t<param name="fg_color" type="text" size="0" hidden="true" value="#000000"/>\r\n+\t \t\t</when>\r\n+\t \t\t<when value="bar_plot">\r\n+ \t\t\t\t\t\t<param name="bg_color" type="color" label="Color for Bar Plot Background" value="#ffffff"/>\r\n+ \t\t\t\t\t\t<param name="fg_color" type="color" label="Color for Bar Plot Foreground" value="#000000"/>\r\n+\t \t\t</when>\r\n+\t \t\t<when value="scatter_plot">\r\n+ \t\t\t\t\t\t<param name="bg_color" type="color" label="Color for Scatter Plot Background" value="#ffffff"/>\r\n+ \t\t\t\t\t\t<param name="fg_color" type="color" label="Color for Scatter Plot Foreground" value="#000000"/>\r\n+\t \t\t</when>\r\n+\t \t</conditional>\r\n \t </when>\r\n-\t <when value="column_categorical">\r\n-\t \t \t\t<param name="bartype" type="text" hidden="true" value="color_plot"/>\r\n+\t <when value="column_discrete">\r\n+ \t\t<conditional name="scatbar">\r\n+\t\t\t\t\t<param name="bartype" type="select" hidden="true">\r\n+\t\t\t\t\t <option value="color_plot" >Standard</option>\r\n+\t\t\t\t\t</param>\r\n+ \t \t\t<when value="color_plot">\r\n+\t\t\t\t\t\t<param name="bg_color" type="text" size="0" hidden="true" value="#ffffff"/>\r\n+ \t\t\t\t\t\t<param name="fg_color" type="text" size="0" hidden="true" value="#000000"/>\r\n+ \t\t\t\t\t</when>\r\n+\t \t</conditional>\r\n \t </when>\r\n-\t <when value="row_categorical">\r\n-\t \t \t\t<param name="bartype" type="text" hidden="true" value="color_plot"/>\r\n+\t <when value="row_discrete">\r\n+ \t\t<conditional name="scatbar">\r\n+\t\t\t\t\t<param name="bartype" type="select" hidden="true">\r\n+\t\t\t\t\t <option value="color_plot" >Standard</option>\r\n+\t\t\t\t\t</param>\r\n+ \t \t\t<when value="color_plot">\r\n+\t\t\t\t\t\t<param name="bg_color" type="text" size="0" hidden="true" value="#ffffff"/>\r\n+ \t\t\t\t\t\t<param name="fg_color" type="text" size="0" hidden="true" value="#000000"/>\r\n+ \t\t\t\t\t</when>\r\n+\t \t</conditional>\r\n \t </when>\r\n \t \t</conditional>\r\n </repeat> \r\n' |
b |
diff -r 15c71ed09efa -r 1f13d304ddbd mda_heatmap_viz.zip |
b |
Binary file mda_heatmap_viz.zip has changed |