Forked from Midoux Cedric / easy16S
139 commits behind the upstream repository.
ui.R 7.10 KiB
library(shinydashboard)
library(shinycustomloader)
shinyUI(dashboardPage(
  dashboardHeader(title = "Easy16S"),
  dashboardSidebar(
    tags$div(
      title = "Select dataset for demonstration",
      selectInput(
        "demo",
        label = "Select demo dataset : ",
        choices = list("Input data" = "input",
                       "Chaillou et al., 2015" = "food"),
        # "Mach et al., 2015" = "kinetic", "Morton et al., 2017" = "soil", "Ravel et al., 2011" = "ravel", "biorare" = "biorare", "GlobalPatterns" = "GlobalPatterns"
        selected = 1
    hr(width = "90%"),
    tags$div(
      title = "Abundance BIOM file come from FROGS with 'FROGS BIOM to std BIOM', Qiime or another metagenomic tool.",
      fileInput("fileBiom",
                label = "Abundance BIOM file : ",
                placeholder = "data.biom"),
      radioButtons(
        "biomFormat",
        label = NULL,
        inline = TRUE,
        choices = list(`STD BIOM` = "std",
                       `FROGS BIOM` = "frogs"),
        selected = "std"
    tags$div(
      style = "text-align:center",
      title = "Resample dataset such that all samples have the same library size. \nIt's using an random sampling without replacement.",
      checkboxInput("rareData", label = "Rarefy dataset", value = TRUE),
      textOutput("rarefactionMin")
    tags$div(
      title = "Metadata table with variables (in columns) and samples (in rows). \nMake sure you follow the exact spelling of the sample names (1st column). \nThe import of an excel table is possible but not recommended.",
      fileInput("fileMeta",
                label = "Metadata table : ",
                placeholder = "data.csv")
    radioButtons(
      "CSVsep",
      label = "CSV separator : ",
      inline = TRUE,
      choices = list(
        `<tab>` = "\t",
        `,` = ",",
        `;` = ";",
        excel = "excel"
    tags$div(
      title = "Phylogenetic tree",
      fileInput("fileTree",
                label = "Phylogenetic tree : ",
                placeholder = "data.nwk")
    )#,
    # tags$div(
    #   title = "Representative FASTA sequences of OTU",
    #   fileInput(
    #     "fileSeq",
    #     label = "FASTA sequences : "),
    #     placeholder = "data.fasta"
    #   )
    # )
  dashboardBody(
7172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140
tabsetPanel( tabPanel( "Summary", verbatimTextOutput("phyloseqPrint"), withLoader(uiOutput("summaryTable")), tags$footer( "Questions, problems or comments regarding this application should be sent to ", a(href = "mailto:cedric.midoux@irstea.fr?subject=[Easy16S]", "cedric.midoux@irstea.fr"), align = "center", style = "position:absolute; bottom: 0; width: 100%; color: grey; padding: 10px; # background-color: white; z-index: 1000; " ) ), tabPanel("Global barplot", withLoader(plotOutput("histo", height = 700)), uiOutput("histUI")), tabPanel( "Filtered barplot", withLoader(plotOutput("histoFocus", height = 700)), box( title = "Paramètres", width = NULL, status = "primary", uiOutput("histFocusUIfocusRank"), uiOutput("histFocusUIfocusTaxa"), uiOutput("histFocusUIfocusNbTaxa"), uiOutput("histFocusUIfocusGrid"), uiOutput("histFocusUIfocusX") ) ), tabPanel("Heatmap", withLoader(plotOutput("Heatmap", height = 700)), uiOutput("HeatmapUI")), tabPanel( "Rarefaction curves", withLoader(plotOutput("rarefactionCurve", height = 700)), uiOutput("rarefactionCurveUI") ), tabPanel(HTML("&alpha;-diversity"), box( width = NULL, tabsetPanel( tabPanel("Plots", withLoader(plotOutput( "richnessA", height = 700 )), uiOutput("richnessAUI")), tabPanel("Tables", withLoader(uiOutput("richnessATable"))) ) )), tabPanel( HTML("&beta;-diversity"), selectInput( "richnessBDist", label = "Distance : ", choices = list( "bray", "jaccard", "unifrac", "wunifrac", "dpcoa", "jsd", "euclidean" ) ),
141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198
box(width = NULL, tabsetPanel( tabPanel("Heatmap", withLoader(plotOutput( "richnessB", height = 700 )), uiOutput("richnessBUI")), tabPanel("Networks", withLoader(plotOutput("networkB", height = 700)), uiOutput("networkBUI")), tabPanel("Tables", withLoader(uiOutput("richnessBTable"))) )) ), tabPanel( "MultiDimensional Scaling", withLoader(plotOutput("acp", height = 700)), uiOutput("acpUI") ), tabPanel( "Phylogenetic tree", withLoader(plotOutput("tree", height = 700)), uiOutput("treeUI") ), tabPanel("Clustering", withLoader(plotOutput("clust", height = 700)), uiOutput("clustUI")), tabPanel("Help", div( HTML( "<p> Questions, problems or comments regarding this application should be sent to <a href = \"mailto:cedric.midoux@irstea.fr?subject=[Easy16S]\">cedric.midoux@irstea.fr</a> </p> <p> For more information about this tool, you can refer to <a href = \"http://migale.jouy.inra.fr/sites/migale.jouy.inra.fr.drupal7.migale.jouy.inra.fr/files/JOBIM2018_poster.pdf\">this poster</a>. </p> <p> <u>The demo dataset :</u> Chaillou, S., et al. \" <a href = \"https://www.ncbi.nlm.nih.gov/pmc/articles/PMC4409155/\"> Origin and ecological selection of core and food-specific bacterial communities associated with meat and seafood spoilage.</a>\" <i>The ISME journal</i> 9.5 (2015): 1105. <br> 16S survey of bacterial communities from 8 different food products, distributed as 4 meat products and 4 seafoods. Used to find core microbiota of food products. </p> <br> <p align=\"center\" position=\"absolute\" bottom\"80px\"> <img src=\"migale.png\" width=\"100\"/> <img src=\"Irstea.png\" width=\"100\"/> </p> " ) )) ) ) ))