您好,登錄后才能下訂單哦!
這篇文章給大家介紹R語言數(shù)據(jù)地圖中的美國地圖是怎樣的,內(nèi)容非常詳細,感興趣的小伙伴們可以參考借鑒,希望對大家能有所幫助。
之前有過一段時間,特別熱衷于數(shù)據(jù)地圖,也分享很多篇關(guān)于地圖制作的教程(涉及到各種作圖軟件),但大多是整理拼湊,自己發(fā)揮的不多。
今天這一篇主要分享美國地圖的繪圖代碼,同樣是我們之前分享世界地圖、中國地圖時的代碼(局部地方有小改動)。
之前遲遲沒有找到好用的美國全境的地理信息數(shù)據(jù),最近終于在某網(wǎng)站上找到了。(雖然R語言的Map包中存有可以用的美國地圖,但是自己還是喜歡用自定義方式來做)。
平臺環(huán)境:
R x64 3.31/Rstudio 0.99.903/ggplot2 2.1.0
關(guān)于包的安裝及加載更新問題,昨天的教程已經(jīng)講得很清楚了。
以下是代碼步驟:
1、加載代碼運行所需的環(huán)境包
library(ggplot2)
library(plyr)
library("maptools")
2、讀取并轉(zhuǎn)化美國各州地理信息數(shù)據(jù)(該數(shù)據(jù)會共享在魔方學(xué)院的QQ群里)
American_map <-readShapePoly("C:/rstudy/USA_map/STATES.SHP") #將地理信息數(shù)據(jù)導(dǎo)入R環(huán)境
x <- American_map@data #讀取行政信息
xs <- data.frame(x,id=seq(0:50)-1) #共51個形狀
American_map1 <- fortify(American_map) #轉(zhuǎn)化為數(shù)據(jù)框
American_map_data <- join(American_map1, xs, type = "full") #合并兩個數(shù)據(jù)框
3、讀取業(yè)務(wù)指標數(shù)據(jù)(該文件也會打包分享)
該數(shù)據(jù)文件是.CSV格式的,可以用excel直接打開替換指標數(shù)據(jù)即可,然后另存為.CSV格式。
mydata <- read.csv("C:/rstudy/USA_map/USA_data.csv")#讀取業(yè)務(wù)指標數(shù)據(jù),csv格式
4、將地理數(shù)據(jù)與業(yè)務(wù)指標數(shù)據(jù)合并為作圖數(shù)據(jù)(數(shù)據(jù)框)
American_data <- join(American_map_data, mydata, type="full") #合并兩個數(shù)據(jù)框
5、地圖映射代碼(ggplot2包所支持的ggplot函數(shù),感興趣可以自行探索,若不感興趣,直接忽略跑代碼即可)。
ggplot(American_data, aes(x = long, y = lat, group = group,fill = Sale)) +
geom_polygon(colour="grey40") +
scale_fill_gradient(low="white",high="steelblue") + #指定漸變填充色,可使用RGB
coord_map("polyconic") + #指定投影方式為polyconic,獲得常見視角美國地圖,如要獲得平面視角地圖,此句可省略
theme( #清除不需要的元素
panel.grid = element_blank(),
panel.background = element_blank(),
axis.text = element_blank(),
axis.ticks = element_blank(),
axis.title = element_blank(),
legend.position = c(0.1,0.3)
)
帶空間投影方式的美國地圖全境:
以下是刪除coord_map("polyconic")字句后的地圖映射效果:
其中填充的顏色漸變可以通過scale_fill_gradient(low="white",high="steelblue")參數(shù)修改;
各州區(qū)域輪郭線可以通過geom_polygon(colour="grey40")參數(shù)修改;
填充數(shù)據(jù)指標可以通過fill = Sale參數(shù)修改;
由于美國州較多,州名不便全部標出,所以以上不含各州標簽。
關(guān)于R語言數(shù)據(jù)地圖中的美國地圖是怎樣的就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,可以學(xué)到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。