R Shiny "ОШИБКА: Текст, который должен быть написан, должен быть вектором длины один символ" - PullRequest
0 голосов
/ 20 апреля 2020

Я пытаюсь помочь другу отладить их первую попытку в базовом c блестящем приложении. Я знаю, что некоторые вещи не идеальны в этом коде (как минимум, по буквам), но я не понимаю, почему он должен выдавать ошибку субъекта ...

ui.R равно

library(magrittr)
library(dplyr)
library(tidyr)

olympic <- read.csv("olympic_games.csv", header = TRUE)


shinyServer(fluidPage(
  titlePanel("Olympic games medals from 2002 - 2012"),

  country <- levels(olympic$Country),

  total_medal <- unique(olympic$Total.Medal),

  sidebarLayout(
    sidebarPanel(
      helpText("Choose the contry to know how many medals they have"),

      selectInput("Country",
                  label = "chose country",
                  choices = country,
                  selected = country[1]),

      selectInput("country1",
                  label = "chose country",
                  choices = country,
                  selected=country[2]),
      br(),
      radioButtons("color", "Select the colour of histogram if you like?",
                   choices=c("green","red","yellow"), selected= "green")
    ),
    mainPanel(
      plotOutput("Olympic_games")
    )
  ))
)

и server.r

library(magrittr)
library(dplyr)
library(tidyr)
library(ggplot2)

shinyServer(
  function(input,output,session){
    olympic <- read.csv("olympic_games.csv", header = TRUE)
    output$Olympic_games <- renderPlot({

      olympic1 <- subset(olympic,Country==input$Country)
      olympic2 <- subset(olympic,Country==input$country1)
      col <- input$color
      frames <- rbind(olympic1,olympic2)
      ggplot(frames, aes(Total.Medals))+
        geom_histogram(aes(Total.Medals,fill=Country),color=col) + facet_grid(Country~Total.Medals)
    }
    )
  }  
)

Когда файл olympic_games.csv читается, данные выглядят как

head(olympic)
           Athlete Age       Country Year Closing.Ceremony.Date      Sport Gold.Medals Silver.Medals
1   Michael Phelps  23 United States 2008             8/24/2008   Swimming           8             0
2   Michael Phelps  19 United States 2004             8/29/2004   Swimming           6             0
3   Michael Phelps  27 United States 2012             8/12/2012   Swimming           4             2
4 Natalie Coughlin  25 United States 2008             8/24/2008   Swimming           1             2
5    Aleksey Nemov  24        Russia 2000             10/1/2000 Gymnastics           2             1
6    Alicia Coutts  24     Australia 2012             8/12/2012   Swimming           1             3
  Bronze.Medals Total.Medals
1             0            8
2             2            8
3             0            6
4             3            6
5             3            6
6             1            5

Я обнаружил ссылку на эту ошибку, возникающую при попытке передать две строки символов в блестящую функцию пользовательского интерфейса, которая ожидает только одну, но я нигде не вижу здесь, где это могло бы произойти.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...