Почему в моем блестящем приложении появляется ошибка «сервер не найден»? - PullRequest
0 голосов
/ 07 мая 2020

Я пытаюсь научиться сиять самостоятельно, и пока это было очень весело. Я пытаюсь нарисовать особую точку на графике с обоими входными данными, исходящими от пользователя. Я получаю сообщение «Ошибка в shinyApp (ui = ui, server = server): объект« сервер »не найден». Вот мой код:

ui <- fluidPage(
  titlePanel("Title"),
  sidebarPanel(
  sliderInput(inputId ="x1", 'I', min = 4, max = 12, value = 4),
  sliderInput(inputId = "y1", 'Y', min = 0, max = 10, value = 1)),
  plotOutput("Scale")
  )

server() <- function(input, output){
  output$Scale <- renderPlot({
      ggplot(aes_string(x = input$x1, y = input$y1))+
        geom_point() })
}


shinyApp(ui = ui, server = server)

1 Ответ

0 голосов
/ 08 мая 2020

Вот полный рабочий пример, я надеюсь, это поможет.

Входы ползунка предоставят числовую информацию для вашего графика. Это может быть проще для понимания, если поместить его во фрейм данных (см. Ниже).

Отображение aes aestheti c предоставляет информацию по осям x и y для вашего графика и использует data для обозначения набор данных для построения графика.

Наконец, добавлены ограничения, позволяющие оценить перемещение точки по графику при изменении ползунка (в противном случае масштаб оси будет автоматически изменен).

Еще больше вы можете узнать на ggplot2 здесь:

https://ggplot2.tidyverse.org/

library(ggplot2)
library(shiny)

ui <- fluidPage(
  titlePanel("Title"),
  sidebarPanel(
    sliderInput(inputId ="x1", 'I', min = 4, max = 12, value = 4),
    sliderInput(inputId = "y1", 'Y', min = 0, max = 10, value = 1)),
  plotOutput("Scale")
)

server <- function(input, output){
  output$Scale <- renderPlot({
    my_data <- data.frame(x = input$x1, y = input$y1)
    ggplot(aes(x = x, y = y), data = my_data)+
      geom_point() +
      xlim(4, 12) +
      ylim(0, 10)
  })
}

shinyApp(ui = ui, server = server)
...