R shiny允许解析XML文件吗?

时间:2016-09-09 02:50:04

标签: r xml parsing shiny

我在R-Shiny的 server.R 脚本的 renderPlot 函数中解析上传的XML文件

output$oscar <- renderPlot({
doc <- xmlParse("www/Human_body_front_and_side.svg.eps.xml")

#load the XML as a picture
body<-readPicture(saveXML(doc))

#plot it
grid.arrange(pictureGrob(body), ncol=1)
})

但是我在解析时遇到以下错误:

XML content does not seem to be XML

我加载了正确的库(shinyXML),并检查上传的xml文件是否合适。

有趣的是,如果在启动R-Shiny的“runApp”之前,我在R终端中做了:

doc <<- xmlParse("Human_body_front_and_side.svg.eps.xml")

没有错误,一切正常。所以看起来R shiny有解析xml的问题。我是R-Shiny的新手,因此有没有人看到识别XML文件需要什么?

1 个答案:

答案 0 :(得分:2)

ui.R:

library(shiny)


    shinyUI(fluidPage(

      titlePanel("Human body"),


      sidebarLayout(
        sidebarPanel(

        ),
        mainPanel(
          plotOutput("humanBody")
        )
      )
    )) 

server.R

library(shiny)
    library(XML)
    library(grImport)
    library(gridExtra)
    # Define server logic to draw a histogram
    shinyServer(function(input, output){
      output$humanBody <- renderPlot({
              doc <- readPicture("./www/Human_body_front_and_side.svg.eps.xml")

        grid.arrange(pictureGrob(doc), ncol=1)
      })
    })

如果目标是从xml绘制人体,则此代码有效。解析xml不是必需的,因为readPicture()函数需要一个文件已经存在的XML。如果这有帮助,请告诉我。