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("<img src = \"%s\" border=1><br>\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("<b>%s: </b>%s<br>\n", trackDbSettingClosestToHomeOrDefault(tdb, "bedNameLabel", "Item"), + chartItem->name); int categId; float highLevel = barChartMaxValue(chartItem, &categId); char *units = trackDbSettingClosestToHomeOrDefault(tdb, BAR_CHART_UNIT, "units"); -printf("<b>Maximum median value: </b> %0.2f %s in %s<br>\n", - highLevel, units, barChartUiGetCategoryLabelById(categId, database, tdb)); -printf("<b>Total all medians: </b> %0.2f %s<br>\n", barChartTotalValue(chartItem), units); +char *metric = trackDbSettingClosestToHomeOrDefault(tdb, BAR_CHART_METRIC, ""); +printf("<b>Total all %s values: </b> %0.2f %s<br>\n", metric, barChartTotalValue(chartItem), units); +printf("<b>Maximum %s value: </b> %0.2f %s in %s<br>\n", + metric, highLevel, units, barChartUiGetCategoryLabelById(categId, database, tdb)); printf("<b>Score: </b> %d<br>\n", chartItem->score); printf("<b>Genomic position: " "</b>%s <a href='%s&db=%s&position=%s%%3A%d-%d'>%s:%d-%d</a><br>\n", database, hgTracksPathAndSettings(), database, chartItem->chrom, chartItem->chromStart+1, chartItem->chromEnd, chartItem->chrom, chartItem->chromStart+1, chartItem->chromEnd); +printf("<b>Strand: </b> %s\n", chartItem->strand); struct barChartItemData *vals = getSampleVals(tdb, chartItem); if (vals != NULL) { // Print boxplot puts("<p>"); char *df = makeDataFrame(tdb->table, vals); char *colorFile = makeColorFile(tdb); printBoxplot(df, item, units, colorFile); } puts("<br>"); printTrackHtml(tdb); }