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

使用geom_sf()和除lat long以外的任何投影打印sf对象

申屠锦
2023-03-14

我正在尝试在除lat long以外的任何投影中使用geom_sf()绘制多边形。

我正在使用geom_sf()导入数据集手册页面中的示例:

nc <- sf::st_read(system.file("shape/nc.shp", package = "sf"), quiet = TRUE)

从latlong转换到epsg: 3857

nc_3857 <- sf::st_transform(nc, "+init=epsg:3857")

最后,使用ggplot2进行绘图,定义绘图的CR:

ggplot() +
 geom_sf(data = nc_3857, colour = "red", fill = NA) +
 coord_sf(crs=st_crs(3857))

我一直在wgs84(即epsg:4326)中获得一张带有lat长轴的地图。我希望轴以米为单位,因此我需要ggplot来绘制投影多边形。我做错了什么?

共有2个答案

轩辕源
2023-03-14

它在要求的投影中绘制它,它只是覆盖了一个拉特长的分划。

例如,如果你在挪威尝试类似的事情,靠近北极,你可以看到显示的X-Y坐标是变换的坐标,但叠加的分划是lat长的。这是一张挪威地图,采用epsg 3035(锥形)坐标:

因此,它正在绘制投影多边形。如果这里的lat-long线是一个网格,那么它将在lat-long投影中绘制坐标。

文件中唯一提到的分划是一个arg tocoord\u sf

datum: CRS that provides datum to use when generating graticules

这并不能说明什么。

你只需要一个笛卡尔坐标系?哦,让我们试试:

> ggplot() +  geom_sf(data = rp, colour = "red", fill = NA) + coord_cartesian()
Error: geom_sf() must be used with coord_sf()

使用geom_sf检查ggplot2问题的备用分划,如果没有问题,则添加问题。

秦信瑞
2023-03-14

另见https://github.com/tidyverse/ggplot2/issues/2200 试一试

ggplot() +  geom_sf(data = nc_3857, colour = "red", fill = NA) +
   coord_sf(datum=st_crs(3857))

 类似资料:
  • 使用绘制时,删除网格线的标准方法似乎是徒劳的。 例如,如果我们绘制一个简单的< code>ggplot对象,这将删除网格 回报 但是当您使用绘制时,相同的代码无法删除网格

  • 因此,我想过滤对象的对象,并打印所有的对象,除了一个,我指定的关键字。 所以我必须有选择,以某种方式指定我不想打印OBJ[1]。我该怎么做?: null

  • 我是科特林·纽比。我有一组函数,它们接受和解析不同的输入(纯文本、json、xml),但具有相同的输出(和事件实例)。代码如下所示(完整版本见https://pastebin.com/UNJFGZsm): 当我尝试构建时,会出现如下错误: (44,11):外投影类型“功能1” 但是,如果我不使用函数,代码似乎可以正确构建和工作。 为什么?为什么问题似乎只影响

  • 本文向大家介绍mongoDB使用投影剔除‘额外’字段的操作过程,包括了mongoDB使用投影剔除‘额外’字段的操作过程的使用技巧和注意事项,需要的朋友参考一下 简介 实际开发过程中,为便于开发人员定位问题,常存在多个额外的字段。例如:增加createdAt、updatedAt字段以查看数据的创建和更改时间。而对于客户端而言,无需知道其存在。针对以上情况,本文详细介绍了“额外”字段的用途以及处理过程

  • 问题内容: 我在pom.xml中有一节 我想从最终的jar中排除 .SF和 .DSA文件。但是我收到以下消息: 和文件不排除。有谁知道如何克服它? 问题答案: 我有同样的问题。通过使我的工件选择器更具体来解决此问题,例如 整个块如下所示:

  • 问题内容: 我对Hibernate的 预测 和 标准 感到困惑。何时使用投影以及何时使用标准? 问题答案: 它们不是互斥的,您可以同时使用两者。投影通常在某些条件下使用。 简而言之,使用Hibernate Projections来仅查询要使用Criteria查询的一个实体或一组实体的属性的子集。您还可以使用预测指定条款和聚合函数一样,等等。这就像指 其 数据你抓取。就像修改SQL查询中的子句一样。