【问题标题】:Plot triangle with shaded area绘制带阴影区域的三角形
【发布时间】:2018-12-19 08:03:08
【问题描述】:

我想绘制一个(阴影)三角形,三角形的一个子区域用另一种颜色着色,如下所示

到目前为止,我只能绘制三角形:

library(ggplot2)
library(data.table)

dt.triangle <- data.table(group = c(1,1,1), polygon.x = c(1,2,1.75), polygon.y = c(1,1,2))
p <- ggplot()
p <- p + geom_polygon(
  data = dt.triangle
  ,aes(
     x=polygon.x
    ,y=polygon.y
    ,group=group
  )
)
p

我的问题主要是添加了白色阴影区域(并且还有类似形状的三角形,比我的代码更宽)。

【问题讨论】:

标签: r


【解决方案1】:

受@desc 给出的链接的启发,这是我目前的解决方案

library(ggplot2)

col_col <- c("#000000",'#000000')
col_fill <- c("#5cb85c","#f9f9f9")
d=data.frame(x=c(1,2,2, 1.5,1.5,2,2), y=c(1,1,2, 1.375,1.25,1.25,1.75), t=c('a', 'a', 'a',  'b', 'b', 'b', 'b'), r=c('x','z','y', 4,5,6,7))
p <- ggplot(data = d, aes(x = x, y = y, col = factor(t), fill = factor(t))) + geom_polygon(data = d, alpha = .75) + # geom_point() +
       scale_color_manual(values = col_col) + scale_fill_manual(values = col_fill) 
p + geom_point(data = d[1:3,]) + geom_text(data = d[1:3,], aes(x=x, y=y, label=r), hjust=0, vjust=1, size=4) +
    theme(axis.title.x = element_blank(),
          axis.text.x  = element_blank(),
          axis.ticks.x = element_blank(),
          axis.title.y = element_blank(),
          axis.text.y  = element_blank(),
          axis.ticks.y = element_blank(),
          legend.position = 'none')

我仍在研究如何正确绘制非右矩形,同时将第二个多边形的点保持在边缘上。进一步的提示仍然很感激。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-07-16
    • 1970-01-01
    相关资源
    最近更新 更多