06257075cb492d423ed0c96a749ea64e2fe96f61 kate Wed Feb 1 15:51:33 2017 -0800 Further work on details page for barchart. refs #18736 diff --git src/hg/inc/barChartUi.h src/hg/inc/barChartUi.h index deb571d..ea78718 100644 --- src/hg/inc/barChartUi.h +++ src/hg/inc/barChartUi.h @@ -12,44 +12,67 @@ /* Color scheme from user */ #define BAR_CHART_COLORS_USER "user" #define BAR_CHART_COLORS_DEFAULT BAR_CHART_COLORS_USER /* Data transform */ // WARNING: this also appears in JS #define BAR_CHART_LOG_TRANSFORM "logTransform" #define BAR_CHART_LOG_TRANSFORM_DEFAULT TRUE /* Viewing limits */ // WARNING: this also appears in JS #define BAR_CHART_MAX_LIMIT "maxLimit" #define BAR_CHART_MAX_LIMIT_DEFAULT 300 /* TODO: Get default from trackDb ? */ +/* Category (bar) info */ +#define BAR_CHART_MAX_CATEGORIES 100 + /* Category filter */ #define BAR_CHART_CATEGORY_SELECT "categories" +/* Labels for categories */ +#define BAR_CHART_CATEGORY_LABELS "barChartBars" +#define BAR_CHART_CATEGORY_LABEL "barChartLabel" +#define BAR_CHART_CATEGORY_LABEL_DEFAULT "Categories" + /* Suppress whiteout behind graph (to show highlight and blue lines) */ #define BAR_CHART_NO_WHITEOUT "noWhiteout" #define BAR_CHART_NO_WHITEOUT_DEFAULT FALSE void barChartCfgUi(char *database, struct cart *cart, struct trackDb *tdb, char *track, char *title, boolean boxed); /* Bar chart track type */ #define barChartAutoSqlString \ "table barChartBed\n" \ "\"BED6+ with additional fields for category count and values\"\n" \ "(\n" \ "string chrom; \"Reference sequence chromosome or scaffold\"\n" \ "uint chromStart; \"Start position in chromosome\"\n" \ "uint chromEnd; \"End position in chromosome\"\n" \ "string name; \"Item identifier\"\n" \ "uint score; \"Score from 0-1000; derived from total median all categories (log-transformed and scaled)\"\n" \ "char[1] strand; \"+ or - for strand\"\n" \ "uint expCount; \"Number of categories\"\n" \ "float[expCount] expScores; \"Comma separated list of category values\"\n" \ ")\n" double barChartUiMaxMedianScore(); /* Max median score, for scaling */ +struct barChartCategory *barChartUiGetCategories(char *database, struct trackDb *tdb); +/* Get category colors and descriptions. + * If barChartLabel setting contains label list, assign rainbow colors. + * O/w look for a table naed track+Category, and use labels and colors there */ + +struct barChartCategory *barChartUiGetCategoryById(int id, char *database, + struct trackDb *tdb); +/* Get category info by id */ + +char *barChartUiGetCategoryLabelById(int id, char *database, struct trackDb *tdb); +/* Get label for a category id */ + +char *barChartUiGetLabel(char *database, struct trackDb *tdb); +/* Get label for category list */ + #endif /* BAR_CHARTUI_H */