【问题标题】:How to create a map with transparent background?如何创建具有透明背景的地图?
【发布时间】:2019-05-08 08:27:26
【问题描述】:

我正在尝试使用 R 包 tmap 创建和保存具有透明背景而不是白色(或任何其他颜色)的地图。

除了以下示例中的内容外,我还尝试在 tmap_optionstm_layout 中使用 bg.color = "transparent"bg.color = NAbg.color = NULL

版本信息:

  • tmap:2.2
  • tmaptools: 2.0-1
library(tmap)
data("World")

tmap_options (bg.color = "#00000000", basemaps.alpha = 0)
map <- tm_shape(World) +
  tm_polygons("HPI") +
  tm_layout (frame = FALSE, bg.color = "#00000000")

tmap_save (map, filename = "~/test.png")

我做错了什么还是这只是包装的限制?非常感谢!

【问题讨论】:

  • 在感兴趣的层内使用alpha 参数,例如tm_polygons("HPI", alpha = .5)
  • 但是如果我理解正确的话,这会使多边形层透明,而不是背景层。我需要只有背景层是透明的。
  • 好吧,这取决于你想做什么,但是如果你只有一层,那么这种情况下的背景是什么?
  • 就是这样;没有背景。我只想要 100% 透明背景上的多边形(+ 图例、标题等)。在上面的示例中,我希望结果图像中的所有白色都消失。
  • 如果你使用bg.color = rgb(0,0,0, alpha = 0)?

标签: r tmap


【解决方案1】:

我发现了一个窍门!

我一直在寻找相同的功能来在 InDesign 中使用 R、tmap 的输出绘制一堆地图,并且我需要背景是透明的。

这里是我的解决方案,给出你的代码:

library(tmap)
data("World")

par(bg=NA)
map <- tm_shape(World) +
  tm_polygons("HPI") +
  tm_layout (frame = FALSE, bg.color = "transparent")

tmap_save (map, filename = "~/test.eps", bg="transparent") # Note the eps extension

警告:用不同的输出格式对此进行测试,我发现它不适用于 pngjpg

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2011-11-26
    • 2010-11-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-12-02
    • 2010-10-17
    • 1970-01-01
    相关资源
    最近更新 更多