【问题标题】:Different colors for flight routes leaflet with R带有 R 的飞行路线传单的不同颜色
【发布时间】:2018-05-14 15:10:47
【问题描述】:

我遇到了传单的问题。
我想绘制飞行路线(已经使用 gcIntermediate 完成),但我想根据因子变量(状态:取消、延迟)为路线着色。
我想要延迟的路线用蓝色着色,取消的路线用红色表示

我的 R 代码

gcIntermediate(coord1[,c(1,2)], coord1[,c(3,4)],  
               n=100,   
               addStartEnd=TRUE,  
               sp=TRUE) %>%   
  leaflet() %>%   
  addTiles() %>%   
  setView(-100,38, zoom = 4.49) %>%   
  addPolylines(color="red") %>%   
  addMarkers(lng=c(coord1[,1],coord1[,3]),lat=c(coord1[,2],coord1[,4]))

其中 coord1 是一个数据框,其中包含:两个城市的纬度和对数以及因子变量(状态)。

【问题讨论】:

  • 您能否提供一些示例数据以便我们运行您的代码?
  • coord1
  • 我想我成功了! :D
  • gcIntermediate(coord1[,c(1,2)], coord1[,c(3,4)], n=100, addStartEnd=TRUE, sp=TRUE) %>% 传单() %>% addTiles() %>% setView(-100,38, zoom = 4.49) %>% addPolylines(color=colores(coord1)) %>% addMarkers(lng=c(coord1[,1],coord1[, 3]),lat=c(coord1[,2],coord1[,4])) colores
  • 您应该编辑您的帖子,而不是在评论部分添加信息。

标签: r leaflet r-leaflet


【解决方案1】:
        coord1 <- data.frame("Longitud1" = c(-84.42694,-82.42694,-104.66700),   
  "Latitud1"=c(33.64044,33.64044,39.85841), 
 "Longitud2"=c(-97.03720,-80.15275,-112.00806), 
     "Latitud2"=c(32.89595,26.07258,33.43417), 
     "estado"=c("Delayed","Delayed","Cancelled")) 

答案是:

colores<-function(df){ color<-c() for( i in 1: nrow(coord1)){ if (df$estado[i]=="Cancelled") { color<-c(color,"red") }else{ color<-c(color,"orange") } } return(color) } 

 gcIntermediate(coord1[,c(1,2)], coord1[,c(3,4)], n=100, addStartEnd=TRUE, sp=TRUE) %>% leaflet() %>% addTiles() %>% setView(-100,38, zoom = 4.49) %>% addPolylines(color=colores(coord1)) %>% 
  addMarkers(lng=c(coord1[,1],coord1[,3]),lat=c(coord1[,2],coord1[,4])) 

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2016-08-14
    • 1970-01-01
    • 1970-01-01
    • 2019-01-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-10-12
    相关资源
    最近更新 更多