R 选择Input可更改屏幕中的多个元素
有没有办法让selectInput更改绘图的两个元素?例如,我创建了一个反应块来处理我想要在geom_point中为每个selectInput选项绘制的数据,它工作得非常好。但是,我也希望点的颜色发生变化,每种颜色的选择都是自动的,用户不需要自己选择一种。因此,对于一个输入$case points,我想要用geom_point“orangered2”写的东西。但如果他们选择另一个输入$case选项,我希望geom_point中的点数为“gold” 也许是一个if语句,但我不确定如果是这样的话,应该把它放在哪里 我发布了一段我的UI和服务器信息 选项卡中的UI代码段R 选择Input可更改屏幕中的多个元素,r,shiny,R,Shiny,有没有办法让selectInput更改绘图的两个元素?例如,我创建了一个反应块来处理我想要在geom_point中为每个selectInput选项绘制的数据,它工作得非常好。但是,我也希望点的颜色发生变化,每种颜色的选择都是自动的,用户不需要自己选择一种。因此,对于一个输入$case points,我想要用geom_point“orangered2”写的东西。但如果他们选择另一个输入$case选项,我希望geom_point中的点数为“gold” 也许是一个if语句,但我不确定如果是这样的话,应
tabPanel("Analysis",
sidebarLayout(
sidebarPanel(width = 4,
selectInput(inputId = "case",
label="Locations",
choices = c("TRUE", "FALSE")))
服务器代码段
server <- function(input, output){
data_use <- reactive({
real_final[real_final$case %in% input$case,]
})
output$bathy <- renderPlot({
autoplot.bathy(shelf, geom=c("raster", "contour")) +
scale_fill_gradientn(name = "meters above\nsea level", colours = c("plum2", "steelblue4","steelblue3", "steelblue2", "steelblue1"),
breaks = c(-6000,0),
limits = c(-6000,0),
labels = c("-6000m","0m"),
na.value = "black") +
geom_point(data = data_use(), aes(long, lat), color = "orangered2", pch = ".") +
xlab("Longitude") +
ylab("Latitude") +
ggtitle("Seal Locations") +
theme(axis.text.x=element_text(size=6),
axis.text.y=element_text(size=6),
axis.title=element_text(size=10,face="bold"))
server一个选项是返回带有无功导体的列表:
data_and_color <- reactive({
list(
data = real_final[real_final$case %in% input$case,],
color = ifelse(input$case == "TRUE", "gold", "orangered2")
)
})
x <- data_and_color()
ggplot(data = x$data, ......)
color = x$color