R 所有Plotly Plot_geo segments将segment添加到0,0的lat/long
我正在用飞行路径/路线绘制一些地图,最近我更新了我使用的java版本,我得到了以下地图……正如你所知,它是正确的。每个点都连接到大西洋某处的第二个点(0,0)。绘出版本4.5.6和4.5.2R 所有Plotly Plot_geo segments将segment添加到0,0的lat/long,r,shiny,plotly,R,Shiny,Plotly,我正在用飞行路径/路线绘制一些地图,最近我更新了我使用的java版本,我得到了以下地图……正如你所知,它是正确的。每个点都连接到大西洋某处的第二个点(0,0)。绘出版本4.5.6和4.5.2 library(plotly) lat1 <- runif(10, 40,50) lat2 <- runif(10, 40,50) long1 <- runif(10, 40,50) long2 <- runif(10, 40,50) df <- data.frame(la
library(plotly)
lat1 <- runif(10, 40,50)
lat2 <- runif(10, 40,50)
long1 <- runif(10, 40,50)
long2 <- runif(10, 40,50)
df <- data.frame(lat1, lat2, long1, long2)
plot_geo(locationmode = 'USA-states') %>%
add_markers(data = df, x = ~long1, y = ~lat1, color = I("red")) %>%
add_markers(data = df, x = ~long2, y = ~lat2, color = I("blue")) %>%
add_segments(
data = df,name = "Paths",
x = ~long1, xend = ~long2,
y = ~lat1, yend = ~lat2,
alpha = 0.3, size = I(3), hoverinfo = 'none'
)
library(plotly)
lat1您需要使用split
分割片段。您可以在每行上使用id,如下所示:
df <- data.frame(id=1:10,lat1, lat2, long1, long2)
plot_geo(locationmode = 'USA-states') %>%
add_markers(data = df, x = ~long1, y = ~lat1, color = I("red")) %>%
add_markers(data = df, x = ~long2, y = ~lat2, color = I("blue")) %>%
add_segments(
data = df,name = "Paths",
x = ~long1, xend = ~long2,
y = ~lat1, yend = ~lat2, split=~id,
alpha = 0.3, size = I(3), hoverinfo = 'none'
)
df%
添加_标记(数据=df,x=~long1,y=~lat1,颜色=I(“红色”))%>%
添加_标记(数据=df,x=~long2,y=~lat2,颜色=I(“蓝色”))%>%
添加\u段(
data=df,name=“路径”,
x=~long1,xend=~long2,
y=~lat1,yend=~lat2,split=~id,
alpha=0.3,size=I(3),hoverinfo='none'
)
我不知道这是否是您出现问题的原因,但这样做会容易得多:df不是源代码,很抱歉代码太差。我很快输入了一个示例,没有进行代码检查,我将进行更改(相同的结果)谢谢!这正是我需要的。是否有方法将图例中的所有这些段分组?当您查看图例时,您将看到所有id都是单独的行,我无法让grouplegend
为所有id工作,有什么想法吗?请发布一个新问题,其中包含可复制的代码和预期结果