博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
ggplot2:画世界地图和中国地图 合并数据 增添信息 标记
阅读量:7015 次
发布时间:2019-06-28

本文共 1370 字,大约阅读时间需要 4 分钟。

世界地图:

library(maps)data("world.cities")bigcities <- subset(world.cities, pop > 5000000)qplot(long, lat, data = bigcities,colour=country.etc,size=pop)+ borders("world", size= 0.5)

中国地图:

library(mapdata)ch_cities <- subset(world.cities, country.etc=="China")ggplot(ch_cities, aes(long, lat)) + geom_point(colour= alpha("red",0.5))+ borders("china")#

合并数据到地图数据:

  

states <- map_data("state")##将地图数据转为数据框arrests <- USArrests ##新数据(要与地图数据中的某一列匹配)names(arrests) <- tolower(names(arrests)) ##将列名翻译为小写,因为state数据的region为小写arrests$region <- tolower(rownames(USArrests)) ##增添新列 regionchoro <- merge(states, arrests, by = "region")# Reorder the rows because order matters when drawing polygons# and merge destroys the original orderingchoro <- choro[order(choro$order), ]qplot(long, lat, data = choro, group = group,   fill = Assault, geom = "polygon") ##多边形qplot(long, lat, data = choro, group = group,   fill = Assault / murder, geom = "polygon")ia <- map_data("county", "iowa")library(plyr)mid_range <- function(x) mean(range(x, na.rm = TRUE))centres <- ddply(ia, .(subregion),   colwise(mid_range, .(lat, long)))  ##计算区的中心位置ggplot(ia, aes(long, lat)) +   geom_polygon(aes(group = group),     fill = NA, colour = "grey60") +  geom_text(aes(label = subregion), data = centres,  ##对地图标注    size = 2, angle = 45)出现问题时:dev.off()

  

转载于:https://www.cnblogs.com/JoAnnal/p/6776916.html

你可能感兴趣的文章
VertexBuffer渲染次序
查看>>
python中使用 xpath
查看>>
集中管理:领导者,不能不考虑的几件事之—— 拿什么辅助你,我的决策?(一)...
查看>>
关于VirtualBox虚拟机安装GhostXP出现蓝屏proce***.sys 的解决办法
查看>>
JSP如何在servlet将一个数据模型对象传递给jsp页面
查看>>
PHP 实现“贴吧神兽”验证码
查看>>
根据一个表的数据情况显示另一个表的数据
查看>>
TP4056大电流1A使用注意事项
查看>>
Java常考面试题(四)
查看>>
学习Javascript闭包(Closure)
查看>>
你性格那么软,总是经常改变想法
查看>>
NeHe OpenGL教程 第十七课:2D图像文字
查看>>
学习SpringMVC——从HelloWorld开始
查看>>
awk打印指定列以后的所有内容
查看>>
用 kGDB 调试 Linux 内核
查看>>
vuejs2.0子组件改变父组件的数据
查看>>
P1019 单词接龙
查看>>
git的版本回退探索
查看>>
H3c 配置ssh acl
查看>>
Dedecms判断当前栏目下是否有子栏目
查看>>