微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

使用多层多边形构建的 ggplot 地图的手动图例

如何解决使用多层多边形构建的 ggplot 地图的手动图例

我制作了以下地图,我对此很满意。但是,我无法为它成功制作一个传奇。在这种情况下,有什么办法可以制作手动图例吗?

我一直在尝试使用 scale_fill_manual,但这不起作用。我假设这是因为我已经从多个单独的多边形构建了图,因此没有一个数据集可以参考图例颜色。

如果有一种方法可以从单独的多边形制作图例,我很乐意听取您的建议! This question 看起来很相似,但解决方案涉及从世界地图创建一个国家子集的数据集,我一直无法思考如何为尚未成为一个内聚力的一部分的 m 个多边形执行此操作一组数据。

gabon <- ggplot() +
    geom_polygon(data = gabon0.fortified,aes(x = long,y = lat,group = group),#gabon background
                 fill="#E7D4E8",color=NA) +
    geom_polygon(data = permits.fortified,#logging permits
                 fill="#CCEEFF",color="#006191",size = 0.15,show.legend=TRUE) +
    geom_polygon(data = parks.fortified,#parks
                 fill="#CCDDAA",color="#4e6127",show.legend=TRUE) +
    geom_polygon(data = tc.subset.f,#seef
                 fill="#fef7ab",color="#5a5301",size = 0.3,show.legend=TRUE) +
    geom_polygon(data = one.fortified,show.legend=TRUE) +
    geom_polygon(data = before.fortified,show.legend=TRUE) +
    geom_polygon(data = gabon0.fortified,#gabon outline
                 fill=NA,color="black") +
    scale_fill_manual("Land area types",values = c("SEEF" = "#fef7ab","Logging permits" = "#CCEEFF","Protected areas" = "#CCDDAA","Gabon" = "#E7D4E8"),breaks = c("SEEF","Logging permits","Protected areas","Gabon")) +
    labs(title = "Gabon logging permit and protected areas",x = "latitude",y = "longitude",color = "Land areas") +
    theme_minimal() + theme

enter image description here

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。