【发布时间】:2021-03-29 15:46:45
【问题描述】:
我正在创建一个闪亮的应用程序,它在我的 df 中创建一个包含两个变量的图。用户可以选择 X 和 Y,然后是一个复选框选项用于记录 X 和一个用于记录 Y。我有一个工作代码,但我正在尝试简化它。为此,我想将用户的 X 变量分配给“独立”,将用户的 Y 变量分配给“依赖”,然后创建一个 if 语句来说明独立和依赖被记录,这样我就可以继续我的情节代码只是指变量独立和依赖。这是我必须说明我的意思的代码,但情节没有出现在我的应用程序中。我假设我错误地使用了 reactive():
output$Plot <- renderPlot({
reactive({
if (input$xLog) { # check box for log(X)
Independent <- log(df[[input$Var1]])
} else if (!input$xLog) {
Independent <- df[[input$Var1]]
}
if (input$yLog) { # check box for log(Y)
Dependent <- log(df[[input$Var2]])
} else if (!input$yLog) {
Dependent <- df[[input$Var2]]
}
plot <- ggplot(data = df, mapping = aes(x = Independent, y = Dependent))
}) end reactive()
plot <- plot + geom_point()
plot
}) # end renderPlot
感谢您的宝贵时间!
【问题讨论】:
-
在你的
ggplot命令中,独立和从属应该是df的列名,这样才能正常工作。所以要么重命名它们,生成一个转换后的新df,或者做类似ggplot() + geom_point(aes(x=Independent, y=Dependent))