本篇文章给大家分享的是有关R语言版数据地图是怎样的,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。
今天要跟大家分享的是R语言版数据地图,分省(市级)热力地图。
步骤与昨天分享的中国热力地图步骤基本一致,只是需要调用的数据文件和需要自定义的指标文件略有本不同。
R语言系统环境配置:
R version 3.2.3
RStudio Version 0.99.484
在正式开始之前,必须确保你的R语言环境中已经安装以下包:
ggplot2
plyr
maptools
如果还未安装,需要先安装:install.packages("ggplot2","plyr","maptools")
下面是正式作图步骤:
1、加载所需要的R包:
library(ggplot2)
library(plyr)
library(maptools)
2、读入作图数据:
CHN_adm2 <- readShapePoly("c:/rstudy/CHN_adm/CHN_adm2.shp") 读入数据文件
3、整合与转化数据
CHN_adm2_1 <- fortify(CHN_adm2) #转化为数据框
x <- CHN_adm2@data #读取行政信息
xs <- data.frame(x,id=seq(0:344)-1) #总共345行
china_map_data <- join(CHN_adm2_1, xs, type = "full") #合并形状数据与行政
4、抽取安徽省的整合数据
anhui <-subset(china_map_data,NAME_1=="Anhui") #取出安徽省的子集
5、读入指标数据
mydata=read.csv("c:/rstudy/anhui.csv") #打开自定义的指标文件。
以上指标数据需要你自己定义,使用excel文件创建,指标数据输入完成之后,另存为.CSV格式(存至c:/rstudy/下,这样便于引用,当然这些指标数据文件在昨天分享的数据文档里已经为你创建好了,你只需要修改数据就可以了)
anhui_data <- join(anhui, mydata, type="full") #合并地图数据与业务数据
6、运行代码:
ggplot(anhui_data, aes(x = long, y = lat, group = group,fill=zhibiao)) +
geom_polygon(colour="grey40") +
scale_fill_gradient(low="white",high="steelblue") +
coord_map("polyconic") +
theme(
panel.grid = element_blank(),
panel.background = element_blank(),
axis.text = element_blank(),
axis.ticks = element_blank(),
axis.title = element_blank()
) #【无标签】
以上代码与前一篇所讲到的代码几乎一样,只是具体数据不一样。
midpos <- function(x) mean(range(x,na.rm=TRUE))
centres <- ddply(anhui_data,.(city),colwise(midpos,.(long,lat)))
ggplot(anhui_data,aes(long,lat)) +
geom_polygon(aes(group=group,fill=zhibiao),colour="black") +
scale_fill_gradient(low="white",high="steelblue") +
geom_text(aes(label=city),data=centres) +
theme(
panel.grid = element_blank(),
panel.background = element_blank(),
axis.text = element_blank(),
axis.ticks = element_blank(),
axis.title = element_blank()
)#【带标签】
以上代码可以输出结果带有市级行政名称的带标签数据地图来。
当然,其实我们只需要修改以上所有代码的引用文件名称,可以跑出来任意一个省份的市级热力地图。
(前提是,你已经定义好每一个省份的指标数据)
事实上,我已经搜集整理了全国27个省级行政单位的热力地图代码(TXT)和数据文件(主要是指标文件需要自己定义,而且所有省份的指标文件已经在昨天分享的数据文件夹里了,地图数据文件都是引用的同一个数据源)。
如果你能够获取这些代码文件,你只需要用excel打开对应省份.CSV文件,替换,继续存为.CSV就可以直接跑我给你的代码了,直接出图。
以上就是R语言版数据地图是怎样的,小编相信有部分知识点可能是我们日常工作会见到或用到的。希望你能通过这篇文章学到更多知识。更多详情敬请关注亿速云行业资讯频道。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。