本篇文章給大家分享的是有關(guān)R語言版數(shù)據(jù)地圖是怎樣的,小編覺得挺實(shí)用的,因此分享給大家學(xué)習(xí),希望大家閱讀完這篇文章后可以有所收獲,話不多說,跟著小編一起來看看吧。
讓客戶滿意是我們工作的目標(biāo),不斷超越客戶的期望值來自于我們對(duì)這個(gè)行業(yè)的熱愛。我們立志把好的技術(shù)通過有效、簡(jiǎn)單的方式提供給客戶,將通過不懈努力成為客戶在信息化領(lǐng)域值得信任、有價(jià)值的長(zhǎng)期合作伙伴,公司提供的服務(wù)項(xiàng)目有:域名注冊(cè)、網(wǎng)絡(luò)空間、營銷軟件、網(wǎng)站建設(shè)、巫溪網(wǎng)站維護(hù)、網(wǎng)站推廣。
今天要跟大家分享的是R語言版數(shù)據(jù)地圖,分?。ㄊ屑?jí))熱力地圖。
步驟與昨天分享的中國熱力地圖步驟基本一致,只是需要調(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)搜集整理了全國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)注創(chuàng)新互聯(lián)行業(yè)資訊頻道。