为什么有时在指定自定义线型时会在R中出现段错误?

时间:2012-09-22 00:04:49

标签: r graphics

为什么在R中指定自定义线型时会出现R-crashing段错误?下面的四种线型实际上是相同的,因为它们以相同的顺序循环通过相同大小的破折号和空格(它们只是从循环中的不同点开始)。

plot.new()
abline(0.1,0,lty='28282383') # works
abline(0.2,0,lty='83282823') # works
abline(0.3,0,lty='28238328') # segfault
abline(0.4,0,lty='23832828') # segfault

以上是上述两条致命线中第一条的完整错误消息:

 *** caught segfault ***
address 0xbf981000, cause 'memory not mapped'
Segmentation fault

2 个答案:

答案 0 :(得分:3)

看起来像开罗图形设备中的一个错误 - 我使用默认的X11()图形设备崩溃,但没有使用X11(type="Xlib")pdf()。 RStudio可能有效,因为它可能使用自己的方法来捕获图形。

我在2.15.1-patched:

的描述中没有看到任何相关内容

http://cran.r-project.org/bin/windows/base/NEWS.R-2.15.1patched.html

所以我试过了,现在把它报告为一个bug:

https://bugs.r-project.org/bugzilla3/show_bug.cgi?id=15055

答案 1 :(得分:0)

似乎通过Mac上的RStudio为我工作。什么OS?什么版本的R?

> plot.new()
> abline(0.1,0,lty='28282383') # works
> abline(0.2,0,lty='83282823') # works
> abline(0.3,0,lty='28238328') # segfault
> abline(0.4,0,lty='23832828') # segfault
> sessionInfo()
R version 2.15.0 (2012-03-30)
Platform: x86_64-apple-darwin9.8.0/x86_64 (64-bit)

locale:
[1] C/en_US.UTF-8/C/C/C/C

attached base packages:
[1] stats     graphics  grDevices utils     datasets  methods   base     

other attached packages:
[1] reshape2_1.2.1

loaded via a namespace (and not attached):
[1] plyr_1.7.1    stringr_0.6.1 tools_2.15.0 

enter image description here