cellbrowser 1.2.10__tar.gz → 1.2.12__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {cellbrowser-1.2.10/src/cbPyLib/cellbrowser.egg-info → cellbrowser-1.2.12}/PKG-INFO +1 -1
- {cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/_version.py +4 -4
- {cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/cbWeb/js/cellBrowser.js +67 -42
- {cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/cbWeb/js/maxPlot.js +20 -10
- {cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/cellbrowser.py +1 -1
- {cellbrowser-1.2.10 → cellbrowser-1.2.12/src/cbPyLib/cellbrowser.egg-info}/PKG-INFO +1 -1
- {cellbrowser-1.2.10 → cellbrowser-1.2.12}/LICENSE +0 -0
- {cellbrowser-1.2.10 → cellbrowser-1.2.12}/MANIFEST.in +0 -0
- {cellbrowser-1.2.10 → cellbrowser-1.2.12}/README.rst +0 -0
- {cellbrowser-1.2.10 → cellbrowser-1.2.12}/setup.cfg +0 -0
- {cellbrowser-1.2.10 → cellbrowser-1.2.12}/setup.py +0 -0
- {cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/RangeHTTPServer/__init__.py +0 -0
- {cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/RangeHTTPServer/__main__.py +0 -0
- {cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/R/cellbrowser.R +0 -0
- {cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/__init__.py +0 -0
- {cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/cbWeb/css/MaterialIcons-Regular.eot +0 -0
- {cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/cbWeb/css/MaterialIcons-Regular.ttf +0 -0
- {cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/cbWeb/css/MaterialIcons-Regular.woff +0 -0
- {cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/cbWeb/css/MaterialIcons-Regular.woff2 +0 -0
- {cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/cbWeb/css/cellBrowser.css +0 -0
- {cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/cbWeb/ext/Chart.bundle.min.js +0 -0
- {cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/cbWeb/ext/FastBitSet.js +0 -0
- {cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/cbWeb/ext/FileSaver.1.1.20151003.min.js +0 -0
- {cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/cbWeb/ext/OverlayScrollbars.min.css +0 -0
- {cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/cbWeb/ext/bootstrap-dropmenu.min.css +0 -0
- {cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/cbWeb/ext/bootstrap-submenu.js +0 -0
- {cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/cbWeb/ext/bootstrap-submenu.min.css +0 -0
- {cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/cbWeb/ext/bootstrap.3.3.7.min.css +0 -0
- {cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/cbWeb/ext/bootstrap.min.css +0 -0
- {cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/cbWeb/ext/bootstrap.min.js +0 -0
- {cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/cbWeb/ext/chartjs-chart-box-and-violin-plot.js +0 -0
- {cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/cbWeb/ext/chosen-sprite.png +0 -0
- {cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/cbWeb/ext/chosen-sprite@2x.png +0 -0
- {cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/cbWeb/ext/chosen.1.8.2.min.css +0 -0
- {cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/cbWeb/ext/chosen.jquery.min.js +0 -0
- {cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/cbWeb/ext/drawImage-clipper.js +0 -0
- {cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/cbWeb/ext/font-awesome.css +0 -0
- {cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/cbWeb/ext/googleMaterialIcons.css +0 -0
- {cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/cbWeb/ext/hamster.js +0 -0
- {cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/cbWeb/ext/images/ui-bg_flat_0_aaaaaa_40x100.png +0 -0
- {cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/cbWeb/ext/images/ui-icons_444444_256x240.png +0 -0
- {cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/cbWeb/ext/images/ui-icons_555555_256x240.png +0 -0
- {cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/cbWeb/ext/images/ui-icons_777620_256x240.png +0 -0
- {cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/cbWeb/ext/images/ui-icons_777777_256x240.png +0 -0
- {cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/cbWeb/ext/images/ui-icons_cc0000_256x240.png +0 -0
- {cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/cbWeb/ext/images/ui-icons_ffffff_256x240.png +0 -0
- {cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/cbWeb/ext/intro.min.js +0 -0
- {cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/cbWeb/ext/introjs.2.4.0.min.css +0 -0
- {cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/cbWeb/ext/jquery-ui-1.12.1.css +0 -0
- {cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/cbWeb/ext/jquery-ui.min.js +0 -0
- {cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/cbWeb/ext/jquery.3.1.1.min.js +0 -0
- {cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/cbWeb/ext/jquery.contextMenu.css +0 -0
- {cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/cbWeb/ext/jquery.contextMenu.js +0 -0
- {cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/cbWeb/ext/jquery.event.drag-2.3.0.js +0 -0
- {cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/cbWeb/ext/jquery.overlayScrollbars.min.js +0 -0
- {cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/cbWeb/ext/jquery.sparkline.min.js +0 -0
- {cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/cbWeb/ext/jquery.tablesorter.js +0 -0
- {cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/cbWeb/ext/jquery.tablesorter.widgets.js +0 -0
- {cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/cbWeb/ext/jquery.tipsy.1.0.3.min.css +0 -0
- {cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/cbWeb/ext/jquery.tipsy.min.js +0 -0
- {cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/cbWeb/ext/jquery.ui.position.min.js +0 -0
- {cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/cbWeb/ext/jsurl2.js +0 -0
- {cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/cbWeb/ext/lz-string.js +0 -0
- {cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/cbWeb/ext/materialIcons.woff +0 -0
- {cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/cbWeb/ext/minified.js +0 -0
- {cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/cbWeb/ext/mousetrap.min.js +0 -0
- {cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/cbWeb/ext/normalizeWheel.js +0 -0
- {cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/cbWeb/ext/pako_inflate.min.js +0 -0
- {cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/cbWeb/ext/palette.js +0 -0
- {cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/cbWeb/ext/papaparse.min.js +0 -0
- {cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/cbWeb/ext/reorder.v1.js +0 -0
- {cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/cbWeb/ext/scaleColorPerceptual.js +0 -0
- {cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/cbWeb/ext/science.v1.js +0 -0
- {cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/cbWeb/ext/select2.4.0.4.min.css +0 -0
- {cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/cbWeb/ext/select2.min.js +0 -0
- {cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/cbWeb/ext/selectize.bootstrap3.css +0 -0
- {cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/cbWeb/ext/selectize.js +0 -0
- {cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/cbWeb/ext/slick.cellrangedecorator.js +0 -0
- {cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/cbWeb/ext/slick.cellrangeselector.js +0 -0
- {cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/cbWeb/ext/slick.cellselectionmodel.js +0 -0
- {cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/cbWeb/ext/slick.core.js +0 -0
- {cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/cbWeb/ext/slick.editors.js +0 -0
- {cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/cbWeb/ext/slick.examples.css +0 -0
- {cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/cbWeb/ext/slick.formatters.js +0 -0
- {cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/cbWeb/ext/slick.grid.css +0 -0
- {cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/cbWeb/ext/slick.grid.js +0 -0
- {cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/cbWeb/ext/spectrum-1.8.0.css +0 -0
- {cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/cbWeb/ext/spectrum.min.js +0 -0
- {cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/cbWeb/ext/split.js +0 -0
- {cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/cbWeb/ext/tablesort.js +0 -0
- {cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/cbWeb/ext/tablesort.number.min.js +0 -0
- {cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/cbWeb/ext/temp/node_modules/scale-color-perceptual/.npmignore +0 -0
- {cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/cbWeb/ext/temp/node_modules/scale-color-perceptual/LICENSE +0 -0
- {cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/cbWeb/ext/temp/node_modules/scale-color-perceptual/Makefile +0 -0
- {cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/cbWeb/ext/temp/node_modules/scale-color-perceptual/README.md +0 -0
- {cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/cbWeb/ext/temp/node_modules/scale-color-perceptual/browser.js +0 -0
- {cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/cbWeb/ext/temp/node_modules/scale-color-perceptual/build.js +0 -0
- {cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/cbWeb/ext/temp/node_modules/scale-color-perceptual/example/d3-random-matrix.js +0 -0
- {cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/cbWeb/ext/temp/node_modules/scale-color-perceptual/example/example.png +0 -0
- {cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/cbWeb/ext/temp/node_modules/scale-color-perceptual/example/gradients.js +0 -0
- {cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/cbWeb/ext/temp/node_modules/scale-color-perceptual/example/package.json +0 -0
- {cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/cbWeb/ext/temp/node_modules/scale-color-perceptual/hex/inferno.json +0 -0
- {cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/cbWeb/ext/temp/node_modules/scale-color-perceptual/hex/magma.json +0 -0
- {cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/cbWeb/ext/temp/node_modules/scale-color-perceptual/hex/plasma.json +0 -0
- {cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/cbWeb/ext/temp/node_modules/scale-color-perceptual/hex/viridis.json +0 -0
- {cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/cbWeb/ext/temp/node_modules/scale-color-perceptual/inferno.js +0 -0
- {cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/cbWeb/ext/temp/node_modules/scale-color-perceptual/magma.js +0 -0
- {cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/cbWeb/ext/temp/node_modules/scale-color-perceptual/package.json +0 -0
- {cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/cbWeb/ext/temp/node_modules/scale-color-perceptual/plasma.js +0 -0
- {cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/cbWeb/ext/temp/node_modules/scale-color-perceptual/rgb/inferno.json +0 -0
- {cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/cbWeb/ext/temp/node_modules/scale-color-perceptual/rgb/magma.json +0 -0
- {cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/cbWeb/ext/temp/node_modules/scale-color-perceptual/rgb/plasma.json +0 -0
- {cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/cbWeb/ext/temp/node_modules/scale-color-perceptual/rgb/viridis.json +0 -0
- {cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/cbWeb/ext/temp/node_modules/scale-color-perceptual/utils/hex2rgb.js +0 -0
- {cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/cbWeb/ext/temp/node_modules/scale-color-perceptual/utils/interpolate.js +0 -0
- {cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/cbWeb/ext/temp/node_modules/scale-color-perceptual/utils/rgb2hex.js +0 -0
- {cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/cbWeb/ext/temp/node_modules/scale-color-perceptual/viridis.js +0 -0
- {cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/cbWeb/ext/theme.bootstrap_3.css +0 -0
- {cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/cbWeb/ext/tiny-queue.js +0 -0
- {cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/cbWeb/genes/files.json +0 -0
- {cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/cbWeb/genes/hg19.gc34.tsv +0 -0
- {cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/cbWeb/genes/hg19.json.gz +0 -0
- {cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/cbWeb/genes/hg38.gc34.tsv +0 -0
- {cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/cbWeb/genes/hg38.json.gz +0 -0
- {cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/cbWeb/genes/log.txt +0 -0
- {cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/cbWeb/genes/makeGenes.py +0 -0
- {cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/cbWeb/genes/mm10.json.gz +0 -0
- {cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/cbWeb/genes/mm10.vm25.tsv +0 -0
- {cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/cbWeb/img/README.md +0 -0
- {cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/cbWeb/img/center.png +0 -0
- {cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/cbWeb/img/gimpFlat/README.txt +0 -0
- {cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/cbWeb/img/gimpFlat/gtk-justify-left.png +0 -0
- {cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/cbWeb/img/gimpFlat/gtk-save.png +0 -0
- {cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/cbWeb/img/gimpFlat/log.txt +0 -0
- {cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/cbWeb/img/gimpFlat/stock-center-16.png +0 -0
- {cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/cbWeb/img/gimpFlat/stock-center-24.png +0 -0
- {cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/cbWeb/img/gimpFlat/stock-controller-16.png +0 -0
- {cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/cbWeb/img/gimpFlat/stock-controller-24.png +0 -0
- {cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/cbWeb/img/gimpFlat/stock-edit-16.png +0 -0
- {cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/cbWeb/img/gimpFlat/stock-gravity-west-24.png +0 -0
- {cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/cbWeb/img/gimpFlat/stock-info-16.png +0 -0
- {cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/cbWeb/img/gimpFlat/stock-info-24.png +0 -0
- {cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/cbWeb/img/gimpFlat/stock-merge-down-16.png +0 -0
- {cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/cbWeb/img/gimpFlat/stock-scale-16.png +0 -0
- {cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/cbWeb/img/gimpFlat/stock-tool-free-select-16.png +0 -0
- {cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/cbWeb/img/gimpFlat/stock-tool-free-select-22.png +0 -0
- {cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/cbWeb/img/gimpFlat/stock-tool-move-16.png +0 -0
- {cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/cbWeb/img/gimpFlat/stock-tool-move-22.png +0 -0
- {cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/cbWeb/img/gimpFlat/stock-tool-rect-select-16.png +0 -0
- {cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/cbWeb/img/gimpFlat/stock-tool-rect-select-22.png +0 -0
- {cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/cbWeb/img/gimpFlat/stock-tool-zoom-16.png +0 -0
- {cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/cbWeb/img/gimpFlat/stock-tool-zoom-22.png +0 -0
- {cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/cbWeb/img/icons8-help-32.png +0 -0
- {cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/cbWeb/img/info.png +0 -0
- {cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/cbWeb/img/lasso.png +0 -0
- {cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/cbWeb/img/marker.png +0 -0
- {cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/cbWeb/img/move.png +0 -0
- {cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/cbWeb/img/select.png +0 -0
- {cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/cbWeb/img/zoom.png +0 -0
- {cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/cbWeb/js/cbData.js +0 -0
- {cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/cbWeb/js/maxHeat.js +0 -0
- {cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/convert.py +0 -0
- {cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/download.py +0 -0
- {cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/geneinfo.py +0 -0
- {cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/genes.py +0 -0
- {cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/hubmaker.py +0 -0
- {cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/sampleConfig/cellbrowser.conf +0 -0
- {cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/sampleConfig/desc.conf +0 -0
- {cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/sampleConfig/hub.conf +0 -0
- {cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/sampleConfig/scanpy.conf +0 -0
- {cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/sampleConfig/seurat.conf +0 -0
- {cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/sampleConfig/summary.html +0 -0
- {cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/seurat.py +0 -0
- {cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser.egg-info/SOURCES.txt +0 -0
- {cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser.egg-info/dependency_links.txt +0 -0
- {cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser.egg-info/entry_points.txt +0 -0
- {cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser.egg-info/not-zip-safe +0 -0
- {cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser.egg-info/top_level.txt +0 -0
- {cellbrowser-1.2.10 → cellbrowser-1.2.12}/versioneer.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.2
|
|
2
2
|
Name: cellbrowser
|
|
3
|
-
Version: 1.2.
|
|
3
|
+
Version: 1.2.12
|
|
4
4
|
Summary: UCSC Cellbrowser, an interactive browser for single cell data. Includes converters and basic pipelines for text files, Seurat, Scanpy and Cellranger.
|
|
5
5
|
Home-page: https://github.com/maximilianh/cellBrowser
|
|
6
6
|
Author: Maximilian Haeussler
|
|
@@ -8,11 +8,11 @@ import json
|
|
|
8
8
|
|
|
9
9
|
version_json = '''
|
|
10
10
|
{
|
|
11
|
-
"date": "2025-
|
|
12
|
-
"dirty":
|
|
11
|
+
"date": "2025-02-14T09:13:15-0800",
|
|
12
|
+
"dirty": false,
|
|
13
13
|
"error": null,
|
|
14
|
-
"full-revisionid": "
|
|
15
|
-
"version": "1.2.
|
|
14
|
+
"full-revisionid": "5cefb922e5dbfbcb3bc1764cf085d0c834d28e6f",
|
|
15
|
+
"version": "1.2.12"
|
|
16
16
|
}
|
|
17
17
|
''' # END VERSION_JSON
|
|
18
18
|
|
|
@@ -106,6 +106,7 @@ var cellbrowser = function() {
|
|
|
106
106
|
|
|
107
107
|
// maximum number of distinct values that one can color on
|
|
108
108
|
const MAXCOLORCOUNT = 1500;
|
|
109
|
+
const MAXLABELCOUNT = 500;
|
|
109
110
|
|
|
110
111
|
// histograms show only the top X values and summarize the rest into "other"
|
|
111
112
|
var HISTOCOUNT = 12;
|
|
@@ -3225,11 +3226,24 @@ var cellbrowser = function() {
|
|
|
3225
3226
|
return [sel, unsel];
|
|
3226
3227
|
}
|
|
3227
3228
|
|
|
3229
|
+
function log2All(arr) {
|
|
3230
|
+
/* take log2(x+1 of all subarrays */
|
|
3231
|
+
return arr.map(subArr =>
|
|
3232
|
+
subArr.map(num => Math.log2(num + 1))
|
|
3233
|
+
);
|
|
3234
|
+
}
|
|
3235
|
+
|
|
3228
3236
|
function buildViolinFromValues(labelList, dataList) {
|
|
3229
3237
|
/* make a violin plot given the labels and the values for them */
|
|
3230
3238
|
if ("violinChart" in window)
|
|
3231
3239
|
window.violinChart.destroy();
|
|
3232
3240
|
|
|
3241
|
+
let log2Done = false;
|
|
3242
|
+
if (db.conf.matrixArrType.includes("int")) {
|
|
3243
|
+
dataList = log2All(dataList);
|
|
3244
|
+
log2Done = true;
|
|
3245
|
+
}
|
|
3246
|
+
|
|
3233
3247
|
var labelLines = [];
|
|
3234
3248
|
labelLines[0] = labelList[0].split("\n");
|
|
3235
3249
|
labelLines[0].push(dataList[0].length);
|
|
@@ -3261,11 +3275,15 @@ var cellbrowser = function() {
|
|
|
3261
3275
|
};
|
|
3262
3276
|
|
|
3263
3277
|
var yLabel = null;
|
|
3264
|
-
if (db.conf.unit===undefined && db.conf.matrixArrType==="Uint32")
|
|
3278
|
+
if (db.conf.unit===undefined && db.conf.matrixArrType==="Uint32") {
|
|
3265
3279
|
yLabel = "read/UMI count";
|
|
3280
|
+
}
|
|
3266
3281
|
if (db.conf.unit!==undefined)
|
|
3267
3282
|
yLabel = db.conf.unit;
|
|
3268
3283
|
|
|
3284
|
+
if (log2Done)
|
|
3285
|
+
yLabel = "log2("+yLabel+" + 1)";
|
|
3286
|
+
|
|
3269
3287
|
if (yLabel!==null)
|
|
3270
3288
|
optDict.scales = {
|
|
3271
3289
|
yAxes: [{
|
|
@@ -3313,7 +3331,7 @@ var cellbrowser = function() {
|
|
|
3313
3331
|
//}
|
|
3314
3332
|
|
|
3315
3333
|
function buildViolinPlot() {
|
|
3316
|
-
/* create the violin plot, depending on the current selection and the violinField config */
|
|
3334
|
+
/* create the violin plot at the bottom right, depending on the current selection and the violinField config */
|
|
3317
3335
|
var exprVec = gLegend.exprVec;
|
|
3318
3336
|
if (exprVec===undefined)
|
|
3319
3337
|
return;
|
|
@@ -3524,9 +3542,6 @@ var cellbrowser = function() {
|
|
|
3524
3542
|
// label text can be overriden by the user cart
|
|
3525
3543
|
var labelField = db.conf.labelField;
|
|
3526
3544
|
|
|
3527
|
-
if (! db.gLabelCoordCache )
|
|
3528
|
-
db.gLabelCoordCache = {};
|
|
3529
|
-
|
|
3530
3545
|
if (clusterInfo) {
|
|
3531
3546
|
var origLabels = [];
|
|
3532
3547
|
var clusterMids = clusterInfo.labels;
|
|
@@ -3535,7 +3550,6 @@ var cellbrowser = function() {
|
|
|
3535
3550
|
clusterMids = clusterInfo;
|
|
3536
3551
|
}
|
|
3537
3552
|
|
|
3538
|
-
db.gLabelCoordCache[labelField] = clusterMids;
|
|
3539
3553
|
for (var i = 0; i < clusterMids.length; i++) {
|
|
3540
3554
|
origLabels.push(clusterMids[i][2]);
|
|
3541
3555
|
}
|
|
@@ -3555,30 +3569,27 @@ var cellbrowser = function() {
|
|
|
3555
3569
|
function computeAndSetLabels(values, metaInfo) {
|
|
3556
3570
|
/* recompute the label positions and redraw everything. Uses a cache for the label positions */
|
|
3557
3571
|
var labelCoords;
|
|
3558
|
-
if (db.gLabelCoordCache[metaInfo.label] !== undefined) {
|
|
3559
|
-
labelCoords = db.gLabelCoordCache[metaInfo.label];
|
|
3560
|
-
} else {
|
|
3561
|
-
var coords = renderer.coords.orig;
|
|
3562
|
-
var names = null;
|
|
3563
|
-
if (metaInfo.type !== "float" && metaInfo.type !== "int") {
|
|
3564
|
-
var names = metaInfo.ui.shortLabels;
|
|
3565
|
-
}
|
|
3566
3572
|
|
|
3567
|
-
|
|
3573
|
+
var coords = renderer.coords.orig;
|
|
3574
|
+
var names = null;
|
|
3575
|
+
if (metaInfo.type !== "float" && metaInfo.type !== "int") {
|
|
3576
|
+
var names = metaInfo.ui.shortLabels;
|
|
3577
|
+
}
|
|
3578
|
+
|
|
3579
|
+
// console.log(metaInfo);
|
|
3568
3580
|
|
|
3569
|
-
|
|
3570
|
-
|
|
3581
|
+
console.time("cluster centers");
|
|
3582
|
+
var calc = renderer.calcMedian(coords, values, names, metaInfo.origVals);
|
|
3571
3583
|
|
|
3572
|
-
|
|
3573
|
-
|
|
3574
|
-
|
|
3575
|
-
|
|
3576
|
-
|
|
3577
|
-
|
|
3578
|
-
}
|
|
3579
|
-
console.timeEnd("cluster centers");
|
|
3580
|
-
db.gLabelCoordCache[metaInfo.label] = labelCoords;
|
|
3584
|
+
labelCoords = [];
|
|
3585
|
+
for (var label in calc) {
|
|
3586
|
+
var labelInfo = calc[label];
|
|
3587
|
+
var midX = selectMedian(labelInfo[0]);
|
|
3588
|
+
var midY = selectMedian(labelInfo[1]);
|
|
3589
|
+
labelCoords.push([midX, midY, label]);
|
|
3581
3590
|
}
|
|
3591
|
+
console.timeEnd("cluster centers");
|
|
3592
|
+
|
|
3582
3593
|
renderer.setLabelCoords(labelCoords);
|
|
3583
3594
|
setLabelDropdown(metaInfo.name);
|
|
3584
3595
|
}
|
|
@@ -3590,8 +3601,16 @@ var cellbrowser = function() {
|
|
|
3590
3601
|
renderer.setShowLabels(false);
|
|
3591
3602
|
}
|
|
3592
3603
|
else {
|
|
3593
|
-
renderer.setShowLabels(true);
|
|
3594
3604
|
var metaInfo = db.findMetaInfo(labelField);
|
|
3605
|
+
if (metaInfo.valCounts.length > MAXLABELCOUNT) {
|
|
3606
|
+
let valCount = metaInfo.valCounts.length;
|
|
3607
|
+
alert("Error: This field contains "+valCount+" different values. "+
|
|
3608
|
+
"The limit is "+MAXLABELCOUNT+". Too many labels overload the screen.");
|
|
3609
|
+
db.conf.activeLabelField = null;
|
|
3610
|
+
renderer.setShowLabels(false);
|
|
3611
|
+
return;
|
|
3612
|
+
}
|
|
3613
|
+
renderer.setShowLabels(true);
|
|
3595
3614
|
db.conf.activeLabelField = metaInfo.name;
|
|
3596
3615
|
|
|
3597
3616
|
if (metaInfo.arr) // preloaded
|
|
@@ -6009,8 +6028,8 @@ var cellbrowser = function() {
|
|
|
6009
6028
|
/* gene expression viewer: called when user changes the meta field combo box */
|
|
6010
6029
|
var fieldId = parseInt(choice.selected.split("_")[1]);
|
|
6011
6030
|
var metaName = db.getMetaFields()[fieldId].name;
|
|
6012
|
-
debug("changed meta on gene expr view", ev);
|
|
6013
|
-
buildGeneExprPlotsAddGenes(
|
|
6031
|
+
debug("changed meta on gene expr view to "+metaName, ev);
|
|
6032
|
+
buildGeneExprPlotsAddGenes(null, metaName);
|
|
6014
6033
|
}
|
|
6015
6034
|
|
|
6016
6035
|
function onGeneExprGeneComboChange(ev) {
|
|
@@ -6021,7 +6040,7 @@ var cellbrowser = function() {
|
|
|
6021
6040
|
buildGeneExprPlotsAddGenes([geneId], null);
|
|
6022
6041
|
}
|
|
6023
6042
|
|
|
6024
|
-
function
|
|
6043
|
+
function promiseGeneSplitByMeta(locusStr, onProgress, metaArr, metaCount) {
|
|
6025
6044
|
/* A promise for loading the gene data and calculation average expression per meta data value.
|
|
6026
6045
|
Resolves with a geneData object with gene-related attributes, exprMin, exprMax and dotRows. */
|
|
6027
6046
|
/* dotRows is an array of [cellCount, zeroPerc, avg] */
|
|
@@ -6687,7 +6706,7 @@ var cellbrowser = function() {
|
|
|
6687
6706
|
for (let geneId of geneIds) {
|
|
6688
6707
|
geneId = geneId.split("|")[0]; // internal genes sometimes can be in format ENSG-ID|geneSymbol
|
|
6689
6708
|
if (exprData.geneIds.indexOf(geneId)===-1)
|
|
6690
|
-
promises.push(
|
|
6709
|
+
promises.push( promiseGeneSplitByMeta(geneId, geneExprOnProgress, exprData.metaData.arr, exprData.metaData.valCounts.length ));
|
|
6691
6710
|
else
|
|
6692
6711
|
alert("This gene is already on the plot");
|
|
6693
6712
|
}
|
|
@@ -6738,7 +6757,7 @@ var cellbrowser = function() {
|
|
|
6738
6757
|
function buildGeneExprPlotsAddGenes(geneIds, metaName, plotType) {
|
|
6739
6758
|
/* build the plots for the gene expression viewer */
|
|
6740
6759
|
// get meta field from function call or dropdown
|
|
6741
|
-
if (metaName
|
|
6760
|
+
if (metaName===null) {
|
|
6742
6761
|
let metaIdx = document.getElementById("tpGeneExprMetaCombo").value.split("_")[1]; // e.g. tpMetaVal_1
|
|
6743
6762
|
metaName = db.conf.metaFields[metaIdx].name;
|
|
6744
6763
|
} else {
|
|
@@ -6746,18 +6765,14 @@ var cellbrowser = function() {
|
|
|
6746
6765
|
chosenSetValue("tpGeneExprMetaCombo", "tpMetaVal_"+metaIdx);
|
|
6747
6766
|
}
|
|
6748
6767
|
|
|
6749
|
-
|
|
6750
|
-
|
|
6751
|
-
|
|
6752
|
-
|
|
6753
|
-
//}
|
|
6754
|
-
|
|
6755
|
-
//let geneIdStr = geneIds.join("|");
|
|
6768
|
+
if (geneIds===null) {
|
|
6769
|
+
geneIds = exprData.geneIds;
|
|
6770
|
+
exprData = null;
|
|
6771
|
+
}
|
|
6756
6772
|
|
|
6757
6773
|
if (geneIds.length>0)
|
|
6758
6774
|
selectizeSetValue("tpGeneExprGeneCombo", geneIds[0].split("|")[0]);
|
|
6759
6775
|
|
|
6760
|
-
|
|
6761
6776
|
function buildProgressBar(domId) {
|
|
6762
6777
|
var progressDiv = $( "#"+domId );
|
|
6763
6778
|
var progressLabel = progressDiv.children().first();
|
|
@@ -6805,7 +6820,7 @@ var cellbrowser = function() {
|
|
|
6805
6820
|
|
|
6806
6821
|
});
|
|
6807
6822
|
|
|
6808
|
-
//Promise.all([
|
|
6823
|
+
//Promise.all([promiseGeneSplitByMeta(geneId, geneExprOnProgress), promiseMeta(metaName, geneExprOnProgress)]).then( function(resArr) {
|
|
6809
6824
|
// //console.log("promises are all loaded", resArr);
|
|
6810
6825
|
// $( '#progressBarMeta').progressbar( "value", 100); // make sure that the progress bars show "complete"
|
|
6811
6826
|
// $( '#progressBarExpr').progressbar( "value", 100);
|
|
@@ -7897,6 +7912,15 @@ var cellbrowser = function() {
|
|
|
7897
7912
|
renderer.setLabels(newRendLabels);
|
|
7898
7913
|
}
|
|
7899
7914
|
|
|
7915
|
+
function onLegendHover(ev) {
|
|
7916
|
+
/* mouse hovers over legend */
|
|
7917
|
+
var legendId = parseInt(ev.target.id.split("_")[1]);
|
|
7918
|
+
var colorIndex = gLegend.rows[legendId].intKey;
|
|
7919
|
+
var legendLabel = ev.target.innerText;
|
|
7920
|
+
//$("#tpLegendCheckbox_" + colorIndex).click();
|
|
7921
|
+
onClusterNameHover(legendLabel, legendId, ev);
|
|
7922
|
+
}
|
|
7923
|
+
|
|
7900
7924
|
function onLegendLabelClick(ev) {
|
|
7901
7925
|
/* called when user clicks on legend entry. */
|
|
7902
7926
|
|
|
@@ -8297,6 +8321,7 @@ var cellbrowser = function() {
|
|
|
8297
8321
|
$("#tpLegendNotNull").click( function() { legendSetCheckboxes("notNull"); } );
|
|
8298
8322
|
|
|
8299
8323
|
$('.tpLegendLabel').click( onLegendLabelClick ); // clicking the legend should have the same effect as clicking the checkbox
|
|
8324
|
+
$('.tpLegendLabel').on("mouseover", onLegendHover ); // hovering over the legend should have the same effect hovering over the label
|
|
8300
8325
|
//$('.tpLegendLabel').attr( "title", "Click to select samples with this value. Shift click to select multiple values.");
|
|
8301
8326
|
activateTooltip(".tpLegendLabel");
|
|
8302
8327
|
activateTooltip(".tpLegendCount");
|
|
@@ -8738,7 +8763,7 @@ function onClusterNameHover(clusterName, nameIdx, ev) {
|
|
|
8738
8763
|
showTooltip(ev.clientX+15, ev.clientY, labelLines.join("<br>"));
|
|
8739
8764
|
|
|
8740
8765
|
// XX currently, switch off fattening if there is a difference between label/color fields
|
|
8741
|
-
if (db.conf.activeLabelField==db.conf.activeColorField) {
|
|
8766
|
+
if (db.conf.activeLabelField==db.conf.activeColorField && gLegend.type!=="expr") {
|
|
8742
8767
|
var valIdx = findMetaValIndex(metaInfo, clusterName);
|
|
8743
8768
|
drawAndFattenCluster(clusterName, valIdx);
|
|
8744
8769
|
}
|
|
@@ -1270,7 +1270,7 @@ function MaxPlot(div, top, left, width, height, args) {
|
|
|
1270
1270
|
//return count;
|
|
1271
1271
|
//}
|
|
1272
1272
|
|
|
1273
|
-
function blitAll(ctx, off, pxCoords, coordColors, tileWidth, tileHeight, radius, selCells, greyIdx, fatIdx) {
|
|
1273
|
+
function blitAll(ctx, off, pxCoords, coordColors, tileWidth, tileHeight, radius, selCells, greyIdx, fatIdx, colors) {
|
|
1274
1274
|
/* blit the circles onto the main canvas, using all colors */
|
|
1275
1275
|
var count = 0;
|
|
1276
1276
|
var hasSelection = false;
|
|
@@ -1299,6 +1299,11 @@ function MaxPlot(div, top, left, width, height, args) {
|
|
|
1299
1299
|
}
|
|
1300
1300
|
|
|
1301
1301
|
if (fatIdx!==null) {
|
|
1302
|
+
// do not fatten
|
|
1303
|
+
//radius = radius * 2;
|
|
1304
|
+
//let templates = makeCircleTemplates(radius, tileWidth, tileHeight, colors, fatIdx);
|
|
1305
|
+
//let off = templates.off;
|
|
1306
|
+
|
|
1302
1307
|
for (let i = 0; i < pxCoords.length/2; i++) {
|
|
1303
1308
|
col = coordColors[i];
|
|
1304
1309
|
if (fatIdx!==col)
|
|
@@ -1355,7 +1360,7 @@ function MaxPlot(div, top, left, width, height, args) {
|
|
|
1355
1360
|
coordColors = copyColorsOnly(origCoordColors, fatIdx, templates.nonFatImgIdx);
|
|
1356
1361
|
}
|
|
1357
1362
|
|
|
1358
|
-
count = blitAll(ctx, off, pxCoords, coordColors, tileWidth, tileHeight, radius, selCells, templates.greyImgIdx, fatIdx);
|
|
1363
|
+
count = blitAll(ctx, off, pxCoords, coordColors, tileWidth, tileHeight, radius, selCells, templates.greyImgIdx, fatIdx, colors);
|
|
1359
1364
|
if (origCoordColors)
|
|
1360
1365
|
coordColors = origCoordColors;
|
|
1361
1366
|
|
|
@@ -1501,17 +1506,22 @@ function MaxPlot(div, top, left, width, height, args) {
|
|
|
1501
1506
|
var valIdx = coordColors[i];
|
|
1502
1507
|
|
|
1503
1508
|
if (fatIdx!==null) {
|
|
1504
|
-
// fattening mode: fat cluster is black, all the rest is
|
|
1509
|
+
// fattening mode: fat cluster is black, all the rest is blue
|
|
1505
1510
|
let grey;
|
|
1506
|
-
if (valIdx!==fatIdx)
|
|
1511
|
+
if (valIdx!==fatIdx) {
|
|
1507
1512
|
grey = 0xDD;
|
|
1508
|
-
|
|
1509
|
-
|
|
1510
|
-
|
|
1511
|
-
|
|
1512
|
-
|
|
1513
|
-
|
|
1513
|
+
cData[p] = grey;
|
|
1514
|
+
cData[p+1] = grey;
|
|
1515
|
+
cData[p+2] = grey;
|
|
1516
|
+
}
|
|
1517
|
+
else {
|
|
1518
|
+
// stop all transparency, just overdraw fat blue here
|
|
1519
|
+
cData[p] = 0;
|
|
1520
|
+
cData[p+1] = 0;
|
|
1521
|
+
cData[p+2] = 255;
|
|
1522
|
+
}
|
|
1514
1523
|
cData[p+3] = 255; // no transparency... ever?
|
|
1524
|
+
|
|
1515
1525
|
} else {
|
|
1516
1526
|
// normal colors
|
|
1517
1527
|
var oldR = cData[p];
|
|
@@ -5895,7 +5895,7 @@ def cbBuildCli():
|
|
|
5895
5895
|
filtConf.append(cf)
|
|
5896
5896
|
confFnames = filtConf
|
|
5897
5897
|
|
|
5898
|
-
logging.debug("recursive config filenames without anything that contains old/tmp/temp/not-used/marker-recalc: %s" % confFnames)
|
|
5898
|
+
logging.debug("recursive config filenames without anything that contains old/tmp/temp/not-used/orig/ignore/skip/marker-recalc: %s" % confFnames)
|
|
5899
5899
|
for cf in confFnames:
|
|
5900
5900
|
logging.info("Recursive mode: processing %s" % cf)
|
|
5901
5901
|
build(cf, outDir, redo=options.redo)
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.2
|
|
2
2
|
Name: cellbrowser
|
|
3
|
-
Version: 1.2.
|
|
3
|
+
Version: 1.2.12
|
|
4
4
|
Summary: UCSC Cellbrowser, an interactive browser for single cell data. Includes converters and basic pipelines for text files, Seurat, Scanpy and Cellranger.
|
|
5
5
|
Home-page: https://github.com/maximilianh/cellBrowser
|
|
6
6
|
Author: Maximilian Haeussler
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/cbWeb/ext/Chart.bundle.min.js
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/cbWeb/ext/bootstrap-submenu.js
RENAMED
|
File without changes
|
|
File without changes
|
{cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/cbWeb/ext/bootstrap.3.3.7.min.css
RENAMED
|
File without changes
|
{cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/cbWeb/ext/bootstrap.min.css
RENAMED
|
File without changes
|
{cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/cbWeb/ext/bootstrap.min.js
RENAMED
|
File without changes
|
|
File without changes
|
{cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/cbWeb/ext/chosen-sprite.png
RENAMED
|
File without changes
|
{cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/cbWeb/ext/chosen-sprite@2x.png
RENAMED
|
File without changes
|
{cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/cbWeb/ext/chosen.1.8.2.min.css
RENAMED
|
File without changes
|
{cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/cbWeb/ext/chosen.jquery.min.js
RENAMED
|
File without changes
|
{cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/cbWeb/ext/drawImage-clipper.js
RENAMED
|
File without changes
|
{cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/cbWeb/ext/font-awesome.css
RENAMED
|
File without changes
|
{cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/cbWeb/ext/googleMaterialIcons.css
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/cbWeb/ext/introjs.2.4.0.min.css
RENAMED
|
File without changes
|
{cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/cbWeb/ext/jquery-ui-1.12.1.css
RENAMED
|
File without changes
|
{cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/cbWeb/ext/jquery-ui.min.js
RENAMED
|
File without changes
|
{cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/cbWeb/ext/jquery.3.1.1.min.js
RENAMED
|
File without changes
|
{cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/cbWeb/ext/jquery.contextMenu.css
RENAMED
|
File without changes
|
{cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/cbWeb/ext/jquery.contextMenu.js
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/cbWeb/ext/jquery.sparkline.min.js
RENAMED
|
File without changes
|
{cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/cbWeb/ext/jquery.tablesorter.js
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/cbWeb/ext/jquery.tipsy.min.js
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/cbWeb/ext/materialIcons.woff
RENAMED
|
File without changes
|
|
File without changes
|
{cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/cbWeb/ext/mousetrap.min.js
RENAMED
|
File without changes
|
{cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/cbWeb/ext/normalizeWheel.js
RENAMED
|
File without changes
|
{cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/cbWeb/ext/pako_inflate.min.js
RENAMED
|
File without changes
|
|
File without changes
|
{cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/cbWeb/ext/papaparse.min.js
RENAMED
|
File without changes
|
|
File without changes
|
{cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/cbWeb/ext/scaleColorPerceptual.js
RENAMED
|
File without changes
|
|
File without changes
|
{cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/cbWeb/ext/select2.4.0.4.min.css
RENAMED
|
File without changes
|
|
File without changes
|
{cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/cbWeb/ext/selectize.bootstrap3.css
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/cbWeb/ext/slick.editors.js
RENAMED
|
File without changes
|
{cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/cbWeb/ext/slick.examples.css
RENAMED
|
File without changes
|
{cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/cbWeb/ext/slick.formatters.js
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/cbWeb/ext/spectrum-1.8.0.css
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/cbWeb/ext/tablesort.number.min.js
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/cbWeb/ext/theme.bootstrap_3.css
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/cbWeb/img/gimpFlat/README.txt
RENAMED
|
File without changes
|
|
File without changes
|
{cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/cbWeb/img/gimpFlat/gtk-save.png
RENAMED
|
File without changes
|
{cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/cbWeb/img/gimpFlat/log.txt
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/cbWeb/img/icons8-help-32.png
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser/sampleConfig/cellbrowser.conf
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{cellbrowser-1.2.10 → cellbrowser-1.2.12}/src/cbPyLib/cellbrowser.egg-info/dependency_links.txt
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|