溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

R語言版數(shù)據(jù)地圖是怎樣的

發(fā)布時(shí)間:2021-11-22 10:39:22 來源:億速云 閱讀:142 作者:柒染 欄目:大數(shù)據(jù)

本篇文章給大家分享的是有關(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)文件。

R語言版數(shù)據(jù)地圖是怎樣的

以上指標(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ù)

R語言版數(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ù)不一樣。

R語言版數(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è)資訊頻道。

向AI問一下細(xì)節(jié)

免責(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)容。

AI