簡體   English   中英

在地圖上繪制的條

[英]Bars to be plotted over map

我要按此頁面上的地圖繪制條形圖: http ://docs.oracle.com/cd/E16162_01/web.1112/e16181/dv_map.htm#BEHHAFEJ

例

我使用了以下數據和代碼,但無法正常工作。

ddf = read.table(header=T, sep=",", text="
country, val1, val2, val3
Nigeria,5,10,8
China,8,12,20
Brazil,15,9,20
Italy,9,25,5
Australia,15,5,25
")

require (rworldmap)

sPDF <- joinCountryData2Map(ddf
    , joinCode = "NAME"
    , nameJoinColumn = "country"
    , verbose = TRUE)

mapBars( sPDF, 
       , nameZs=c(ddf$val1, ddf$val2, ddf$val3)
       , symbolSize=4 )

我該如何糾正? 請幫忙。


編輯:我嘗試在下面的答案中使用代碼,但出現錯誤的空窗口圖:par(plt = c(xyx,xyy),new = TRUE)中的錯誤:為圖形參數“ plt”指定的值無效 在此處輸入圖片說明

您可以嘗試使用子圖:

# ...
plot(getMap())
df <- merge(x=ddf, y=sPDF@data[sPDF@data$ADMIN, c("ADMIN", "LON", "LAT")], by.x="country", by.y="ADMIN", all.x=TRUE)
require(TeachingDemos)
for (i in 1:nrow(df)) 
  subplot(barplot(height=as.numeric(as.character(unlist(df[i, 2:4], use.names=F))), 
                  axes=F, 
                  col=rainbow(3), ylim=range(df[,2:4])),
          x=df[i, 'LON'], y=df[i, 'LAT'], size=c(.3, .3))
legend("topright", legend=names(df[, 2:4]), fill=rainbow(3))

在此處輸入圖片說明

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM