Rシャイニーでリアクティブプロットを作成したいと思います。プロットは、変数を持つ行の数をカウントする必要があります
creadate
特定の値を持っています。フィードされるデータは、次の選択によってフィルタリングされます
employeeName
、
typeName
、および
date
。私は次のように書いています:
library(shiny)
library(shinyWidgets)
library(tidyverse)
data <- tibble(employee= c("John", "Mary", "Lisa"), type = c("AA", "AB", "AB"),
creadate = as.Date(c("2018-11-29", "2018-11-22", "2018-11-220")))
employee <- sort(unique(data$employee))
type <- sort(unique(data$type))
ui <- fluidPage(
fluidRow(
column(4,
selectInput("employeeName", "Name of employee", employee, multiple = TRUE),
selectInput("typeName", "Type", type, multiple = TRUE),
dateRangeInput("date", "Date", start = "2020-01-01")
),
column(8,
plotOutput("policyPlot")
)
)
)
server <- function(input, output, session) {
#create a reactive object with a NULL starting value
listofrows <- reactiveValues(data = NULL)
#observe the changes in inputs and update the reactive object
observeEvent(c(input$employee, input$typeName, input$date), {
listofrows$data <- subset(data, employee == input$employee &
type == input$typeName &
creadate >= input$date[1] & creadate <= input$date[2])
}, ignoreInit = T, ignoreNULL = TRUE)
output$policyPlot <- renderPlot(
ggplot(listofrows$data) +
stat_count(aes(creadate))
)
}
shinyApp(ui, server)
ただし、次のエラーが発生します。
Warning: Error in FUN: object 'creadate' not found
183: FUN
182: lapply
181: scales_add_defaults
180: f
179: l$compute_aesthetics
178: f
177: by_layer
176: ggplot_build.ggplot
174: print.ggplot
166: func
164: f
163: Reduce
154: do
153: hybrid_chain
125: drawPlot
111: <reactive:plotObj>
95: drawReactive
82: origRenderFunc
81: output$policyPlot
1: runApp
なぜこれが起こるのか誰かが知っていますか?
creadate
変数は
listofrows$data
。
回答 1 件
関連記事
- エラー:オブジェクト ''が `separate()`で見つかりません
- $PATHに実行可能ファイルが見つかりません:不明なエラーメッセージ
- jwt-decodeオブジェクトへのアクセスに伴うTypescriptエラー
- git LFSファイルの取得中にエラーが発生しました:オブジェクトがサーバーに存在しません:[404]オブジェクトがサーバーに存在しません
- javascriptの関数にオブジェクトを渡すときにキャッチされない構文エラー
- TypeError: 'NoneType'オブジェクトは反復可能ではありませんなぜこのエラーが発生したのですか?
- 非常に単純なCWindowsAPIプログラムでエラー126モジュールが見つかりません
- jsonオブジェクトの逆シリアル化でエラーが発生します
- #エラーのあるNETファイル名:404:ファイルまたはディレクトリが見つかりません
関連した質問
- 光沢のあるアプリを初めて起動したときにデフォルトで表示される特定のtabItem()を選択します
- shinRのリアクティブデータフレームと更新入力の問題
- ShinyのデータフレームへのnumericInput
- 同じ行にRShiny静的テキストとtextOutput
- 条件付きのRShinyのrenderTextIf Else
- R /データテーブルのShinySelectDataFrom列
- 光沢のあるダッシュボードの他のタブのアクションに基づいて、ダウンロードボタンをタブに表示します
- 光沢のあるアプリでプロットの読み込み時間に基づいて変化する読み込みメッセージを作成します
- 回答をクリアするデータ入力フォームをRshinyで作成する
- 光沢のあるアプリがdplyrと%in%演算子を使用してフィルタリングしない
このエラーが発生するのは、最初は、
listofrows$data
ですNULL
、すべての入力がNULL
。追加するだけです
req(listofrows$data)
欠落している入力を処理するためにプロットする前。ソースhttps://shiny.rstudio.com/articles/req.html