First, thank you very much for that lattice-package, second, the code
below segfaults R:
zz <- data.frame(
y=rnorm(100),x=rnorm(100),z=round(rnorm(100)),
g=as.character(rep(1:2,50)))
xyplot(y~ x|z,data=zz,groups=g,
panel = function(x, y, subscripts, groups)
grid.text(x=x, y=y, label=groups[subscripts])
)
I'm not sure if I have understood that panel stuff right, but anyway,
it shouldn't segfault. BTW: I also unsure if I have to use the
develop-version of R & whether lattice bugs should be submitted
(because of the devel-status??).
Peter
--please do not edit the information below--
Version:
platform = i686-pc-linux-gnu
arch = i686
os = linux-gnu
system = i686, linux-gnu
status =
major = 1
minor = 2.3
year = 2001
month = 04
day = 26
language = R
Search Path:
.GlobalEnv, package:grid, package:lattice, package:ctest, Autoloads, package:base
-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-
r-devel mailing list -- Read http://www.ci.tuwien.ac.at/~hornik/R/R-FAQ.html
Send "info", "help", or "[un]subscribe"
(in the "body", not the subject !) To: r-devel-request@stat.math.ethz.ch
_._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._
xyplot,grid.text segfault (PR#948)
4 messages · Peter Malewski, Peter Dalgaard, Paul Murrell
p.malewski@tu-bs.de writes:
First, thank you very much for that lattice-package, second, the code
below segfaults R:
zz <- data.frame(
y=rnorm(100),x=rnorm(100),z=round(rnorm(100)),
g=as.character(rep(1:2,50)))
xyplot(y~ x|z,data=zz,groups=g,
panel = function(x, y, subscripts, groups)
grid.text(x=x, y=y, label=groups[subscripts])
)
I'm not sure if I have understood that panel stuff right, but anyway,
it shouldn't segfault. BTW: I also unsure if I have to use the
develop-version of R & whether lattice bugs should be submitted
(because of the devel-status??).
Well, it is easier for us to deal with erroneously submitted bug than erroneously unsubmitted ones. We have an Add-Ons category on r-bugs to put it in. Lattice is closely associated with the core team, so we'd be able to track this kind of problem. With some other packages which we do not maintain, we have some trouble figuring out whether a report has been solved or whether it was even a bug in the first place (it would be nice if the original submitters would lend a hand there). As I remember it, Paul and Deepayan were somewhat vague about exactly what was required, except that you'd need something relatively recent. A segfault certainly looks like a real bug.
O__ ---- Peter Dalgaard Blegdamsvej 3 c/ /'_ --- Dept. of Biostatistics 2200 Cph. N (*) \(*) -- University of Copenhagen Denmark Ph: (+45) 35327918 ~~~~~~~~~~ - (p.dalgaard@biostat.ku.dk) FAX: (+45) 35327907 -.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.- r-devel mailing list -- Read http://www.ci.tuwien.ac.at/~hornik/R/R-FAQ.html Send "info", "help", or "[un]subscribe" (in the "body", not the subject !) To: r-devel-request@stat.math.ethz.ch _._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._
p.malewski@tu-bs.de writes:
First, thank you very much for that lattice-package, second, the code
below segfaults R:
zz <- data.frame(
y=rnorm(100),x=rnorm(100),z=round(rnorm(100)),
g=as.character(rep(1:2,50)))
xyplot(y~ x|z,data=zz,groups=g,
panel = function(x, y, subscripts, groups)
grid.text(x=x, y=y, label=groups[subscripts])
)
I'm not sure if I have understood that panel stuff right, but anyway,
it shouldn't segfault. BTW: I also unsure if I have to use the
develop-version of R & whether lattice bugs should be submitted
(because of the devel-status??).
Peter
grid.text() seems unhappy with being passed a non-character vector for
the label argument. I think Paul muttered something to the effect that
he knew there would be that kind of weaknesses in the code.
The following runs successfully (well, at least it doesn't crash - the
result looks a bit weird):
library(lattice)
zz <- data.frame(
y=rnorm(100),x=rnorm(100),z=round(rnorm(100)),
g=as.character(rep(1:2,50)))
xyplot(y~ x|z,data=zz,groups=g,
panel = function(x, y, subscripts, groups)
grid.text(x=x, y=y,
label=as.character(groups[subscripts]))
)
O__ ---- Peter Dalgaard Blegdamsvej 3 c/ /'_ --- Dept. of Biostatistics 2200 Cph. N (*) \(*) -- University of Copenhagen Denmark Ph: (+45) 35327918 ~~~~~~~~~~ - (p.dalgaard@biostat.ku.dk) FAX: (+45) 35327907 -.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.- r-devel mailing list -- Read http://www.ci.tuwien.ac.at/~hornik/R/R-FAQ.html Send "info", "help", or "[un]subscribe" (in the "body", not the subject !) To: r-devel-request@stat.math.ethz.ch _._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._
2 days later
Hi
grid.text() seems unhappy with being passed a non-character vector for
the label argument. I think Paul muttered something to the effect that
he knew there would be that kind of weaknesses in the code.
The following runs successfully (well, at least it doesn't crash - the
result looks a bit weird):
library(lattice)
zz <- data.frame(
y=rnorm(100),x=rnorm(100),z=round(rnorm(100)),
g=as.character(rep(1:2,50)))
xyplot(y~ x|z,data=zz,groups=g,
panel = function(x, y, subscripts, groups)
grid.text(x=x, y=y,
label=as.character(groups[subscripts]))
)
The results look weird because the x and y locations in grid.text are in
"npc" units by default (that is, they are taken as proportions of the
dimensions of the region they are being drawn in). This means that values
outside the range 0..1 are drawn outside the limits of the plotting region.
You need to specify "native" units in the call so that the x and y locations
are relative to the scales on the axes of the plotting region. For example,
grid.text(x=x, y=y,
label=as.character(groups[subscripts]),
default.units="native")
This unit stuff is a "feature" of the underlying grid graphics, which is
probably why you did not notice it. The default panel functions do,
however, provide examples of what needs to be done. See, for example,
panel.xyplot.
Paul
-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-
r-devel mailing list -- Read http://www.ci.tuwien.ac.at/~hornik/R/R-FAQ.html
Send "info", "help", or "[un]subscribe"
(in the "body", not the subject !) To: r-devel-request@stat.math.ethz.ch
_._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._