【发布时间】:2019-11-20 21:41:42
【问题描述】:
如果这是一个基本问题,请原谅我,这是我第一次在这里写,所以提前致谢。
我从 Google Analytics 导出了一份包含经度、纬度和会话列的报告,我想将这些数据点添加到我在 R 中为斯洛伐克行政区域创建的多边形地图中。
这就是我现在所拥有的。
##Load the Raster Library
library(raster)
##Get the Province Shapefile for Slovakia
slovakia_level_1 <- getData('GADM', country='SVK', level=1)
slovakia_level_2 <- getData('GADM', country='SVK', level=2)
##Plot this shapefile
plot(slovakia_level_1)
library(ggmap) ##load the ggmap package so we can access the crime data
## read our dataset with sessions from google analytics ( more on how to read excel files http://www.sthda.com/english/wiki/reading-data-from-excel-files-xls-xlsx-into-r)
library(readxl) ## this is the dataframe from google analytics and i would like to plot these data to the slovakia administrtaive region map
lugera <- read_excel("Analytics 01. [Lugera.sk] - [Reporting View] - [Filtered Data] New Custom Report 20190101-20190627.xlsx")
但我真的不知道如何继续前进。我是根据这篇文章http://data-analytics.net/wp-content/uploads/2014/09/geo2.html 进行的,但是当我需要绘制点时我卡住了。
这是来自谷歌分析的报告的示例:
Longitude Latitude Sessions
17.1077 48.1486 25963
0.0000 0.0000 13366
21.2611 48.7164 4732
18.7408 49.2194 3154
21.2393 49.0018 2597
18.0335 48.8849 2462
19.1462 48.7363 2121
17.5833 48.3709 1918
18.0764 48.3061 1278
14.4378 50.0755 1099
20.2954 49.0511 715
18.1571 47.9882 663
18.6245 48.7745 653
17.8272 48.5918 620
18.9190 49.0617 542
19.1371 48.5762 464
-6.2603 53.3498 369
18.1700 48.5589 369
20.5637 48.9453 325
-0.1278 51.5074 284
21.9184 48.7557 258
有人可以帮助我如何从这里取得进展,因为我正在努力弄清楚如何在多边形地图上绘制这些点。
是否也可以创建特定区域的热图?
我希望它很清楚,但如果没有,请告诉我,我会改进我的问题,这是我第一次问。
非常感谢!
更新
我试图重现 Jay 的答案,而第一张带有红点的地图效果很棒!谢谢!
但在热图的情况下,我会遇到错误,并且无法重现相同的地图,因为我遇到了几个错误。
下面是我的代码的外观,我不确定问题出在哪里,因为我试图将我的数据框命名为 ses,就像在 jay 的回答中一样。
##Load the Raster Library
library(raster) # imports library(sp)
slovakia_level_1 <- getData('GADM', country='SVK', level=1)
##Plot
plot(slovakia_level_1)
points(coordinates(slovakia_level_2), pch=20, col="red")
#ses is my google analytics dataframe where all 3 columns Longitude, Latitude and Sessions are numeric
## it is imported excel file to r and stored as a dataframe
ses
spdf <- SpatialPointsDataFrame(coords=ses[1:2], data=ses[3],
proj4string=CRS(proj4string(slovakia_level_2)))
ppl.sum <- aggregate(x=spdf["Sessions"], by=slovakia_level_2, FUN=sum)
spplot(ppl.sum, "Sessions", main="Sessions in Slovakia")
这些是我遇到的错误
spdf <- SpatialPointsDataFrame(coords=ses[1:2], data=ses[3],
+ proj4string=CRS(proj4string(slovakia_level_2)))
Error in proj4string(slovakia_level_2) :
object 'slovakia_level_2' not found
> ppl.sum <- aggregate(x=spdf["Sessions"], by=slovakia_level_2, FUN=sum)
Error in aggregate(x = spdf["Sessions"], by = slovakia_level_2, FUN = sum) :
object 'spdf' not found
> spplot(ppl.sum, "Sessions", main="Sessions in Slovakia")
Error in spplot(ppl.sum, "Sessions", main = "Sessions in Slovakia") :
object 'ppl.sum' not found
非常感谢您对我的第一个问题提供了如此大的帮助,我无法向 StackOverflow 的所有人表达我的尊重。
谢谢
【问题讨论】:
标签: r plot geospatial polygon ggmap