小册子闪亮的动态彩色多边形r

时间:2016-05-20 01:11:12

标签: r shiny leaflet

我正在尝试创建一个r闪亮的传单应用程序,可以根据用户输入动态地为具有pal光谱的多边形着色。注意我不只是着色多边形,我还想使用颜色范围来说明变量中的一系列值。 (因此需要pal谱)

下面的代码运行正常 - 但是pal和fillColor输入在这里不是动态的。

output$mymap <- renderLeaflet({
map <- readShapeSpatial(paste(input$state,"Zip.shp",sep=""))

pal <- colorNumeric(
 palette = "YlGnBu",
 domain = map$college)

leaflet() %>%
addProviderTiles("CartoDB.Positron") %>%
addPolygons(data=map,
         fillColor=~pal(college),
fillOpacity = 0.7, 
 weight = 1, 
smoothFactor = 0.2)
 })}

但下面的版本失败了。它创建了“无法将此S4类强制转换为向量”的错误。为什么会出现此错误?如何解决此问题?

失败的代码:

 output$mymap <- renderLeaflet({

 map <- readShapeSpatial(paste(input$state,"Zip.shp",sep=""))

 pal <- colorNumeric(
  palette = "YlGnBu",
  domain = paste(map,"input$fill",sep=""))

leaflet() %>%
  addProviderTiles("CartoDB.Positron") %>%
  addPolygons(data=map,
              fillColor=~pal(input$fill),
              fillOpacity = 0.7, 
              weight = 1, 
              smoothFactor = 0.2)

为什么我不能使用输入$ fill的动态光泽输入来设置多边形的pal光谱和fillColor?任何可能的解决方法?

感谢您的帮助!

1 个答案:

答案 0 :(得分:0)

我认为您的案件可以通过this suggestion解决。因此,您应该使用fillColor = ~pal()(input$fill)