基于输入在R中切换颜色方案
我今天进入了R Shinny,在过去的10个小时里,我一直在用传单集成构建一个漂亮的Shinny网络地图……到目前为止,大多数事情都很顺利!(耶,假期)但是我对变量的条件选择有一个问题 用户可以选择其选举结果在地图上显示为彩色多边形的政党。根据用户的参与方选择,配色方案应相应更改。例如,用户选择第1方,配色方案应标记为“蓝色”,第2方标记为“灰色”等 在传单第1部分中,我用以下方式定义配色方案:基于输入在R中切换颜色方案,r,shiny,leaflet,R,Shiny,Leaflet,我今天进入了R Shinny,在过去的10个小时里,我一直在用传单集成构建一个漂亮的Shinny网络地图……到目前为止,大多数事情都很顺利!(耶,假期)但是我对变量的条件选择有一个问题 用户可以选择其选举结果在地图上显示为彩色多边形的政党。根据用户的参与方选择,配色方案应相应更改。例如,用户选择第1方,配色方案应标记为“蓝色”,第2方标记为“灰色”等 在传单第1部分中,我用以下方式定义配色方案: leafletProxy("austriaMap") %>% addPolygons(
leafletProxy("austriaMap") %>%
addPolygons(data = data1(), color = "#444444", weight = 1, smoothFactor = 0.5,
opacity = 1.0, fillOpacity = 0.5,
fillColor = ~colorQuantile("Greys", data2())(data2()),
highlightOptions = highlightOptions(color = "white", weight = 2,
bringToFront = TRUE)
)
这非常有效,但我希望“灰色”部分根据所选方进行切换。我尝试了开关
功能,根据用户输入从颜色列表中进行选择:
col.list <- list("OrRd", "Greys", "Blues")
cols <- reactive({
switch(input$party,
"party1" = col.list[[1]],
"party2" = col.list[[2]],
"party3" = col.list[[3]])
})
有什么想法吗?这是迄今为止最耗时的部分,尽管它表面上很简单。这真的很奇怪,因为如果我手动将字符串放在传单部分,一切都会正常工作。如果通过调用
cols
放置字符串,则会收到此错误。还有其他解决办法吗?谢谢大家! 你能在你的传单
通话中说明你是如何呼叫cols
的吗?您是将其称为cols
,还是将其称为cols()
?这不是一个可复制的示例,请进行编辑,以便其他人可以复制/粘贴并实际运行和复制错误消息,而这不是熟练的猜测。@Phil:叫我驴子……4个小时的搜索,它实际上只是cols(),而不是cols。非常感谢。
Warning: Error in UseMethod: no applicable method for 'toPaletteFunc' applied to an object of class "c('reactiveExpr', 'reactive')"