gpt4 book ai didi

r - 折线的传单颜色

转载 作者:行者123 更新时间:2023-12-01 13:47:06 25 4
gpt4 key购买 nike

我想使用一个基本的 data.frame 来获得三个不同颜色的折线

我目前正在使用以下代码作为示例。

require(leaflet)
df <- data.frame(lat=c(rnorm(20,50),rnorm(40,0),rnorm(40,-30)),
lon=rnorm(100),
group=rep(c("a","b","c"),times=c(20,40,40)),
col=rep(rainbow(3,alpha=NULL),times=c(20,40,40)))
leaflet(df) %>% addTiles() %>% addPolylines(lng=~lon,lat=~lat,color=~col)

但是我得到了一条连续的线,而不是每组的三个单独的线。

我可以分开行,但做了一个非常不雅的把戏:
df_a <- rbind(df[df$group=="a",],data.frame(lat=NA,lon=NA,group="a",col=NA))
df_b <- rbind(df[df$group=="b",],data.frame(lat=NA,lon=NA,group="b",col=NA))
df_c <- rbind(df[df$group=="c",],data.frame(lat=NA,lon=NA,group="c",col=NA))
df <- rbind(df_a,df_b)
df <- rbind(df,df_c)

在传单功能之前,但它仍然没有解决颜色问题。

任何帮助获得不同颜色的三个多段线将不胜感激。

最佳答案

这是对数据集中的每个组进行自动化的方法:

map <-  leaflet(df)
map <- addTiles(map)
for( group in levels(df$group)){
map <- addPolylines(map, lng=~lon,lat=~lat,data=df[df$group==group,], color=~col)
}
map

关于r - 折线的传单颜色,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35143155/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com