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); }