您好,登錄后才能下訂單哦!
本篇文章給大家分享的是有關(guān)R語言版數(shù)據(jù)地圖是怎樣的,小編覺得挺實(shí)用的,因此分享給大家學(xué)習(xí),希望大家閱讀完這篇文章后可以有所收獲,話不多說,跟著小編一起來看看吧。
今天要跟大家分享的是R語言版數(shù)據(jù)地圖,分?。ㄊ屑?jí))熱力地圖。
步驟與昨天分享的中國(guó)熱力地圖步驟基本一致,只是需要調(diào)用的數(shù)據(jù)文件和需要自定義的指標(biāo)文件略有本不同。
R語言系統(tǒng)環(huán)境配置:
R version 3.2.3
RStudio Version 0.99.484
在正式開始之前,必須確保你的R語言環(huán)境中已經(jīng)安裝以下包:
ggplot2
plyr
maptools
如果還未安裝,需要先安裝:install.packages("ggplot2","plyr","maptools")
下面是正式作圖步驟:
1、加載所需要的R包:
library(ggplot2)
library(plyr)
library(maptools)
2、讀入作圖數(shù)據(jù):
CHN_adm2 <- readShapePoly("c:/rstudy/CHN_adm/CHN_adm2.shp") 讀入數(shù)據(jù)文件
3、整合與轉(zhuǎn)化數(shù)據(jù)
CHN_adm2_1 <- fortify(CHN_adm2) #轉(zhuǎn)化為數(shù)據(jù)框
x <- CHN_adm2@data #讀取行政信息
xs <- data.frame(x,id=seq(0:344)-1) #總共345行
china_map_data <- join(CHN_adm2_1, xs, type = "full") #合并形狀數(shù)據(jù)與行政
4、抽取安徽省的整合數(shù)據(jù)
anhui <-subset(china_map_data,NAME_1=="Anhui") #取出安徽省的子集
5、讀入指標(biāo)數(shù)據(jù)
mydata=read.csv("c:/rstudy/anhui.csv") #打開自定義的指標(biāo)文件。
以上指標(biāo)數(shù)據(jù)需要你自己定義,使用excel文件創(chuàng)建,指標(biāo)數(shù)據(jù)輸入完成之后,另存為.CSV格式(存至c:/rstudy/下,這樣便于引用,當(dāng)然這些指標(biāo)數(shù)據(jù)文件在昨天分享的數(shù)據(jù)文檔里已經(jīng)為你創(chuàng)建好了,你只需要修改數(shù)據(jù)就可以了)
anhui_data <- join(anhui, mydata, type="full") #合并地圖數(shù)據(jù)與業(yè)務(wù)數(shù)據(jù)
6、運(yùn)行代碼:
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()
) #【無標(biāo)簽】
以上代碼與前一篇所講到的代碼幾乎一樣,只是具體數(shù)據(jù)不一樣。
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()
)#【帶標(biāo)簽】
以上代碼可以輸出結(jié)果帶有市級(jí)行政名稱的帶標(biāo)簽數(shù)據(jù)地圖來。
當(dāng)然,其實(shí)我們只需要修改以上所有代碼的引用文件名稱,可以跑出來任意一個(gè)省份的市級(jí)熱力地圖。
(前提是,你已經(jīng)定義好每一個(gè)省份的指標(biāo)數(shù)據(jù))
事實(shí)上,我已經(jīng)搜集整理了全國(guó)27個(gè)省級(jí)行政單位的熱力地圖代碼(TXT)和數(shù)據(jù)文件(主要是指標(biāo)文件需要自己定義,而且所有省份的指標(biāo)文件已經(jīng)在昨天分享的數(shù)據(jù)文件夾里了,地圖數(shù)據(jù)文件都是引用的同一個(gè)數(shù)據(jù)源)。
如果你能夠獲取這些代碼文件,你只需要用excel打開對(duì)應(yīng)省份.CSV文件,替換,繼續(xù)存為.CSV就可以直接跑我給你的代碼了,直接出圖。
以上就是R語言版數(shù)據(jù)地圖是怎樣的,小編相信有部分知識(shí)點(diǎn)可能是我們?nèi)粘9ぷ鲿?huì)見到或用到的。希望你能通過這篇文章學(xué)到更多知識(shí)。更多詳情敬請(qǐng)關(guān)注億速云行業(yè)資訊頻道。
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。