--- title: "levi - Landscape Expression Visualization Interface" author: "Isabelle M. da Silva, José R. Pilan, Agnes A. S. Takeda, Jose L. Rybarczyk-Filho" date: "`r doc_date()`" package: "`r pkg_ver('levi')`" bibliography: bibliography.bib fig_caption: yes output: BiocStyle::html_document: css: custom.css vignette: > %\VignetteIndexEntry{"Using levi"} %\VignetteEngine{knitr::rmarkdown} %\VignetteEncoding{UTF-8} --- # Overview The **levi (Landscape Expression Visualization Interface)** is a package for the R environment, developed to enable the visualization of the projection of gene expression on a biological network. **levi** is based on two other software, the first is the Viacomplex (@Castro2009), which was written in Fortran using the Dislin library to plot the data. The second is Galant (@Camilo2013), which corresponds to a plugin for Cytoscape software. Two files are required to use **levi**: The file containing the expression levels of the genes and a file containing the biological network. # Files ## Gene Expression Levels This file should contain the genes of interest previously normalized by the user. The expression file (see [Example](https://bit.ly/2KSBaOo)) must have a column with the identification of genes (Gene Symbol, Entrez, etc.) and at least one column with gene expression levels (treatment, case, control, etc.). The user can compare the expression levels between samples if there are more columns containing these data. If the expression file does not have values for all the genes of the network, a message will be displayed showing log file path to a temporary directory with the gene names. In the **landscape** construction, genes with no expression value will be displayed with values close to 0.5 demonstrating that there were no changes (down-regulated or up-regulated genes). Data sets of gene expression can be obtained from online databases: * [Gene Expression Omnibus (GEO)](https://www.ncbi.nlm.nih.gov/geo/) * [Array Express](https://www.ebi.ac.uk/arrayexpress/) * [The Cancer Genome Atlas (TCGA)](https://cancergenome.nih.gov/) * [Sequence Read Archive (SRA)](https://www.ncbi.nlm.nih.gov/sra) ## Biological Network The **levi** supports several extensions of biological network files (\*.net, \*.dyn, \*.txt, \*.dat). The user should build the biological network using specific tools such as: Cytoscape, RedeR, Medusa, etc. To build the biological network is recommended the obtention of interaction data/ biological associations from online repositories: * [STRING database](https://string-db.org/) * [StarBase](http://starbase.sysu.edu.cn/) * [miRBase](http://www.mirbase.org/) * [lncRNAdb](http://www.lncrnadb.org/) * [HTRIdb](http://www.lbbc.ibb.unesp.br/htri) | Extension | File Type | Link | |:--------:|:---------------:|:---------------------------------------------:| | dat | Medusa (DAT) | [Example DAT](https://bit.ly/2sj6RJh) | | dyn | RedeR (DYN) | [Example DYN](https://bit.ly/2IJGaZ7) | | net | Pajek (NET) | [Example NET](https://bit.ly/2IKzaLv) | | stg | STRING / STITCH | [Example coordinates](https://bit.ly/2xjnaLU) | | stg | STRING / STITCH | [Example interactions](https://bit.ly/2J2OToH)| #Viewing Modes **levi** has two viewing modes: **Graphical User Interface (GUI)** and **script**. ## Graphical User Interface (GUI) The GUI mode was developed using Shiny package (Figure 1). This viewing mode can be used in the R environment (browser=FALSE) or in the user's default operating system browser (browser=TRUE). ```{r eval=FALSE, fig.height=6, fig.width=6} library(levi) LEVIui(browser=TRUE) #Launch Levi to Browser. LEVIui(browser=FALSE) #Launch Levi to R environment. ```
Figure 2: Graphical User Interface (GUI).
* **1** - **Tabs** + **File** - General options for uploading the data files. + **Settings** - Options to build the **landscape**. * **2** - **Network input type:** - Selection of the biological network input format. The options are available on the table 1. * **3** - **Upload the network file** - Input button to select the biological network file. * **4** - **Upload the expression file** - Input button to select the gene expression levels file. * **5** - **Expression values in log scale** - select when there is low variation between expression data * **6** - **Selected fields** - Selecting the type of analysis. Comparison between two samples or a single sample. * **7** - **Select gene symbol field** - Selection of the gene ID contained in the gene expression levels file. The gene ID in the biological network file must be the same in the gene expression levels file. **Select test field** - Select the case/test sample. **Select control field** - Select the control sample. If **levi** detects the case/test sample and control sample as equal, then **levi** will apply the "single sample" analysis. * **8** - **Chart Colors** - Color palette to build the **landscape**. There is two options the **Multicolor** has 20 color levels combined. The **Two colors** has two categories of color palettes, multicolor and two colors. For the selection of two colors the available options are: *purple_pink*, *green_blue*, *blue_yellow*, *pink_green*, *orange_purple*, *green_marine*. Both of them is targeted to show the biological network with higher expression. (Figure 3 and Figure 4). * **9** - **Chart with contour** - Enable or disable the contour lines in the **landscape**. * **10** - **landscape** Image display area. The user can select specific areas of the image to inspect the gene name and position. * **11** - **Expression area:** - Total expression value of the selected area in the image. * **12** - **Download options** + **File format to landscape** - Select the output format of the **landscape**. The options available are: TIFF, BMP, JPEG and PNG. We recommend using this option in the browser. + **Download Plot** - Button to save the file. * **13** - Visualization of gene name and expression value of the selected area in the **landscape**. The user can save the table in a csv file (button **Download Data**) * **14** - **Settings** + **Contrast** - Constrast value in the **landscape**. The variable range is 1 to 100. The default value is 50. + **Resolution** - Image size of the **landscape**. The variable range is 1 to 100. The default value is 50. If this parameter is higher, then the total time required will be longer. + **Smoothing** - Smoothing of the **landscape**. The variable range is 1 to 100. The default value is 50.I f this parameter is higher, then the total time required will be longer. + **Zoom** - Zoom value for the **landscape**. The variable range is 1 to 100. The default value is 50. ## *Script* The **levi** scripting mode also has the settings for **landscape** building (see example below). ```{r eval=TRUE, fig.height=6, fig.width=6} library(levi) template_network <- file.path(system.file(package="levi"),"extdata", "medusa.dat", fsep = .Platform$file.sep) template_expression <- file.path(system.file(package="levi"), "extdata","expression.dat", fsep = .Platform$file.sep) multicolor <- levi(networkCoordinatesInput = template_network, expressionInput = template_expression, fileTypeInput = "dat", geneSymbolnput = "ID", readExpColumn= readExpColumn("TumorCurrentSmoker-NormalNeverSmoker"), contrastValueInput = 50, resolutionValueInput = 50, zoomValueInput = 50, smoothValueInput = 50, contourLevi = TRUE) twocolors <- levi(networkCoordinatesInput = template_network, expressionInput = template_expression, fileTypeInput = "dat", geneSymbolnput = "ID", readExpColumn= readExpColumn("TumorCurrentSmoker-NormalNeverSmoker"), setcolor = "pink_green", contourLevi = FALSE) ``` The script mode allows the user to compare combinations between two experiments in the gene expression levels file. The readExpColumn function can be used to this task to inform the combination separating by dash (-) and to add more combinations separate by comma (,). ```{r eval=TRUE,fig.height=6, fig.width=6} library(levi) base <- readExpColumn("TumorFormerSmoker-NormalFormerSmoker", "TumorNeverSmoker-TumorNeverSmoker") template_network <- file.path(system.file(package="levi"),"extdata", "medusa.dat", fsep = .Platform$file.sep) template_expression <- file.path(system.file(package="levi"), "extdata","expression.dat", fsep = .Platform$file.sep) multicolor <- levi(networkCoordinatesInput = template_network, expressionInput = template_expression, fileTypeInput = "dat", geneSymbolnput = "ID", readExpColumn= base, contrastValueInput = 50, resolutionValueInput = 50, zoomValueInput = 50, smoothValueInput = 50, contourLevi = FALSE) twocolors <- levi(networkCoordinatesInput = template_network, expressionInput = template_expression, fileTypeInput = "dat", geneSymbolnput = "ID", readExpColumn= base, setcolor = "pink_green", contourLevi = FALSE) ``` # Session information ```{r, eval=TRUE, label='Session information', , echo=FALSE} sessionInfo() ``` # Reference