3baff3293826c9828f1a4f073edb910fe5afc9cc
kate
Mon Apr 24 15:33:39 2017 -0700
Add default string for units, needed by R script args. refs #18736
diff --git src/hg/hgc/barChartClick.c src/hg/hgc/barChartClick.c
index b01c160..4bfeef7 100644
--- src/hg/hgc/barChartClick.c
+++ src/hg/hgc/barChartClick.c
@@ -305,45 +305,46 @@
}
static void printBoxplot(char *df, char *item, char *units, char *colorFile)
/* Plot data frame to image file and include in HTML */
{
struct tempName pngTn;
trashDirFile(&pngTn, "hgc", "barChart", ".png");
/* Exec R in quiet mode, without reading/saving environment or workspace */
char cmd[256];
safef(cmd, sizeof(cmd), "Rscript --vanilla --slave hgcData/barChartBoxplot.R %s %s %s %s %s",
item, units, colorFile, df, pngTn.forHtml);
int ret = system(cmd);
if (ret == 0)
printf("
\n", pngTn.forHtml);
+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);
int categId;
float highLevel = barChartMaxValue(chartItem, &categId);
-char *units = trackDbSettingClosestToHomeOrDefault(tdb, BAR_CHART_UNIT, "");
+char *units = trackDbSettingClosestToHomeOrDefault(tdb, BAR_CHART_UNIT, "units");
printf("Maximum value: %0.2f %s in %s
\n",
highLevel, units, barChartUiGetCategoryLabelById(categId, database, tdb));
printf("Total all values: %0.2f
\n", barChartTotalValue(chartItem));
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);
struct barChartItemData *vals = getSampleVals(tdb, chartItem);
if (vals != NULL)
{
// Print boxplot
puts("
"); char *df = makeDataFrame(tdb->table, vals);