誰が助けることができますか、これは私の最初の投稿です。私は数時間かけて、作成したい光沢のあるアプリケーションにggplotを使って棒グラフを生成する方法を理解しようとしました。しかし、uiの作品は見つける、しかし、サーバー関数は空のプロットを生成します。問題は、renderPlot関数にあります。私はggplotのaes_string引数に反応値を適切に渡してはならないと信じています。 C2はフィルタリングされたデータセットです。目標は、ユーザーが2つの変数を選択し、それらの変数に基づいてデータセットをフィルタリングする単純なアプリケーションを構築することです。サブセット化されたデータセットは、ggplotデータ引数に渡されます。Shinyアプリケーションでggplotを使用して反応性プロットを作成するには
library(shiny)
library(dplyr)
ui <- fluidPage(
sidebarLayout(
sidebarPanel(
selectInput(inputId = "Demog",label = "Factor:",choices = c("HH Income" = "Income",
"Age Group" = "Age",
"US Region" = "Region") , selected = "Age"),
selectInput(inputId = "Car",label = "VW Model:",choices = c("BEETLE" = "BEETLE",
"CC" = "CC",
"EOS" = "EOS",
"GOLF" = "GOLF",
"GTI" ="GOLF SPORTSWAGEN GTI",
"JETTA" = "JETTA",
"PASSAT" = "PASSAT",
"TIGUAN" = "TIGUAN",
"TOUAREG" = "TOUAREG") , selected = "BEETLE"),
radioButtons(inputId = "Metric",label ="Measurement Type",choices =
c("Conquest Volume Index" = "TotCmpConqVol_IDX","C/D Ratio" = "TotCmpCDRatio_IDX"), selected = "TotCmpConqVol_IDX")
)
),
mainPanel(
tags$h1("The Bar Charts"),
tags$h2("The metrics"),
plotOutput("P1")
)
)
server <- function(input, output){
library(ggplot2)
CONQDF <- read.csv("C:/Users/Reginald/Desktop/CONQ_VW/CONQUEST2.csv")
C2 <- reactive(subset(CONQDF,input$Demog %in% levels(input$Demog)[1] & CONQDF$VW_Model == input$Car))
output$P1 <- renderPlot({
ggplot(C2(),aes_string(x="CompMake", y=input$Metric))+ geom_bar(stat = "identity")
})
}
shinyApp(ui,server)
ようこそstackoverflowへようこそ!あなたは、例えば、車のデータセットの例のデータセットを使用し、それに応じて選択肢を変更すると、コードが再現可能になり、より速い回答が得られます。 –
ggplot2を使用するときは、正しく思い出すには 'print()'を使うべきです。それで... print(pg) –
@Mikael Jumppanen Mikaelありがとうございました。私はこれらのオプションを試しました。(ggplot(C2()...)私は速い応答のためにありがとう、私は実行するコードを得ることができるかどうか見るために例のデータセットの1つを使用するでしょう、そうでなければ、私は例のデータセットで私の応答を再投稿します。 – RareAir