Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/81.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
R:ggplot2/ggmap世界地图-如何将png图像加载为地图_R_Google Maps_Ggplot2_Ggmap_Map Projections - Fatal编程技术网

R:ggplot2/ggmap世界地图-如何将png图像加载为地图

R:ggplot2/ggmap世界地图-如何将png图像加载为地图,r,google-maps,ggplot2,ggmap,map-projections,R,Google Maps,Ggplot2,Ggmap,Map Projections,我正在尝试为ggmap缺少的世界地图支持找到一个解决方法(即,由于mapproj包中的特性,您无法创建任何显示纬度>80°的地图)。 然而,在有限的范围内,似乎可以创建空的世界地图并将其保存为图像(png等),即使您不能像在ggmap(get_map(…))中通常那样直接使用ggmap对象 这就是为什么我想将png(理想情况下,我用ggmap创建的png)加载到ggplot2中,并将其用作贴图。我该怎么做呢 我知道您可以在ggplot2中加载背景图像(请参阅)。但我也希望在地图上绘制点-正确映射

我正在尝试为
ggmap
缺少的世界地图支持找到一个解决方法(即,由于
mapproj
包中的特性,您无法创建任何显示纬度>80°的地图)。 然而,在有限的范围内,似乎可以创建空的世界地图并将其保存为图像(png等),即使您不能像在
ggmap(get_map(…))
中通常那样直接使用ggmap对象

这就是为什么我想将png(理想情况下,我用
ggmap
创建的png)加载到
ggplot2
中,并将其用作贴图。我该怎么做呢

我知道您可以在
ggplot2
中加载背景图像(请参阅)。但我也希望在地图上绘制点-正确映射纬度/经度值非常重要


(注意:此答案中的代码提供了一些代码,就输出而言,这些代码与我的想法非常接近。)

下面是一个没有ggmap的示例,您可以使用它

require(ggplot2)   
require(cshapes)

world <- cshp(date=as.Date("2012-01-1"))
world.points <- fortify(world, region='COWCODE')

world.points2 <- merge(world.points,world@data,by.x="id",by.y="COWCODE",all.x=TRUE )

# Add a variable 'size' per country 
world.points2$size <- factor(ifelse(world.points2$AREA < 121600,"small",ifelse(world.points2$AREA > 515000, "large", "medium")))

# Coord_fixed fixes the aspect ratio.
p <- ggplot(world.points2,aes(long,lat,group=group,fill=size)) + geom_polygon(colour="grey50") + coord_fixed()
p
require(ggplot2)
要求(C形状)

世界如果你想绘制世界地图,你可以这样做:library(ggplot2)library(maps)#获取世界地图信息world_map@JT85:这肯定是一个解决方案。我以前一直在使用maps软件包,但现在我正试图找到方法来创建更详细、更美观,尤其是更适合学术写作的地图。这就是为什么我认为我可以用实际的地图(一幅图像,而不是一系列的空间多边形)来绘制我的数据。@JT85:我希望我清楚地表明你的解决方案不是我想要的。但无论如何,谢谢你的贡献。你说的更详细、更好看是什么意思?国家/地区级别,例如每个国家/地区的颜色?如果您有正确的形状文件,例如根据某个变量为每个国家着色,您可以根据自己的喜好进行详细操作。我将发布一个答案作为示例。出于学术目的,我更愿意这样做,因为你关注的是内容。@JT85:“更好看”:除此之外,我应该教我的同学们关于R中的地图。我的想法是,如果他们使用特别有吸引力(并且易于创建)的地图,他们会觉得玩起来很舒服。这就是为什么我认为像ggmap这样与谷歌地图相关的R软件包可能是正确的选择。+1提醒我使用这种简单的方法来制作世界地图,尽管它没有回答这个问题。