I would like to fit a whole lattice plot in a small region of an existing plot.
xyplot(decrease ~ treatment, OrchardSprays, groups = rowpos, type = "a")
pushViewport(viewport(.2, .7, .2, .2))
grid.rect(gp=gpar(fill="white"))
gives me this:
So viewport is pushed. But when if a lattice function is called again, it uses the whole device, as if calling grid.newpage()
:
xyplot(decrease ~ treatment, OrchardSprays, groups = rowpos, type = "a")
Is there a way to limit lattice plots to a predefined region on a device like in my example above?
You have to directly call print
with newpage
argument set to FALSE
(opposite to default value):
xyplot(decrease ~ treatment, OrchardSprays, groups = rowpos, type = "a")
pushViewport(viewport(.2, .7, .2, .2))
print(xyplot(decrease ~ treatment, OrchardSprays, groups = rowpos, type = "a"), newpage=FALSE)
You could find it in grid manual (r_instalation_path/library/grid/doc/grid.pdf), section "Adding lattice to grid".
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With