删除ggplot中的内部填充

Remove inner padding in ggplot

在下面的代码中,我如何minimize/remove内部填充以使绿色多边形跨越整个灰色边界框?

suppressMessages(library(GISTools))
suppressMessages(library(ggplot2))
data(newhaven)

blocks_df <- fortify(blocks)
ggplot(data = blocks_df) +
  geom_polygon(aes(x=long, y=lat, group = group), fill = "darkolivegreen4") +
  coord_equal() +
  theme(axis.title = element_blank(),
        axis.text = element_blank(),
        axis.ticks = element_blank())

谢谢

coord_equal() 层可以采用 expand 参数——将其设置为 FALSE 并且绘图 window 将适合绘图数据的大小:

... 
ggplot(data = blocks_df) +
  geom_polygon(aes(x=long, y=lat, group = group), fill = "darkolivegreen4") +
  # set `expand=FALSE` 
  coord_equal(expand=FALSE) +
  theme(axis.title = element_blank(),
        axis.text = element_blank(),
        axis.ticks = element_blank()))

快速跟进:请注意大多数其他坐标层(例如scale_x_continuous())上的expand参数需要是长度为2的向量(对于"multiplicative and additive expansion constants") .所以你会说例如scale_x_continuous(expand=c(0,0)) 在这种情况下。 :p