Skip to content

YaoLab-Bioinfo/shinyCircos

Repository files navigation

shinyCircos

This is the repository for the Shiny application presented in "shinyCircos: an R/Shiny application for interactive creation of Circos plot" (Yu et al. Bioinformatics. 2017).


Help manual for the usage of shinyCircos [Download!]


Use shinyCircos online

shinyCircos is deployed at https://venyao.xyz/shinyCircos/, https://venyao.shinyapps.io/shinyCircos/ and https://yimingyu.shinyapps.io/shinycircos/ for online use.
shinyCircos is idle until you activate it by accessing the URLs.
So it may take some time when you access this URL for the first time.
Once it was activated, shinyCircos could be used smoothly and easily.


Launch shinyCircos directly from R and GitHub (preferred approach)

User can choose to run shinyCircos installed locally for a more preferable experience.

Step 1: Install R and RStudio

Before running the app you will need to have R and RStudio installed (tested with R 3.3.3 and RStudio 1.0.143).
Please check CRAN (https://cran.r-project.org/) for the installation of R.
Please check https://www.rstudio.com/ for the installation of RStudio.

Step 2: Install the R Shiny package and other packages required by shinyCircos

Start an R session using RStudio and run these lines:

install.packages("shiny")  
install.packages("circlize")  
install.packages("RColorBrewer")
install.packages("data.table")
install.packages("RLumShiny")  
install.packages("BiocManager")
BiocManager::install("GenomicRanges")

Step 3: Start the app

Start an R session using RStudio and run these lines:

shiny::runGitHub("shinyCircos", "venyao")  

This command will download the code of shinyCircos from GitHub to a temporary directory of your computer and then launch the shinyCircos app in the web browser. Once the web browser was closed, the downloaded code of shinyCircos would be deleted from your computer. Next time when you run this command in RStudio, it will download the source code of shinyCircos from GitHub to a temporary directory again. This process is frustrating since it takes some time to download the code of shinyCircos from GitHub.

Users are suggested to download the source code of shinyCircos from GitHub to a fixed directory of your computer, such as 'E:\apps' on Windows. Following the procedure illustrated in the following figure, a zip file named 'shinyCircos-master.zip' would be downloaded to the disk of your computer. Move this file to 'E:\apps' and unzip this file. Then a directory named 'shinyCircos-master' would be generated in 'E:\apps'. The scripts 'server.R' and 'ui.R' could be found in 'E:\apps\shinyCircos-master'.



Then you can start the shinyCircos app by running these lines in RStudio.

library(shiny)
runApp("E:/apps/shinyCircos-master", launch.browser = TRUE)

Deploy shinyCircos on local or web Linux server

Step 1: Install R

Please check CRAN (https://cran.r-project.org/) for the installation of R.

Step 2: Install the R Shiny package and other packages required by shinyCircos

Start an R session and run these lines in R:

install.packages("shiny")  
install.packages("circlize")  
install.packages("RColorBrewer")
install.packages("data.table")
install.packages("RLumShiny")  
install.packages("BiocManager")
BiocManager::install("GenomicRanges")

For more information, please check the following pages:
https://cran.r-project.org/web/packages/shiny/index.html
https://github.com/rstudio/shiny
https://shiny.rstudio.com/

Step 3: Install Shiny-Server

Please check the following pages for the installation of shiny-server.
https://www.rstudio.com/products/shiny/download-server/
https://github.com/rstudio/shiny-server/wiki/Building-Shiny-Server-from-Source

Step 4: Upload files of shinyCircos

Put the directory containing the code and data of shinyCircos to /srv/shiny-server.

Step 5: Configure shiny server (/etc/shiny-server/shiny-server.conf)

# Define the user to spawn R Shiny processes
run_as shiny;

# Define a top-level server which will listen on a port
server {  
  # Use port 3838  
  listen 3838;  
  # Define the location available at the base URL  
  location /shinycircos {  
    # Directory containing the code and data of shinyCircos  
    app_dir /srv/shiny-server/shinyCircos;  
    # Directory to store the log files  
    log_dir /var/log/shiny-server;  
  }  
}  

Step 6: Change the owner of the shinyCircos directory

$ chown -R shiny /srv/shiny-server/shinyCircos  

Step 7: Start Shiny-Server

$ start shiny-server  

Now, the shinyCircos app is available at http://IPAddressOfTheServer:3838/shinycircos/.