[R] use of bquote
Rolf Turner
r.turner at auckland.ac.nz
Fri Nov 22 07:53:10 CET 2013
On 11/22/13 18:47, William Dunlap wrote:
>> a <- 2; b <- 3; xyplot(1:10 ~ a*(1:10), sub = c(bquote(a == .(a) ~ b==.(b))))
>>
>> the subtitle contains three copies of the "a = 2 b = 3" phrase.
>> Why does it do that? How do I tell it to give me only one copy?
> To avoid it don't wrap bquote() with c(). The following does what you asked for:
> a <- 2; b <- 3; xyplot(1:10 ~ a*(1:10), sub = bquote(a == .(a) ~ b==.(b)))
Not for me it doesn't. Without the c() wrapper, I get no subtitle at
all. Your recipe seems to
work with base graphics and plot() but not with lattice and xyplot().
Also the c() wrapper
seems to have no impact when used with plot().
Moreover I am mystified by the impact of the c() wrapper when used with
xyplot().
The result returned by bquote() has class "call". The result returned
by c(bquote(...)) is a
list, of length 1, whose sole entry is of class "call" and is, as one
might expect, equal to the
result returned by bquote().
But why should passing this length-1 list as the value for "sub" cause a
triplication of the
subtitle?
cheers,
Rolf
More information about the R-help
mailing list