gpt4 book ai didi

r - 要在 map 上绘制的条形图

转载 作者:行者123 更新时间:2023-12-02 01:04:23 25 4
gpt4 key购买 nike

我想在 map 上绘制条形图,如本页所示:http://docs.oracle.com/cd/E16162_01/web.1112/e16181/dv_map.htm#BEHHAFEJ

example

我使用了以下数据和代码,但它不起作用。

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”指定的值无效 enter image description here

最佳答案

您可以尝试使用子图:

# ...
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))

enter image description here

关于r - 要在 map 上绘制的条形图,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24231569/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com