我想知道是否有人知道如何在 R 中的 ggmap 绘制的地图上保留谷歌版权信息(使用新比例)?
例如:
library(ggmap)
library(ggplot2)
# download basemap
ggmap::register_google(key="xxx") # insert your hey here xxx
ggmap::ggmap_show_api_key()
base_map <- get_googlemap(center = c(lon= -2.325278, lat=54.6000000), zoom = 5, style = 'element:labels|visibility:off',color= "bw")
Run Code Online (Sandbox Code Playgroud)
当我在base_map不改变比例的情况下进行绘图时,版权信息会插入到绘图的底部,如下所示:
ggmap(base_map, extent = "panel")
Run Code Online (Sandbox Code Playgroud)
然而,当我绘制base_map一个新的x,并y axis放大到英国大陆。我还裁剪了版权信息。如下:
ggmap(base_map, extent = "panel")+
scale_x_continuous(limits = c(-7, 3), expand = c(0, 0)) +
scale_y_continuous(limits = c(49.5, 59), expand = c(0, 0))
Run Code Online (Sandbox Code Playgroud)
有谁知道我如何获得第二个情节但有出版所需的版权信息?
我试图更改zoom=函数中的参数,get_googlemap()但它似乎总是将英国的顶部或底部剪掉,并且在绘制数据时我需要能够看到整个区域。
非常感谢您的帮助!
我想从列表列表中创建一个数据框,其中生成的数据框为每个元素有一列,而行是单独的。这很难解释,所以我会尝试制作一个例子来处理。
可以说我的清单如下:
myList <- list(
list(L=c(1,2,3),a=c(1,2,3),b=c(1,2,3)),
list(L=c(4,5,6),a=c(4,5,6),b=c(4,5,6)),
list(L=c(7,8,9),a=c(7,8,9),b=c(7,8,9)))
Run Code Online (Sandbox Code Playgroud)
结果数据框是这样的:
df <- data.frame(ind = c(1,2,3),
L.1 = c(1,4,7),L.2 = c(2,5,8), L.3 = c(3,6,9),
a.1 = c(1,4,7),a.2 = c(2,5,8), a.3 = c(3,6,9),
b.1 = c(1,4,7),b.2 = c(2,5,8), b.3 = c(3,6,9))
Run Code Online (Sandbox Code Playgroud)
我试过使用
data.frame(do.call(rbind, myList))
Run Code Online (Sandbox Code Playgroud)
df <- bind_rows(myList, .id="column_label")
但这些会为每个人产生三行,而不是所需的输出。
我也尝试使用:
df <- bind_cols(myList)
但这会将列划分为每个列表。
知道如何解决这个问题吗?
谢谢,伊芙