如何将值标签放置在多边形中而不是在R中的边缘上

时间:2019-04-25 05:08:38

标签: r ggplot2 maps polygon

在R中,我有代表加拿大省辖区的六边形/图块,但是六边形的ID标签位于多边形的角上,而不是在多边形的角上。

我离所需图表最近的位置:

enter image description here

我一直在和geom_polygongeom_textgeom_label以及其他一些混乱,但是什么也做不了。我已经看到人们使用rgeos对美国的statebin进行此操作,但我想这对我来说不是必需的,因为R确实认识到我的hexbin具有附加的ID,只是将它们放置在我不需要的位置他们。我还尝试过更改geoms中的position参数。

tileGram_f <- ggplot2::fortify(tileGram2) 
tileGram_f <- plyr::join(tileGram_f, tileGram2@data[,c("id", "tile_region")],by="id")

names(tileGram_f)[names(tileGram_f)=="tile_region"] <- "Country"

ggplot(tileGram_f) +
  geom_polygon(aes(long, lat, group = group), 
               fill = "yellow", color = "blue", show.legend = FALSE, size = 1) + 
  coord_equal() + 
  geom_text(data = tileGram_f, 
            aes(x = long, y = lat, label = Country),
            size = 8, color = "red", check_overlap = TRUE) +
  theme(panel.background = element_blank(), 
        axis.title = element_blank(), 
        axis.text = element_blank(), 
        axis.ticks = element_blank())

已成功使geom_text()geom_label()可见六边形的ID(ID号,0-21),但它们分别位于多边形/六边形的每个角上。我只希望每个hexbin及其内部仅一次,而不是在其周围。

0 个答案:

没有答案