围绕栅格键

时间:2016-05-12 10:00:50

标签: r ggplot2 geom-raster

我正在使用空间像素数据框在ggplot中绘制物种预测图。我的情节几乎是我想要的,唯一的问题是我的光栅比例从白色变为红色,因此很难看到它在图例see the plot中的开始位置。我想画一个框来勾勒出传说键 - 只是条形图从白色变为红色而不是其余部分。我正在搜索超过一个小时,但我找不到任何方法来做这个,只有方法给传说一个背景或在图例文本和栏周围画一个框,我不想这样做。有谁知道这是否可以在ggplot中进行,还是我需要更改颜色渐变?

谢谢!

我的密码:

ggplot() +
  geom_raster(data=habs_pop_clip1, aes(x = easting.x, y = northing.x, fill = pred)) +
  scale_fill_gradient("Probability of occurrence", low="white", high="red",limits = c(0,1)) +
  coord_fixed(ratio=1, xlim=c(545000, 654000), ylim=c(278000,347000))+
  geom_polygon(data=Norfolk1, aes(x=long, y=lat, Group=group), color="grey",fill=NA)+
  theme(text = element_text(family = "serif")) +
  geom_segment(aes(x = 550000, y = 278500, xend = 560000, yend = 278500), lineend = "round") + 
  annotate("text", x = 555000, xend = 555000, y = 282000, yend = 282000, label = "10 km", family = "serif", size = 4) +
  ggtitle(colnames(bat_occ[i+7])) + 
  theme(plot.margin=unit(c(0.5, 0.5, 0.5, 0.5), "cm")) +
  theme_bw() +
  theme(axis.line = element_line(colour = "black"),
        panel.grid.major = element_blank(),
        panel.grid.minor = element_blank(),
        panel.border = element_blank(),
        panel.background = element_blank(),
        axis.line=element_blank(),
        axis.ticks=element_blank(),
        axis.title.x=element_blank(),
        axis.title.y=element_blank(),
        axis.text =element_blank()) 

1 个答案:

答案 0 :(得分:2)

我不知道是否有内置参数。如果没有,您可以手动添加一个矩形,

df <- reshape2::melt(outer(1:4, 1:4), varnames = c("X1", "X2"))

p <- ggplot(df, aes(X1, X2)) + geom_tile(aes(fill = value))+ scale_fill_continuous(guide = "colorbar") 


g <- ggplotGrob(p)
g$grobs[[8]][[1]][[1]] <- gtable::gtable_add_grob(g$grobs[[8]][[1]][[1]],
                                                  rectGrob(gp=gpar(fill=NA, lwd=5)), 4, 2)
grid.newpage()
grid.draw(g)

enter image description here