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

如何使用ggplot的geom_point/geom_poly绘制已知边长的四边形

四边形地块ggplot绘制实现方案

第一步:推算四个顶点坐标

按照设定的坐标系规则,结合边长、对角线参数推算得到符合误差要求的可行坐标如下:

  • A点(原点):(0, 0)
  • B点(AB沿x轴):(11.55, 0)
  • D点:(-1.14, 15.72),验证:AD≈15.76m,BD≈20.20m,误差小于0.01m
  • C点:(10.92, 17.16),验证:AC≈20.34m,BC≈17.17m,CD≈12.14m,误差0.37m,符合±0.5m的测量误差要求

第二步:R语言ggplot绘图代码

# 加载依赖包
library(ggplot2)

# 构造顶点数据框
quad_data <- data.frame(
  x = c(0, 11.55, 10.92, -1.14),
  y = c(0, 0, 17.16, 15.72),
  label = c("A", "B", "C", "D")
)

# 绘图
ggplot() +
  # 绘制四边形填充
  geom_polygon(data = quad_data, aes(x = x, y = y), fill = "lightgreen", alpha = 0.5, color = "black") +
  # 绘制顶点标记
  geom_point(data = quad_data, aes(x = x, y = y), size = 3, color = "red") +
  # 标注顶点名称
  geom_text(data = quad_data, aes(x = x, y = y, label = label), vjust = -1, size = 4) +
  # 调整坐标轴比例为1:1,避免图形变形
  coord_fixed() +
  # 可选:添加主题调整
  labs(x = "x轴(单位:米)", y = "y轴(单位:米)", title = "四边形地块示意图") +
  theme_bw()

注意事项

由于测量存在±0.5m的误差,符合所有距离条件的四边形不唯一,上述坐标是其中一个可行解。如果需要镜像布局,可将C、D点的y值统一改为负数即可得到x轴下方的镜像四边形。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.24 22:06:04