Skip to content
Commits on Source (3)
[run]
branch = True
omit = emperor/qiime_backports/*
source = emperor,scripts
......@@ -40,3 +40,13 @@ pip-log.txt
*.exe
*.o
*.so
# autogenerated documentation
doc/source/scripts/
doc/source/generated/
# unwanted files
examples/new-emperor.html
new-emperor.html
.ipynb_checkpoints
doc/jsdoc/
# fixes duplicated names for different authors
Yoshiki Vázquez Baeza <yoshiki89@gmail.com> Yoshiki <yoshiki89@gmail.com>
Yoshiki Vázquez Baeza <yoshiki89@gmail.com> Yoshiki Vázquez Baeza <ElDeveloper@users.noreply.github.com>
Jackson Chen <tiger2chen@gmail.com> Jackson Chen <Jackson@rl1gw2-196-192-dhcp.int.colorado.edu>
language: python
python:
- "2.7"
- "3.5"
- "3.6"
env:
- NUMPY_VERSION="" WITH_COVERAGE=1 # environment to test with the latest version of NumPy
- NUMPY_VERSION="<1.13"
before_install:
- phantomjs --version
- wget https://repo.continuum.io/miniconda/Miniconda2-latest-Linux-x86_64.sh -O miniconda.sh
- chmod +x miniconda.sh
- ./miniconda.sh -b
- export PATH=/home/travis/miniconda2/bin:$PATH
# Update conda itself
- conda update --yes conda
install:
- pip install .
- conda create --yes -n env_name python=$TRAVIS_PYTHON_VERSION pip numpy${NUMPY_VERSION} 'scipy>=0.17.0' matplotlib pandas nose flake8 pep8 jupyter
- source activate env_name
- pip install https://github.com/google/closure-linter/archive/master.zip
- pip install 'sphinx<1.6' sphinx-bootstrap-theme coverage coveralls
# install lockfile before to prevent a failure in travis
- pip install 'lockfile>=0.10.2'
- pip install -e '.[all]' --verbose
- npm install -g jsdoc
script:
- python tests/all_tests.py --emperor_scripts_dir scripts
- flake8 emperor/*.py tests/*.py scripts/*.py setup.py
# we can only run gjslint in a python 2.7.x environment
- if [[ $TRAVIS_PYTHON_VERSION == 2.7 ]]; then gjslint --custom_jsdoc_tags 'module,function,constructs,alias,default' 'emperor/support_files/js/*.js' 'tests/javascript_tests/*.js'; fi
# execute the full test suite
- python tests/all_tests.py
# we just check coverage in the latest version of NumPy
- if [ ${WITH_COVERAGE} ]; then nosetests emperor --with-coverage --cover-package=emperor --cover-inclusive tests; fi
- make -C doc html
after_success:
- coveralls
......@@ -16,8 +16,8 @@ To install the latest release version of Emperor, you can use `pip` or
```
Pre-releases
============
Pre-releases (not compatible with QIIME 1.x)
============================================
If you are interested in using a pre-release version (for example `1.0.0beta`)
you can use `pip` or `conda`:
......@@ -27,7 +27,7 @@ you can use `pip` or `conda`:
pip install emperor --pre
# with conda
conda install -c biocore emperor
conda install -c conda-forge emperor
```
Note that we will update these pre-releases as often as it makes sense.
......
......@@ -139,7 +139,7 @@ THE SOFTWARE.
--------------------------------------------------------------------------------
### THREE.js ([r73](https://github.com/mrdoob/three.js/tree/r73) is released under the MIT License
### THREE.js ([r87](https://github.com/mrdoob/three.js/tree/r87) is released under the MIT License
The MIT License
......@@ -319,6 +319,42 @@ CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
--------------------------------------------------------------------------------
#### canvas-toBlob.js [f1a0189](https://github.com/eligrey/canvas-toBlob.js/commit/f1a01896135ab378aa5c0118eadd81da55e698d8)
This software is licensed under the MIT license.
MIT license
-----------
Copyright &copy; 2016 [Eli Grey][1] and [Devin Samarin][2].
Permission is hereby granted, free of charge, to any person
obtaining a copy of this software and associated documentation
files (the "Software"), to deal in the Software without
restriction, including without limitation the rights to use,
copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the
Software is furnished to do so, subject to the following
conditions:
The above copyright notice and this permission notice shall be
included in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
OTHER DEALINGS IN THE SOFTWARE.
[1]: http://eligrey.com
[2]: https://github.com/dsamarin
--------------------------------------------------------------------------------
### D3.js [3.5.17](https://github.com/d3/d3/releases/tag/v3.5.17)
......
Emperor
=======
[![Join the chat at https://gitter.im/biocore/emperor](https://badges.gitter.im/Join%20Chat.svg)](https://gitter.im/biocore/emperor?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge)
[![Join the chat at https://gitter.im/biocore/emperor](https://badges.gitter.im/Join%20Chat.svg)](https://gitter.im/biocore/emperor?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge) [![Build Status](https://travis-ci.org/biocore/emperor.png?branch=master)](https://travis-ci.org/biocore/emperor) [![Coverage Status](https://coveralls.io/repos/biocore/emperor/badge.svg)](https://coveralls.io/r/biocore/emperor)
[![Build Status](https://travis-ci.org/biocore/emperor.png?branch=master)](https://travis-ci.org/biocore/emperor) [![Coverage Status](https://coveralls.io/repos/biocore/emperor/badge.svg)](https://coveralls.io/r/biocore/emperor)
Emperor is a next-generation tool for the analysis and visualization of large microbial ecology datasets; amongst many features Emperor provides a modern user interface that will rapidly adjust to your daily workflow.
Emperor is a next-generation tool for the analysis and visualization of large microbial ecology datasets; amongst its many features Emperor provides a modern user interface that will rapidly adjust to your data analysis workflow.
To start using Emperor, please refer to the [installation notes](INSTALL.md).
Before contributing code to Emperor, please familiarize yourself with the [contributing guidelines](CONTRIBUTING.md).
## Usage examples
The main interface to create Emperor visualizations is the `make_emperor.py` script, inputing a mapping file and a PCoA data file, will generate an Emperor graphical user interface to analyze and visualize your data.
If you have a QIIME compliant mapping file and a PCoA file, try the following command from a terminal session:
```bash
make_emperor.py -i unweighted_unifrac_pc.txt -m mapping_file.txt
```
That command will create a new directory called emperor, there you will find a file called `index.html` open it with Google Chrome to start visualizing and interacting with your data.
Similarly if you have a study expressed over a gradient, for example a study where you have multiple samples over time, you can use this metadata with your visualization using the `-a` option:
```bash
make_emperor.py -i unweighted_unifrac_pc_time.txt -m mapping_with_time.txt -a TIMEPOINT
```
Some build examples are bundled with every Emperor repository, you can begin exploring some sample data using **Google Chrome**:
## Usage
- To see an example of a simple PCoA plot, see this [link](http://emperor.microbio.me/master/make_emperor/emperor_output/index.html).
- To see an example of a Jackknifed plot, see this [link](http://emperor.microbio.me/master/make_emperor/jackknifed_pcoa/index.html).
- To see an example of a PCoA Biplot, see this [link](http://emperor.microbio.me/master/make_emperor/biplot/index.html).
- To see an example of a PCoA plot with connecting lines between samples, see this [link](http://emperor.microbio.me/master/make_emperor/vectors/index.html).
- To see an example of a PCoA plot with connecting lines between samples and an explicit axis, see this [link](http://emperor.microbio.me/master/make_emperor/sorted_by_DOB/index.html).
You can start using Emperor through [QIIME2](https://qiime2.org)'s [interfaces](https://docs.qiime2.org/2.0.6/interfaces/) (the command line interface or the graphical user interface), or alternatively using the Python interface (compatible with the Jupyter notebook, see [this example](http://nbviewer.jupyter.org/github/biocore/emperor/blob/new-api/examples/keyboard.ipynb)). For more detalis, refer to our [online documentation](http://emperor.microbio.me/uno/).
emperor (1.0.0-beta.5-1) UNRELEASED; urgency=medium
emperor (1.0.0-beta.17+dfsg-1) UNRELEASED; urgency=medium
* packaging errors fixed
......
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>Emperor</title>
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta name="description" content="">
<meta name="author" content="">
<script type="text/javascript" src="bootstrap/js/jquery-2.2.3.min.js"></script>
<script type="text/javascript" src="bootstrap/js/bootstrap.min.js"></script>
<link href="bootstrap/css/bootstrap.min.css" rel="stylesheet">
<style type="text/css">
body {
padding-top: 20px;
padding-bottom: 60px;
}
/* Custom container */
.container {
margin: 0 auto;
max-width: 1000px;
}
.container > hr {
margin: 60px 0;
}
</style>
<!-- GitHub ribbon -->
<a href="https://github.com/biocore/emperor"><img style="position: absolute; top: 0; right: 0; border: 0;" src="https://camo.githubusercontent.com/38ef81f8aca64bb9a64448d0d70f1308ef5341ab/68747470733a2f2f73332e616d617a6f6e6177732e636f6d2f6769746875622f726962626f6e732f666f726b6d655f72696768745f6461726b626c75655f3132313632312e706e67" alt="Fork me on GitHub" data-canonical-src="https://s3.amazonaws.com/github/ribbons/forkme_right_darkblue_121621.png"></a>
<!-- HTML5 shim, for IE6-8 support of HTML5 elements -->
<!--[if lt IE 9]>
<script src="bootstrap/js/html5shiv.js"></script>
<![endif]-->
<!-- Fav and touch icons -->
<link rel="shortcut icon" href="img/favicon.ico">
</head>
<body>
<div class="container">
<div class="masthead">
<a href="index.html"><p align="center"><img src="img/emperor_heading.png" alt="Emperor Logo"></p></a>
<nav class="nabvar navbar-default">
<div class="container-fluid">
<div class="navbar-collapse collapse">
<ul class="nav navbar-nav">
<li><a href="index.html">Home</a></li>
<li class="dropdown">
<a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-haspopup="true" aria-expanded="false">Documentation<span class="caret"></span></a>
<ul class="dropdown-menu">
<li><a href="build/html/index.html">User Documentation</a></li>
<li><a href="build/jsdoc/index.html">Javascript Documentation</a></li>
</ul>
</li>
<li class="active"><a href="#">Description</a></li>
<li><a href="tutorial_index.html">Tutorial</a></li>
<li><a href="https://github.com/biocore/emperor/blob/new-api/INSTALL.md#emperor-installation-notes">Installation</a></li>
<li><a href="https://github.com/biocore/emperor/issues">Support</a></li>
</ul>
</div>
</div>
</nav><!-- /.navbar -->
</div>
<h2>Overview</h2>
<p class="lead" align="justify">
Emperor is a local full-browser enabled scatter plots visual tool. Its modern user interface, allows you to customize the appearance of your plot by controlling things like: opacity, sphere scaling, coloring, dimensions being presented among many others.
<br><br>
This document tries to go through an overview of the controls that can be found in the graphical user interface as well as some of the common use cases that Emperor allows you to work with.
<br><br>
Emperor's graphical user interface is mainly composed of a visualization canvas (left side) and a set of settings controllers (right side). Figure 1 highlights the (a) total number of points being displayed; (b) main display with the first three dimensions of this dataset; (c) tool-tabs to manipulate features of the plot; (d) visualization type selector to switch between parallel plots and three dimensional plots. Figure 2 presents the same dataset but using a parallel plot display.
<br><br>
</p>
<img src="img/description_1.png" alt="Emperor Figure Description">
<p class="strong" align="justify">
Figure 1. Emperor’s graphical user interface. (a) Sample counter; shows the total number of samples in the dataset and the number of samples that are currently visible. (b) Canvas; main plot scene where the data is displayed. (c) Tool tabs; controls that allow you to modify and interact with your data.
</p>
<img src="img/parallel_plots.png" alt="Emperor Figure Description">
<p class="strong" align="justify">
Figure 2. Parallel plot visualization of the dataset presented in Figure 1. Parallel plots are particularly useful to get an overview of the distribution of other dimensions in a given set of points.
</p>
<hr>
<h2>Description</h2>
<p class="lead" align="justify">
Emperor presents multiple tabs on the right sidebar, each of these tabs perform different tasks over the data presented in the visualization canvas.
</p>
<h3 class="muted">Key</h3>
<p class="lead" align="justify">
Shows a list of the sample identifiers that are contained in the current dataset and a box with the color that the sample is currently colored by on screen. Double-clicking each square, will make an indicator, white arrow, appear on screen.
</p>
<p align="center"><img src="img/key_menu.png" alt="Key Menu Example"></p>
<h3 class="muted">Color</h3>
<p class="lead" align="justify">
Shows a list of the categories listed under the mapping file column selected in the menu of this tab (for this example DOB). Each category has a color box where you can modify the current color of the samples that belong to this category.
</p>
<p align="center"><img src="img/colors_menu.png" alt="Coloring Menu Example"></p>
<h3 class="muted">Visibility</h3>
<p class="lead" align="justify">
Shows a list of the categories listed under the mapping file column selected in the menu of this tab, for each of these categories a checkbox and a slider is presented. The checkbox will allow you to hide (unchecked) or show (checked) samples that belong to each category. The slider controls the opacity of the samples defined under this category.
</p>
<p align="center"><img src="img/visibility_menu.png" alt="Visibility Menu Example"></p>
<h3 class="muted">Scaling</h3>
<p class="lead" align="justify">
Similar to visibility but controls the scale of the spheres. The values range from 0.2 to 4, when the slider is located at a value of 2, the spheres will be twice as bigger as in the beginning. By default all sliders are set to a value of 1.
</p>
<p align="center"><img src="img/scaling_menu.png" alt="Scaling Menu Example"></p>
<h3 class="muted">Labels</h3>
<p class="lead" align="justify">
Similar to Visibility but controls the appearance of the labels. The checkbox at the top of this tab will add or remove the labels from the plot.
</p>
<p align="center"><img src="img/labels_menu.png" alt="Labels Menu Example"></p>
<h3 class="muted">Axes</h3>
<p class="lead" align="justify">
Although Emperor is only capable of displaying three dimensions at a time, the dimensions that are being displayed can be selected from this menu. To update the plot to reflect the latest changes, you’ll have to click the refresh button.
</p>
<p align="center"><img src="img/axes_menu.png" alt="Axes Menu Example"></p>
<h3 class="muted">View</h3>
<p class="lead" align="justify">
General features of a plot as presented by Emperor, are modified from this menu; by default Emperor will try to color samples along a continuous color gradient, to turn this option off, select “Use discrete colors”. The sphere opacity and sphere scale controls override the options in Scaling and Visibility tabs.
</p>
<p align="center"><img src="img/view_menu.png" alt="Options Menu Example"></p>
<h3 class="muted">Options</h3>
<p class="lead" align="justify">
The different options that will affect the overall plot as it is are listed under this tab. Scaling the coordinates by the percent explained, will re-scale the data by multiplying all the values in that dimension by the ratio explained. By default, Emperor will color the samples in a discrete way, each group is independent, but you can select “Use gradient colors” to create a gradient in the values of the columns. This is helpful when we are trying to display categories that behave this way, like time, age, or ph.
</p>
<p align="center"><img src="img/options_menu.png" alt="Options Menu Example"></p>
<hr>
<div class="footer">
<a href="https://github.com/biocore/emperor/network/members">
<p align="center">&copy; The Emperor Development Team</p>
</a>
</div>
</div> <!-- /container -->
</body>
</html>