1

R闪亮的新手。模拟在Github上找到的闪亮服务器,但使用逻辑分布而不是所示的二次、线性和 LOESS。在我的代码中,复选框被取出,y 变量是一个分类变量。R 在控制台中以 }) 结尾之前不会显示错误。R 表示“找不到函数”shinyServer”。我没有尝试使用 runApp() 的应用程序,因为发生了错误。

我的代码:

library(ggplot2)

hw <- read.csv("LogitTV.csv")

in_range <- function(x, range) {
 x >= min(range) & x <= max(range)

}

shinyServer(function(input, output) {

 limit_data_range <- function() {

     if (is.null(input$x_range) || is.null(input$y_range)) {
         return(NULL)
     }

     hw_sub <- hw[in_range(hw[[input$x_var]], input$x_range) &
                 in_range(hw[[input$y_var]], input$y_range), ]

     hw_sub
 }



 output$main_plot <- renderPlot({


     hw_sub <- limit_data_range()

     if (is.null(hw_sub))
         return()


     xdat <- hw[[input$x_var]]
         ydat <- hw[[input$y_var]]





     if(input$mod_logistic)
         point_alpha <- 0.5  
     else
         point_alpha <- 1






     p <- ggplot(hw_sub, mapping = aes_mapping) +
         points +
         theme_bw() +
         scale_colour_hue(l = 40) +
         scale_shape(solid = FALSE) +

         scale_x_continuous(limits = range(xdat)) +
         scale_y_continuous(limits = range(ydat))




     if (max(input$x_range) != max(xdat)) {
             p <- p + geom_vline(xintercept = max(input$x_range), linetype = "dashed",
                                 alpha = 0.3)
         }
         if (min(input$x_range) != min(xdat)) {
         p <- p + geom_vline(xintercept = min(input$x_range), linetype = "dashed",
                             alpha = 0.3)
     }

     if (max(input$y_range) != max(ydat)) {
             p <- p + geom_hline(yintercept = max(input$y_range), linetype = "dashed",
                                 alpha = 0.3)
         }
         if (min(input$y_range) != min(ydat)) {
         p <- p + geom_hline(yintercept = min(input$y_range), linetype = "dashed",
                             alpha = 0.3)
     }


     if (input$mod_logistic) {
         p <- p + geom_smooth(method = lm, se = FALSE, size = 0.75,    
                             linetype = "dotdash")
         }

     print
 })



 output$x_range_slider <- renderUI({
         xmin <- floor(min(hw[[input$x_var]]))
         xmax <- ceiling(max(hw[[input$x_var]]))

     sliderInput(inputId = "x_range",
                 label = paste("Limit range"),
                 min = xmin, max = xmax, value = c(xmin, xmax))
 })

 output$y_range_slider <- renderUI({
         ymin <- floor(min(hw[[input$y_var]]))
         ymax <- ceiling(max(hw[[input$y_var]]))

     sliderInput(inputId = "y_range",
                 label = paste("Limit range"),
                 min = ymin, max = ymax, value = c(ymin, ymax))
 })





 make_model <- function(model_type, formula, ...) {

     hw_sub <- limit_data_range()
     if (is.null(hw_sub))
         return()



     do.call(model_type, args = list(formula = formula, data = quote(hw_sub), ...))
 }

 output$mod_logistic_text <- renderPrint({
         formula <- paste(input$y_var, "~", input$x_var)

 })

}) 错误:找不到函数“shinyServer”

4

0 回答 0