您好,登錄后才能下訂單哦!
本篇文章給大家分享的是有關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進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。