ggplot в r-формате из csv-файла

#r #ggplot2 #shiny

Вопрос:

Я новичок в r shiny, что я пытаюсь сделать ggplot в r shiny из файла моего локального компьютера. Но это выдает мне предупреждение об ошибке: Ошибка в as.character: не удается принудить тип «закрытие» к вектору типа «символ» [Трассировка стека недоступна]

Я не уверен, что происходит не так, мои данные df в основном представляют собой csv-файл с тремя переменными(год, переменная и значение). Наша переменная «переменная» — это вектор символов(каждый элемент содержит несколько слов), Который я не уверен, как преобразовать в вектор строк(даже я не знаю, возможно это или нет, но я пытался использовать, is.string и т. Д.). Так что любая помощь была бы очень признательна.

 library(shiny)
df<-read.csv("C:\Users\syeda\Documents\syeda_demo\7.2.21_demo\vis.csv")
# define user interface object
ui <- fluidPage(
  (inputId = df),
  (outputId = ggplot))


# define server() function
server <- function(input, output){
  output$myoutput <- render({
    ggplot(df, aes(x=year(), y=value(), fill=variable()))   
      geom_bar(stat = "identity")   ylab("proportion")   
      scale_fill_manual(values = paste0(alphabet(20), "FF"), name = "year")   
      theme(axis.text.x = element_text(angle = 90, hjust = 1))
  input$df
    # If it uses an input value (input$myinput),
    # the output will be rebuilt whenever
    # the input value changes
  })}

# call to shinyApp() which returns the Shiny app
shinyApp(ui = ui, server = server)
 

Комментарии:

1. Я не уверен, где вы взяли этот синтаксис для пользовательского интерфейса, но вам нужно использовать такие функции, как textInput() и plotOutput() . Вы не можете просто заключать идентификаторы в круглые скобки. И тогда непонятно, откуда aes(x=year(), y=value(), fill=variable()) должны взяться подобные ценности. Обычно вы получаете их от таких входов, как input$year или что-то в этом роде. Если вы новичок в shiny, может быть, посмотрите выступления здесь: rstudio.com/resources/shiny-dev-con-2016 особенно те, что касаются реактивности.

2. @MrFlick Спасибо за ссылку, я пытаюсь изучить ее за последние несколько дней, и она кажется совсем другой, чем r-studio(думал, что будет похоже), так как это приложение. Можете ли вы дать мне шаблон того, что вы только что сказали? И aes(x=год (), y=значение (), заполнение=переменная ()), вероятно, следует записать как aes(x=год, y=значение, заполнение=переменная). Это то, что я сделал в своей r-студии, и это прекрасно работает.