2

我想用它bubbleGoogleMaps来创建一个气泡的地图,spatialpoints气泡的大小与其各自的值成比例。无论如何,bubbleGoogleMaps根据文档,这是有希望的。

但是,我意识到气泡大小与它们各自的值成正比,而仅与它们落入的容器成正比

默认情况下bubbleGoogleMaps,仅使用基于分位数的 5 个 bin,这很容易导致非常误导的地图,如以下示例所示:

library("plotGoogleMaps")

data(meuse)
coordinates(meuse)<-~x+y 
proj4string(meuse) <- CRS('+init=epsg:28992')

# we want to see one gigantic bubble for the first observation
# --> let's augment its value to 10000:
meuse$zinc[1] <- 10000 

# However, there is no gigantic bubble in the following bubbleGoogleMaps! 
# --> Bubbles are NOT proportional to their individual values!!!
m <- bubbleGoogleMaps(meuse,
                      zcol='zinc',
                      max.radius = 100,
                      filename='myMap.htm')

因此,我尝试通过将 bin 数量(=option 'key.entries')从 5 增加到 20 来创建解决方法:

keys <- signif(quantile(meuse$zinc,
                        probs = seq(0, 1, length.out=20),
                        na.rm=T,
                        names=F),3);keys

但是,此解决方法不起作用,我们在此处收到错误:

m <- bubbleGoogleMaps(meuse,
                      zcol='zinc',
                      max.radius = 100,
                      key.entries=keys, 
                      filename='myMap.htm')

任何想法如何创建一个bubbleGoogleMap(单独)成比例的气泡?

或者有谁知道如何使该选项的解决方法key.entries起作用?

4

1 回答 1

2

包的作者解决了plotGoogleMaps我的问题。他证实bubbleGoogleMaps确实可以使用垃圾箱。

为了将箱的数量增加到 20,我们需要设置key.entries

key.entries= quantile(meuse@data[, 'zinc'], (1:20)/20)

用于唯一值

key.entries= unique(sort(meuse$zinc))

这是我最初想要的。然而,这个传说现在变得非常混乱/庞大,甚至不再起作用......

于 2014-06-07T16:40:51.920 回答