gvisGeoChart 无法识别标记 Lat/Long

gvisGeoChart Not Recognizing Lat/Long for Marker

我在使用 运行 一些代码使用 googleVisgvisGeoChart() 在美国地图上绘制标记时遇到问题。我可以运行下面的例子,没问题:

require(datasets)
library(googleVis)

GeoMarker <- gvisGeoChart(Andrew, "LatLong", 
                          sizevar='Speed_kt',
                          colorvar="Pressure_mb", 
                          options=list(region="US"))
plot(GeoMarker)

这是我正在使用的代码类型。我正在尝试将值列表放入数据框中,然后使用此数据在美国地图上绘制标记。

library(googleVis)
library(ggmap)

cities <- c("Norman, OK", "Madison, WI", "Tallahassee, FL")
test <- as.data.frame(cities)
test$rank <- c(2,1,3)
colnames(test) <- c("City","Rank")
geocodes <- geocode(as.character(test$City))
new <- data.frame(test[,1:2],geocodes)

TestPlot <- gvisGeoChart(new, sizevar='Rank',options=list(region="US"))
plot(TestPlot)

然后我收到以下错误:

Error in data.frame(Latitude = numeric(0), Longitude = numeric(0), Rank = c(2, : arguments imply differing number of rows: 0, 3

我已经搜索过,但找不到太多关于在 R 中使用 googleVis 的教程,尤其是除了文档之外的关于 gvisGeoChart 的教程。我已经检查了 Andrew 数据框并使用了 str() 并且在两个数据集之间找不到任何不同之处。

感谢您提供的所有帮助,如果您需要任何说明,请告诉我!

这对我有用:

new$latlong<-paste(new$lat, new$lon, sep=":")
TestPlot <- gvisGeoChart(new, "latlong", colorvar='Rank',options=list(displayMode="Markers", region="US"))
plot(TestPlot)

我认为这正是您 lat/lon 的格式化方式。