src/hg/instinct/hgHeatmap2/hgHeatmap2.c 1.86

1.86 2010/03/17 01:29:29 jsanborn
added proportions summary view
Index: src/hg/instinct/hgHeatmap2/hgHeatmap2.c
===================================================================
RCS file: /projects/compbio/cvsroot/kent/src/hg/instinct/hgHeatmap2/hgHeatmap2.c,v
retrieving revision 1.85
retrieving revision 1.86
diff -b -B -U 4 -r1.85 -r1.86
--- src/hg/instinct/hgHeatmap2/hgHeatmap2.c	16 Mar 2010 19:45:00 -0000	1.85
+++ src/hg/instinct/hgHeatmap2/hgHeatmap2.c	17 Mar 2010 01:29:29 -0000	1.86
@@ -1069,9 +1069,9 @@
 
 }
 
 void drawGenomeSummary(struct json *js, struct genoHeatmap *gh, char *chromStart, 
-		       char *chromEnd, int width, int sampleHeight)
+		       char *chromEnd, char *summaryType, int width, int sampleHeight)
 {
 if (!gh)
     return;
 
@@ -1099,9 +1099,10 @@
 struct slName **ptSubsets = NULL;
 int ifSubsets = getSubsetsIfAny(gh, subsetNum, raName, &ptSubsets);
 if (!ifSubsets)
     {
-    char *gGif = genomeSummaryGif(conn, hl, gh, gh->sampleList, totalHeight, 1, 1);
+    char *gGif = genomeSummaryGif(conn, hl, gh, gh->sampleList, 
+				  summaryType, totalHeight, 1, 1);
     jsonAddString(js, "heatmap", gGif);
     
     char *sGif = simpleScaleGif(hl, gh, 1, 1);
     jsonAddString(js, "scale", sGif);
@@ -1119,9 +1120,10 @@
 	    continue;
 
 	heatmapLayResetMinMax(hl);
 
-	char *gGif = genomeSummaryGif(conn, hl, gh, ptSubsets[i], height, i, subsetNum);
+	char *gGif = genomeSummaryGif(conn, hl, gh, ptSubsets[i], 
+				      summaryType, height, i, subsetNum);
 	char heatStr[128];
 	safef(heatStr, sizeof(heatStr), "heatmap%d", i+1);
 	jsonAddString(js, heatStr, gGif);
 
@@ -1135,9 +1137,9 @@
 hFreeConn(&conn);
 }
 
 void drawGenesetSummary(struct json *js, struct genoHeatmap *gh, char *geneSetNames, 
-			char *userGeneset, int width, int height)
+			char *userGeneset, char *summaryType, int width, int height)
 {
 if (!gh || !geneSetNames)
     return;
 
@@ -1157,9 +1159,10 @@
 
 int totalHeight = heatmapHeight(gh) * hl->sampleHeight;
 if (!ifSubsets)
     {
-    char *gGif = genesetSummaryGif(conn, hl, gh, gh->sampleList, totalHeight, 1, 1);
+    char *gGif = genesetSummaryGif(conn, hl, gh, gh->sampleList, 
+				   summaryType, totalHeight, 1, 1);
     jsonAddString(js, "heatmap", gGif);
 
     char *sGif = simpleScaleGif(hl, gh, 1, 1);
     jsonAddString(js, "scale", sGif); 
@@ -1175,9 +1178,10 @@
 	if (!ptSubsets[i])
 	    continue;
 	heatmapLayResetMinMax(hl);
 
-	char *gGif = genesetSummaryGif(conn, hl, gh, ptSubsets[i], height, i, subsetNum);
+	char *gGif = genesetSummaryGif(conn, hl, gh, ptSubsets[i], 
+				       summaryType, height, i, subsetNum);
 	char heatStr[128];
 	safef(heatStr, sizeof(heatStr), "heatmap%d", i+1);
 	jsonAddString(js, heatStr, gGif);
 
@@ -1663,17 +1667,18 @@
 if (sameString(type, "chrom"))
     {
     char *chromStart = cartOptionalString(cart, hgh2ChromStart);
     char *chromEnd = cartOptionalString(cart, hgh2ChromEnd);
+    char *summaryType = cartUsualString(cart, hgh2SummaryType, "tukey");
 
-    drawGenomeSummary(js, gh, chromStart, chromEnd, width, sampleHeight);
+    drawGenomeSummary(js, gh, chromStart, chromEnd, summaryType, width, sampleHeight);
     }
 else if (sameString(type, "geneset"))
     {
     char *geneSets = cartOptionalString(cart, hgh2GeneSets);
     char *userGeneset = cartOptionalString(cart, hgh2UserGeneSet);
-
-    drawGenesetSummary(js, gh, geneSets, userGeneset, width, sampleHeight);
+    char *summaryType = cartUsualString(cart, hgh2SummaryType, "tukey");
+    drawGenesetSummary(js, gh, geneSets, userGeneset, summaryType, width, sampleHeight);
     }
 else
     errAbort("Unhandled type %s, mode = getHeatmaps", type);