ffa6bd5dfd1cc374ce42d970a504f1dc9688935f
kate
Mon May 1 13:37:56 2017 -0700
Allow custom labeling of bar chart values on details page. And update file that should have been in previous commit (viewlimits fix). refs #18736
diff --git src/hg/hgc/barChartClick.c src/hg/hgc/barChartClick.c
index 5df13b4..cba6d0dd 100644
--- src/hg/hgc/barChartClick.c
+++ src/hg/hgc/barChartClick.c
@@ -323,40 +323,44 @@
printf("
\n", pngTn.forHtml);
else
warn("Error creating boxplot from sample data");
}
void doBarChartDetails(struct trackDb *tdb, char *item)
/* Details of barChart item */
{
int start = cartInt(cart, "o");
int end = cartInt(cart, "t");
struct barChartBed *chartItem = getBarChart(tdb, item, seqName, start, end);
if (chartItem == NULL)
errAbort("Can't find item %s in barChart table/file %s\n", item, tdb->table);
genericHeader(tdb, item);
+printf("%s: %s
\n", trackDbSettingClosestToHomeOrDefault(tdb, "bedNameLabel", "Item"),
+ chartItem->name);
int categId;
float highLevel = barChartMaxValue(chartItem, &categId);
char *units = trackDbSettingClosestToHomeOrDefault(tdb, BAR_CHART_UNIT, "units");
-printf("Maximum median value: %0.2f %s in %s
\n",
- highLevel, units, barChartUiGetCategoryLabelById(categId, database, tdb));
-printf("Total all medians: %0.2f %s
\n", barChartTotalValue(chartItem), units);
+char *metric = trackDbSettingClosestToHomeOrDefault(tdb, BAR_CHART_METRIC, "");
+printf("Total all %s values: %0.2f %s
\n", metric, barChartTotalValue(chartItem), units);
+printf("Maximum %s value: %0.2f %s in %s
\n",
+ metric, highLevel, units, barChartUiGetCategoryLabelById(categId, database, tdb));
printf("Score: %d
\n", chartItem->score);
printf("Genomic position: "
"%s %s:%d-%d
\n",
database, hgTracksPathAndSettings(), database,
chartItem->chrom, chartItem->chromStart+1, chartItem->chromEnd,
chartItem->chrom, chartItem->chromStart+1, chartItem->chromEnd);
+printf("Strand: %s\n", chartItem->strand);
struct barChartItemData *vals = getSampleVals(tdb, chartItem);
if (vals != NULL)
{
// Print boxplot
puts("
");
char *df = makeDataFrame(tdb->table, vals);
char *colorFile = makeColorFile(tdb);
printBoxplot(df, item, units, colorFile);
}
puts("
");
printTrackHtml(tdb);
}