繁体   English   中英

使用 4 个坐标作为输入创建带有 geom_mark_rect 的阴影矩形?

[英]Create shaded rectangle with geom_mark_rect using 4 coordinates as inputs?

如何使用ggforce 矩形轻松矩形标记由四组 xy 坐标定义的区域?

最小的例子

我本来希望这能奏效(或至少产生接近的东西)

library(ggplot2)
library(dplyr)
library(ggforce)
set.seed(123)
data.frame(x = runif(20)* 1000, y = runif(20)* 1000) %>% 
  ggplot(aes(x, y)) +
  geom_point() + 
  geom_mark_rect(x = c(500, 750, 500, 750), y = c(250, 250, 500, 500))

但它会产生这个,其中放置关闭:

在此处输入图像描述

这个 position 中的一个矩形是目标(下面的矩形没有着色,但 ggforce 应该自动着色它):

在此处输入图像描述

您还没有将 x 和 y 点放在美学调用 ( aes ) 中。 实际上,由于geom_mark_rect将从对ggplot的调用继承其aes ,因此您可以将 x 和 y 坐标作为数据框提供。 这是一个可重现的示例:

library(ggplot2)
library(dplyr)
library(ggforce)

set.seed(123)
data.frame(x = runif(20) * 1000, y = runif(20) * 1000) %>% 
  ggplot(aes(x, y)) +
  geom_point() +
  geom_mark_rect(data = data.frame(x = c(500, 750, 500, 750), 
                                   y = c(250, 250, 500, 500)), fill = "red")

代表 package (v0.3.0) 于 2020 年 5 月 10 日创建

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM