十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
这篇文章给大家介绍R语言数据地图中的美国地图是怎样的,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。
创新互联技术团队10年来致力于为客户提供成都做网站、网站设计、品牌网站建设、网络营销推广、搜索引擎SEO优化等服务。经过多年发展,公司拥有经验丰富的技术团队,先后服务、推广了上1000+网站,包括各类中小企业、企事单位、高校等机构单位。
之前有过一段时间,特别热衷于数据地图,也分享很多篇关于地图制作的教程(涉及到各种作图软件),但大多是整理拼凑,自己发挥的不多。
今天这一篇主要分享美国地图的绘图代码,同样是我们之前分享世界地图、中国地图时的代码(局部地方有小改动)。
之前迟迟没有找到好用的美国全境的地理信息数据,最近终于在某网站上找到了。(虽然R语言的Map包中存有可以用的美国地图,但是自己还是喜欢用自定义方式来做)。
平台环境:
R x64 3.31/Rstudio 0.99.903/ggplot2 2.1.0
关于包的安装及加载更新问题,昨天的教程已经讲得很清楚了。
以下是代码步骤:
1、加载代码运行所需的环境包
library(ggplot2)
library(plyr)
library("maptools")
2、读取并转化美国各州地理信息数据(该数据会共享在魔方学院的QQ群里)
American_map <-readShapePoly("C:/rstudy/USA_map/STATES.SHP") #将地理信息数据导入R环境
x <- American_map@data #读取行政信息
xs <- data.frame(x,id=seq(0:50)-1) #共51个形状
American_map1 <- fortify(American_map) #转化为数据框
American_map_data <- join(American_map1, xs, type = "full") #合并两个数据框
3、读取业务指标数据(该文件也会打包分享)
该数据文件是.CSV格式的,可以用excel直接打开替换指标数据即可,然后另存为.CSV格式。
mydata <- read.csv("C:/rstudy/USA_map/USA_data.csv")#读取业务指标数据,csv格式
4、将地理数据与业务指标数据合并为作图数据(数据框)
American_data <- join(American_map_data, mydata, type="full") #合并两个数据框
5、地图映射代码(ggplot2包所支持的ggplot函数,感兴趣可以自行探索,若不感兴趣,直接忽略跑代码即可)。
ggplot(American_data, aes(x = long, y = lat, group = group,fill = Sale)) +
geom_polygon(colour="grey40") +
scale_fill_gradient(low="white",high="steelblue") + #指定渐变填充色,可使用RGB
coord_map("polyconic") + #指定投影方式为polyconic,获得常见视角美国地图,如要获得平面视角地图,此句可省略
theme( #清除不需要的元素
panel.grid = element_blank(),
panel.background = element_blank(),
axis.text = element_blank(),
axis.ticks = element_blank(),
axis.title = element_blank(),
legend.position = c(0.1,0.3)
)
带空间投影方式的美国地图全境:
以下是删除coord_map("polyconic")字句后的地图映射效果:
其中填充的颜色渐变可以通过scale_fill_gradient(low="white",high="steelblue")参数修改;
各州区域轮郭线可以通过geom_polygon(colour="grey40")参数修改;
填充数据指标可以通过fill = Sale参数修改;
由于美国州较多,州名不便全部标出,所以以上不含各州标签。
关于R语言数据地图中的美国地图是怎样的就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。