...嗨, 我使用seqinr库中的DotPlot函数编写了一个闪亮的App,用于分析两个蛋白质或DNA序列的相似性。该应用程序完美打开,但是当我上载fasta文件进行分析而不是使用文件内容进行分析时,该应用程序使用文件路径名进行相似性分析。请在下面找到代码
任何帮助将不胜感激。
library(seqinr)
library(shiny)
library(Biostrings)
# User interface
ui <- fluidPage(
titlePanel("Welcome to DotMatcher Plot App"),
sidebarLayout(
sidebarPanel (
fileInput("protein1",
label = "Choose a file",
multiple = FALSE,
accept =c( ".fasta")),
fileInput( "protein2",
label = NULL,
multiple=FALSE,
accept =c("fasta"))
),
# Outputs
mainPanel(
plotOutput(outputId = "plot")
)
)
)
# Server Function
server <- function(input, output) {
seq1 <- reactive({
req(s2c(paste(input$protein1, collapse = "")))})
seq2 <- reactive({
req(s2c(paste(input$protein2, collapse = "")))
})
output$plot <- renderPlot({
print(seq1())
print(seq2())
dotPlot(seq1(), seq2())
})
}
# App
shinyApp(ui = ui, server = server)