【问题标题】:Overlay map while using layout in R在 R 中使用布局时覆盖地图
【发布时间】:2013-07-17 10:45:39
【问题描述】:

我定义了一个布局来绘制三个不同的图:

layout(matrix(c(1,2,3,4),2,2,byrow = TRUE), TRUE)

之后,我调用了我想要生成的三个图:

image.plot(...)
plot(...)
plot(...)

我还需要将地图(使用rworldmap 包中的getMap 生成)覆盖到image.plot(在fields 包中)与另一个调用类似:

newmap <- getMap(resolution = "high")
plot(newmap)  

但由于布局结构,R 将其解释为下一个要绘制的绘图。 有没有办法将地图覆盖在image.plot 图的相同位置,然后继续其他图?

谢谢

【问题讨论】:

  • image.plot 从何而来?你能举一个可重现的例子吗?什么是“新地图”?等
  • @g256,如果问题不清楚,我们如何为您提供帮助?
  • @Spacedman。我编辑了帖子。谢谢。在这种情况下,一个可重现的示例将非常棘手。最后,只需在同一布局区域绘制下属地图即可。
  • @Sander Van der Zeeuw 即使缺少示例,我确实认为问题很明确。
  • @g256 例如将您的plot(...) 更改为plot(1:10),因此我们可以剪切/粘贴代码,这样至少可以让更多人尝试复制您的问题。 “getMap”从何而来?我尝试了maptools,失败了,放弃了。看到我们的问题了吗?

标签: r dictionary layout overlay rworldmap


【解决方案1】:

我在 rworldmap 包中找到了一个函数getMap,你正在使用这个函数吗?

如果是这样,看起来它使用 sp 包中的方法进行绘图,这些方法有一个 add 参数,当设置为 TRUE 时,会将地图添加到当前绘图而不是开始新的绘图阴谋。所以试试类似的东西:

image.plot(...)
newmap <- getMap(resolution="high")
plot(newmap, add=TRUE)

看看这是否适合你。

今后,请说明您正在使用哪些软件包,并提供有助于人们帮助您的详细信息。

【讨论】:

  • 感谢非常有用的支持和回答。这是有效的,这正是重点。我已经知道 add=TRUE 选项。真的不知道为什么我没有使用它。
猜你喜欢
  • 2019-04-11
  • 2014-10-03
  • 1970-01-01
  • 2011-02-25
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-04-18
  • 2021-05-29
相关资源
最近更新 更多