Điều gì khiến ứng dụng Sáng bóng nhỏ của tôi hiển thị ggplot của tôi? Khi tôi thay thế mã trong hàm renderPlot() bằng một ví dụ bằng cách sử dụng hàm cốt truyện cơ sở, nó đi kèm với nhau. Tôi đang sử dụng RStudio, R v3.0.1 trên Windows Vista, xuất ra trình duyệt Chrome.Sáng bóng không hiển thị ggplot của tôi như tôi mong đợi
ui.r
library(ggplot2)
cities <- c("Anchorage","Fairbanks","Juenau","Wasilla","Homer")
years <- 2003:2013
Table <- "Capital Assets"
Account <- c("Land", "Art", "Buildings", "Equipment")
dat <- data.frame(City = sort(rep(cities, length(years))), Year = rep(years,length(cities)), Table)
sampleDat <- rbind(data.frame(dat,Acount = Account[1]), data.frame(dat, Acount = Account[2]), data.frame(dat, Acount = Account[3]), data.frame(dat, Acount = Account[4]))
finalDat <- data.frame(sampleDat, Value = runif(length(sampleDat[,1]), 1000,10000))
shinyUI(pageWithSidebar(
headerPanel("CAFR Explorer"),
selectInput("city","City", as.list(levels(finalDat$City)), selected = NULL, multiple = FALSE),
mainPanel(
h3(textOutput("caption")),
plotOutput("CAFRplot")
)))
server.r
library(shiny)
library(ggplot2)
cities <- c("Anchorage","Fairbanks","Juenau","Wasilla","Homer")
years <- 2003:2013
Table <- "Capital Assets"
Account <- c("Land", "Art", "Buildings", "Equipment")
dat <- data.frame(City = sort(rep(cities, length(years))), Year = rep(years,length(cities)), Table)
sampleDat <- rbind(data.frame(dat,Acount = Account[1]), data.frame(dat, Acount = Account[2]), data.frame(dat, Acount = Account[3]), data.frame(dat, Acount = Account[4]))
finalDat <- data.frame(sampleDat, Value = runif(length(sampleDat[,1]), 1000,10000))
shinyServer(function(input, output) {
formulaText <- reactive({
paste(input$city)
})
output$caption <- renderText({
formulaText()
})
output$CAFRplot <- renderPlot({
## this one isn't working.
ggplot(finalDat, aes(x = finalDat[which(finalDat$City == input$city),2],
y = finalDat[which(finalDat$City == input$city),5])) +
geom_point()
## this one is working
#plot(finalDat[which(finalDat$City == input$city),2], y = finalDat[which(finalDat$City == input$city),5])
})
})
thử gói bạn ggplot gọi trong 'print' tức là' in (ggplot (...) + geom_point) ' –
Bạn nên hiển thị thông báo lỗi bạn nhận được thay vì chỉ nói "không hoạt động". Jake là đúng mà bạn nên bọc in xung quanh cuộc gọi ggplot của bạn, nhưng tôi nghĩ rằng có cái gì khác sai với cuộc gọi ggplot của bạn (scoping vấn đề). – GSee