2011-11-29 29 views
7

是否可以注释lattice(或ggplot2)数字与polygon()(或使用类似函数创建的元素)与graphics库创建的元素?可以使用多边形()或格和ggplot2图中的等价物吗?

我对这两个图书馆都不太熟悉,除了在网上发布并印在Deepayan Sarkar的书中的简单图表的例子。因此,尽管我已经使用graphics函数库编写了我在R中所做的工作,但请指出我对latticeggplot2的相关等效函数和用法示例有所了解。谢谢。

+1

'?panel.polygon'和'geom_polygon'分别?的ggplot2版本的第一示例的(诚然有在没有例子格子文档,但这个想法与基本图形多边形相同) – baptiste

+0

伟大的问题。我注意到多年来格子方法并不为人所知。标签上的工作也很强大。 –

+0

http://stackoverflow.com/q/3610291/269476可能感兴趣 – James

回答

8

有一系列方法可以将图形对象添加到格子图中。在latticeExtra包中有layer和“+”方法。在pkg:晶格本身中,可以使用trellis.focus(...)添加到现有的图中,然后再加上面板调用,例如panel.polygon()。我在过去使用这些标注来注释contourplot()。

如果你的帮助(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() 

...你应该看到顶点℃的矩形(5,60),C(15,60) ,c(15,90),c(5,90)已被放置在图的第1面板中。注意这个编号在左下方作为(1,1)。我通常没有使用面向对象来从do.call()返回一个vlaue,但我怀疑它会成功。

enter image description here

11

这里是?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) 

enter image description here

相关问题