当前位置: 首页 > 知识库问答 >
问题:

使用R在google map上应用坐标点

桂嘉年
2023-03-14

首先感谢大家抽出时间....我想让你知道我刚开始使用R我正在尝试用R来绘制我的坐标。我已经尝试过了不同的post an函数,其中一个我会添加它的,我有一个文件的坐标点覆盖了世界,我想在谷歌卫星地图中绘制它们?另外,我有API键,但我不知道如何在代码中添加它?

require(ggplot2)
require(ggmap)
require(maps)
require(mapproj)
require(mapdata)
require(rgeos)
require(maptools)
require(sp)
require(raster)
require(rgdal)
require(dismo)
require(tmp)
####
swf1 <- read.csv("D:/jamal project/swf1.csv",header=TRUE)
head(swf1)
 Lon      Lat
1 46.60638 24.88843
2 39.57275 21.39170
3 39.63389 24.43904
4 46.73168 24.64144
5 46.77773 24.73872
6 43.98056 26.33847
#i try using ggmap’s make_bbox function
swfp <- make_bbox(lon = swf$lon, lat = swf$lat, f = .1)
swfp
        ###i got this messg
        Warning messages:
       1: In min(x, na.rm = na.rm) :
        no non-missing arguments to min; returning Inf
       2: In max(x, na.rm = na.rm) :
        no non-missing arguments to max; returning -Inf
       3: In min(x, na.rm = na.rm) :
        no non-missing arguments to min; returning Inf
       4: In max(x, na.rm = na.rm) :
        no non-missing arguments to max; returning -Inf
       > swfp
      left bottom  right    top 
      -Inf   -Inf    Inf    Inf 

有谁能帮我继续做这件事吗?

我尝试过的另一种选择是:

# loading the required packages
library(ggplot2)
library(ggmap)

# creating a sample data.frame with your lat/lon points
lon <- c(-38.31,-35.5)
lat <- c(40.96, 37.5)
df <- as.data.frame(cbind(lon,lat))

# getting the map
mapgilbert <- get_map(location = c(lon = mean(df$lon), lat = mean(df$lat)), 
zoom = 4,
                  maptype = "satellite", scale = 2)

# plotting the map with some points on it
ggmap(mapgilbert) +
geom_point(data = df, aes(x = lon, y = lat, fill = "red", alpha = 0.8), size = 
5, shape = 21) +
guides(fill=FALSE, alpha=FALSE, size=FALSE)

当我运行它时,我在download.file(url,destfile=tmp,quiet=!messaging,mode=“wb”)中发现错误:无法打开url“HTTP://maps.googleapis.com/maps/api/staticmap?center=39.23,-36.905&zoom=4&size=640x640&scale=2&maptype=satellite&language=en-en&sensor=false”。此外,警告消息:在download.file(url,destfile=tmp,quiet=!messaging,mode=“wb”)中:无法打开url“

请帮助坐标文件在这里试一下...谢谢

共有1个答案

袁和通
2023-03-14

下面是一个使用库(googleway)的解决方案

library(googleway)

set_key( "API_KEY" )

swf1 <- read.table(text='
Lon      Lat
1 46.60638 24.88843
2 39.57275 21.39170
3 39.63389 24.43904
4 46.73168 24.64144
5 46.77773 24.73872
6 43.98056 26.33847')

## you've asked for colours and sizes, so I'm making some random values which you can use in the plot
swf1$region <- sample(c("a","b"), size = nrow(swf1), replace = T)
swf1$size <- sample(50000:100000, size = nrow(swf1))

google_map() %>%
  add_circles(
    data = swf1, lon = "Lon", lat = "Lat", fill_colour = "region", radius = "size"
  )

要想看到卫星,请按地图上的“卫星”按钮

 类似资料:
  • 使用API 5.0+为创建图标时,google maps的有问题 用于创建的方法:

  • 问题内容: //我正在尝试学习如何在Java中绘制对象。我在此方面做得越来越好,但是一旦在屏幕上获得图像,就很难操作它。我输入的数字对形状的结果没有意义。至少对我来说他们没有。在代数中,如果在x轴上增加一个数字,它将向右移动;如果在y轴上增加一个数字,它将向右移动。那不是这里发生的事情。谁能向我解释这是如何工作的?我还是java的新手,所以解释越多,细节越好。我试图在整个暑假中每天花几个小时学习J

  • 我的渲染方法目前看起来像这样: 我最近刚刚尝试使用VBO,在我直接发送顶点数据之前,一切工作正常,纹理映射正确。现在我用VBO改变了顶点数组,即使它有效,也没有应用纹理,我只能看到黑色的物体。 我的纹理可能有什么问题 为什么当我更改GLVertexAttribute指针(顶点,3,GL_FLOAT,GL_ FALSE,0,0)时;带glBindBuffer的行顺序(GL_ARRAY_BUFFER,

  • 本文向大家介绍使用js获取鼠标坐标相关面试题,主要包含被问及使用js获取鼠标坐标时的应答技巧和注意事项,需要的朋友参考一下

  • 我们体验一下Events类吧!为了使其尽量简单,我们使用Events类的getMousePos()获取鼠标光标的坐标,并在画布的左上角显示出来。getMousePos()方法返回相对于画布的坐标,它会考虑画布相对于页面的偏移,以及页面的滚动位置。 图6-1 画布坐标系 操作步骤 按照以下步骤,在每次鼠标移动时,获取画布上的鼠标坐标,并在画布的左上角显示出来: 1. 链接到Events类: <sc

  • 本文向大家介绍JavaScript 空间坐标的使用,包括了JavaScript 空间坐标的使用的使用技巧和注意事项,需要的朋友参考一下 基础知识 首先参考画布分为视口(窗口)与文档的含义 网页很多都是多屏,所以文档尺寸一般大于视口尺寸 视口尺寸不包括浏览器工具条、菜单、标签、状态栏等 当打开控制台后,视口尺寸相应变小 文档像 position 定位,视口类似 fixed 定位 文档坐标在页面滚动时