[R] rgl.postscript hang

Duncan Murdoch murdoch@dunc@n @end|ng |rom gm@||@com
Sun Mar 10 21:34:16 CET 2019


I suspect it isn't actually hung, it is just very, very slow.  If I 
change the line

x <- (-100:100)/5

to

x <- (-20:20)/5

then it works almost instantly.  At

x <- (-50:50)/5

it is slow (16 seconds); replacing the 50 with 60, 70 or 80 yields 29, 
46, or 120 seconds respectively. So far I haven't been patient enough to 
know what

x <- (-90:90)/5

would take.  This doesn't really make sense:  with

x <- (-n:n)/5

it will need to sort (2n + 1)^2 objects, but that should take something 
proportional to n^2 log(n) time, and the time seems to be growing faster 
than that.

Duncan Murdoch

On 10/03/2019 2:57 p.m., J C Nash wrote:
> I've found some other reports that resemble this, but none seem to have a clear
> indication of the source of the hangup. This post raises a non-critical issue, but
> it would be nice to understand the problem and possibly fix it, or else have an
> error message generated. As Duncan has posted in one of the items, rgl.snapshot is
> recommended, and it worked for me, but I originally wanted a pdf so tried rgl.postscript
> before I saw his comment that the latter may give problems. Indeed, users may not
> realize that the message in the documentation
> 
>     "This function is a wrapper for the GL2PS library by Christophe Geuzaine,
>      and has the same limitations as that library: not all OpenGL features are
>      supported, and some are only supported in some formats. See the reference for
>      full details."
> 
> can imply a "hang" rather than a failure that leaves R (or RStudio) running. Or indeed
> crashes them, which it may do in other systems. I used the Linux "kill" command after
> using "ps ax" to find which processes were running R or RStudio.
> 
> The relevant previous posts are
> 
> https://stackoverflow.com/questions/23242846/exporting-rgl-snapshot-and-rgl-postscript-fails
> 
> https://support.rstudio.com/hc/en-us/community/posts/200669327-rgl-postscript-hangs
> 
> http://r.789695.n4.nabble.com/rgl-postscript-failure-when-saving-a-scene-td4177241.html
> 
> My code that hangs is as follows with the rgl.snapshot line commented and the rgl.postscript
> one uncommented. The script displays an image box with the correct graph, and seems to output
> a partial preamble to the eps file before hanging. This occurs in either R or RStudio.
> 
> Unless someone has a true solution, I suggest offline communications until we have an
> understanding of the problem. I'm posting mainly to try to put a box around the issue to
> help others avoid it.
> 
> Best,
> 
> JN
> 
> ---------------
> # candlestick function
> # J C Nash 2011-2-3
> cstick.f<-function(x,alpha=100){
>    x<-as.vector(x)
>    r2<-crossprod(x)
>    f<-as.double(r2+alpha/r2)
>    return(f)
> }
> x <- (-100:100)/5
> y <- x
> library(rgl)
> 
> z <- matrix(NA, length(x), length(y))
> for (i in seq_along(x)) {
>      for (j in seq_along(y)) {
>          z[i,j] <- cstick.f(c(x[i],y[j]))
>          if (is.infinite(z[i,j])) {z[i,j] <- 1000}
>      }
> }
> persp3d(x, y, z, col='red')
> par3d( windowRect=c( 0,0,500,500 ) )
> # rgl.postscript("candlestick3d.eps","eps")
> rgl.snapshot("candlestick3d.png","png")
> rgl.pop()
> ----------------
> 
> System had following setup
> 
>   sessionInfo()
> R version 3.5.2 (2018-12-20)
> Platform: x86_64-pc-linux-gnu (64-bit)
> Running under: Linux Mint 19.1
> 
> Matrix products: default
> BLAS: /usr/lib/x86_64-linux-gnu/openblas/libblas.so.3
> LAPACK: /usr/lib/x86_64-linux-gnu/libopenblasp-r0.2.20.so
> 
> locale:
>   [1] LC_CTYPE=en_CA.UTF-8       LC_NUMERIC=C               LC_TIME=en_CA.UTF-8        LC_COLLATE=en_CA.UTF-8
> LC_MONETARY=en_CA.UTF-8
>   [6] LC_MESSAGES=en_CA.UTF-8    LC_PAPER=en_CA.UTF-8       LC_NAME=C                  LC_ADDRESS=C
> LC_TELEPHONE=C
> [11] LC_MEASUREMENT=en_CA.UTF-8 LC_IDENTIFICATION=C
> 
> attached base packages:
> [1] stats     graphics  grDevices utils     datasets  methods   base
> 
> other attached packages:
> [1] rgl_0.99.16
> 
> loaded via a namespace (and not attached):
>   [1] Rcpp_1.0.0              digest_0.6.18           later_0.8.0             mime_0.6                R6_2.4.0
>       jsonlite_1.6
>   [7] xtable_1.8-3            magrittr_1.5            evaluate_0.13           miniUI_0.1.1.1          promises_1.0.1
>       rmarkdown_1.11
> [13] webshot_0.5.1           tools_3.5.2             manipulateWidget_0.10.0 htmlwidgets_1.3         crosstalk_1.0.0
>       shiny_1.2.0
> [19] httpuv_1.4.5.1          xfun_0.5                yaml_2.2.0              compiler_3.5.2          htmltools_0.3.6
>       knitr_1.21
>>
> 
> I got the same behaviour on another machine running Linux Mint 18.3.
> 
> ______________________________________________
> R-help using r-project.org mailing list -- To UNSUBSCRIBE and more, see
> https://stat.ethz.ch/mailman/listinfo/r-help
> PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
> and provide commented, minimal, self-contained, reproducible code.
>



More information about the R-help mailing list