可以在lattice和ggplot2图中使用polygon()或等效的吗?

Ale*_*lds 7 plot r polygon ggplot2 lattice

是否可以使用库中创建的元素(或使用类似函数创建的元素)来注释lattice(或ggplot2)图形?polygon()graphics

除了在网上发布并在Deepayan Sarkar的书中印刷的简单图表的示例之外,我对这两个图书馆都不太熟悉.因此,虽然我有代码用于我在R中使用graphics库进行的操作,但我lattice还是ggplot2会特别感谢相关的,等效的函数和用法示例.谢谢.

koh*_*ske 11

这是ggplot2第一个例子的版本?polygon()

x <- c(1:9,8:1)
y <- c(1,2*(5:3),2,-1,17,9,8,2:9)

ggplot(NULL, aes(1:10, 1:10)) + geom_point() +
  geom_polygon(aes(x, y), fill = "orange", colour = "skyblue", alpha = 0.5)
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述


42-*_*42- 8

有一系列方法允许将图形对象添加到晶格图中.在latticeExtra包中有layer"+"方法.在pkg:lattice本身,可以添加到现有的图,trellis.focus(...)然后是面板调用,例如panel.polygon().我过去用这些来注释contourplot()s.

如果您在帮助(contourplot)上执行示例,然后按照以下方式执行:

trellis.focus("panel", 1, 1)
do.call("panel.polygon", list(x =c(5,15,15,5,5), y=c(60,60,90,90,60) ) )
trellis.unfocus()
Run Code Online (Sandbox Code Playgroud)

...你应该看到一个带有顶点c(5,60),c(15,60),c(15,90),c(5,90)的矩形已放置在图的面板#1中.请注意,编号在左下角为(1,1).我一般没有使用面向对象从do.call()返回一个vlaue,但我怀疑它会成功.

在此输入图像描述