2014-05-03 29 views
1

我創建使用mapproj包河包括邊框和狀態的縮寫使用地圖功能與mapproj庫

我知道這可能包括國家邊界和縮寫美國大陸的地圖時,但在解釋如何解決的文檔中我找不到任何信息。

我的代碼如下,併產生下面的第一張地圖:

map(database= "usa", col="grey80", fill=TRUE) 
points(DF$lat, DF$lon, pch=20, cex=2, col="springgreen4") 

和我的形象是:

enter image description here

我已經看到,在他們的狀態和邊框類似的地圖 - 例如,這裏是我想在我的地圖上建模(請忽略顏色):

enter image description here

任何關於如何獲得這兩個元素包括在我的地圖的幫助將不勝感激。謝謝。

(PS:我的意思不是聽起來貪婪的......但如果有的話也恰好有任何想法我如何刪除我的周圍的地圖邊界,那將是絕對精彩)

回答

4

這將給你狀態綠色,透明的灰色覆蓋概括:(由「α」值的灰色讓邊界「通過展示」 ......看到?rgb?col2rgb

map(database= "state", col="green", fill=FALSE) 
map(database= "usa", col="#AAAAAA22", fill=TRUE,lty=0,add=TRUE) 

此添加標籤但非常混亂並帶有額外的區域:

map.text(database="state", add=TRUE) # Not advised 

我認爲還需要在數據集包中使用state數據集來處理縮寫到狀態中心的更多工作。

?state 

這似乎有效,雖然你可能想使文本與CEX小一點= 0.6:

text(x=state.center$x, y=state.center$y, state.abb) # better 

enter image description here

依照一些另外的調整可以通過去除一些邊界用白色覆蓋:

map(database= "state", col="green", fill=FALSE) 
map(database= "usa", col="#FFFFFF", fill=FALSE,add=TRUE, lwd=1.5) # the overwrite of boundary 
map(database= "usa", col="#AAAAAA22", fill=TRUE,lty=0,add=TRUE) # note the transparency 
text(x=state.center$x, y=state.center$y, state.abb, cex=0.5) 

enter image description here

+0

感謝您的偉大答案,這(幾乎)完美的作品!我正在拍攝與第二張情節相同的配色方案:不是各州周圍的綠色邊框。我試過這個: map(database =「state」,col =「#000000」,fill = FALSE) map(database =「usa」,col =「grey80」,fill = TRUE,lty = 0,add = TRUE)'但我似乎無法匹配顏色。你知道美國地圖爲什麼掩蓋我國境內的州邊界嗎? –

+1

因爲我使用了透明顏色,所以沒有。我的填充顏色規範中的最後兩個十六進制數字(八)是22,所以它是相當透明的,並允許綠色邊框顯示。如果你想要灰色邊框,只需將「綠色」改爲「灰色」即可。 –

+0

BondedDust,我對你的技能印象深刻......無法表達我的感激之情!感謝您爲我節省了無數個小時,並幫助我通過這個軟件包提高了我的能力。 –