You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

绘制SF数据时轴标签显示十进制度而非NZTM坐标的问题

问题解决:ggplot2绘制NZTM坐标时轴标签显示十进制度的修复

问题原因

你的gpx_valley已经成功转换为NZTM2000(CRS:2193)坐标,但绘图时重复通过coord_sf(crs=st_crs(2193))指定坐标系,干扰了ggplot对sf数据原生CRS的识别,导致轴标签错误显示为地理坐标的十进制度。同时,默认轴刻度格式也不适合NZTM的大数值坐标。

解决方案

  1. 移除coord_sf中的crs指定(数据已是目标CRS,ggplot会自动适配);
  2. 使用scale_x_sf和scale_y_sf手动设置轴标签格式,让大数值坐标以易读的整数形式显示。

修改后的绘图代码

ggplot() +
  geom_sf(data = gpx_valley, color = "blue", size = 3) +
  # 设置轴标签为逗号分隔的整数格式,适配NZTM坐标
  scale_x_sf(labels = scales::comma) +
  scale_y_sf(labels = scales::comma) +
  labs(title= "Rapaki Valley 100 Points", x="Easting (NZTM)", y="Northing (NZTM)")+
  theme_minimal()

额外验证

如果仍有疑问,可再次确认数据的坐标值:

# 提取NZTM坐标并查看前5行
head(st_coordinates(gpx_valley))

正常情况下,输出的X(Easting)应在100000-700000之间,Y(Northing)在4000000-6000000之间,这符合NZTM2000的坐标范围。

内容的提问来源于stack exchange,提问作者Dane Verharen

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.13 18:47:03