Chordomics is a tool to visualize and interpret linked data, such as from metagenomics or metaproteomics where both taxonomic and functional data is obtained.
To install from the commandline, download and run the install script:
curl -o run_chordomics.R https://raw.githubusercontent.com/KevinMcDonnell6/chordomics/master/run_chordomics.R && Rscript run_chordomics.R
To install from an R session, one must first have the devtools
package installed as follows:
install.packages("devtools")
Then to download the chordomics
package use the following command:
devtools::install_github('KevinMcDonnell6/chordomics')
The input data must be .csv
format, with column names. The output from programs like MPA^[https://github.com/compomics/meta-proteome-analyzer] is ideal; It will look for columns "Proteins", containing one or more Uniprot accessions.
You will need a run ID from MG-RAST^[http://www.mg-rast.org/].
Next, launch the app!
chordomics::launchApp()
Once the app is running, follow the steps to preprocess, load, and view your data!
For detailed step-by-step walkthroughs look into the "Walkthroughs" folder above.
The App can handle both MG-RAST data as well as MetaProteomeAnalyzer (MPA) files.
For metagenomic or metatranscriptomic data first upload your samples to MG-RAST. Then enter your MG-RAST ID into chordomics.
For metaproteomics data upload your MPA files one at a time for processing,
The Plot tab is where the user is able to view the data they have loaded into the App.
- Clicking Load Example Data shows already processed data for the user to experiment with.
- The datasets can be viewed together (default) or individually by selecting the name of the dataset on the left panel.
- Selecting a taxonomic rank from the panel changes the rank shown on the plot.
- Selecting a taxonomic group on the chord diagram (e.g. "Bacteria" for the example data) selects only that taxon. Changing the rank now allows the user to view the subtaxa of their selection.
- Similarly the functions can have a hierarchical structure. The example data is labelled with functional categories ("COG_Category") and their COG ("COG_Name"). This can be applied to other annoatations such as KEGG, if given the appropriate headings by the user.
Given a metaproteomics csv file, Chordomics gets functional data from UniProt, which is then saved to a chordomics
folder in your home directory. This makes it easier to re-run analyses. Certain check are performed to make sure all the required fields have data, and the cleaned data with the COG annotations is returned to be downloaded.
Given an MG-RAST ID (usually starting with "mgm"), the taxonomy and function annotations are downloaded. Be warned -- this can take a long time. For now, please only use datasets from assembled metagenomes, rather than just reads. The datases are combined -- retaining only the sequences for which both functional and taxonomic annotations are available. The COGs are assigned, NCBI taxids are linked, and the data is returned to be downloaded.
Chordomics currently requires the input to have at least one taxonomic column ("Superkingdom","Kingdom","Phylum","Class","Order","Family","Genus","Species"), and one or more of the following: "COG_Category" "COG_Name". This consistency allows us to handle the hierarchical nature of both the functional and taxonomic data. If you wish to display different types of data, we incorporated SVG downloading via Crowbar^[http://nytimes.github.io/svg-crowbar/].
The fields in the csv file should be quoted, as the lists of Uniprot accessions are also comma-separated in the output from the MPA. So, ensure the files are quoted, commas are used as the separator, and commas are also used as the within-field seprator. The following headers are required:
"Superkingdom","Kingdom","Phylum","Class","Order","Family","Genus","Species", "Proteins"
"Proteins" should contain one or more UniProt accessions, separated by commas; any extra headers are ignored.
If your selected MG-RAST id is running slowly, it is likely due to the time it takes to download the data files. Sadly, MG-RAST does not provide any given file with both taxonomic and functional information, so we have to download both and merge them. Try with a small dataset first, such as "mgm4762935.3".