是否可以使用lattice
库中使用ggplot2
创建的元素(或使用类似函数创建的元素)注释polygon()
(或graphics
)个数字?
除了在网上发布并在Deepayan Sarkar的书中印刷的简单图表的示例之外,我对这两个图书馆都不太熟悉。因此,虽然我已经使用graphics
库为我在R中执行的操作编写了代码,但我特别感谢lattice
或ggplot2
的相关函数和用法示例。 。感谢。
答案 0 :(得分: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)
答案 1 :(得分: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()
...你应该看到一个带有顶点c(5,60),c(15,60),c(15,90),c(5,90)的矩形已被放置在图的面板#1中。请注意,编号在左下角为(1,1)。我一般没有使用面向对象从do.call()返回一个vlaue,但我怀疑它会成功。