grid.Call出错(L_textBounds,as.graphicsAnnot(x $ label),x $ x,x $ y,:找不到多边形边缘(新)

Lat*_*lia 7 r ggplot2

我知道这个问题的标题是这个问题本问题的重复,但那里的解决方案对我不起作用,错误信息(略有)不同:

Error in grid.Call(L_textBounds, as.graphicsAnnot(x$label), x$x, x$y,  : 
polygon edge not found
Run Code Online (Sandbox Code Playgroud)

(注意缺少字体的缺失部分)

我尝试了所有的建议(更新/重新安装所有加载的图形软件包,ggplot2,GGally和scale,在安全模式下重新启动Mac OSX上的字体,将字体从/字体/(已禁用)移回/字体. ..)但没有一个解决了这个问题.

当我绘制ggplot图时,似乎出现错误

scale_y_continuous(label=scientific_10)
Run Code Online (Sandbox Code Playgroud)

在哪里scientific_10定义为

scientific_10 <- function(x) {
parse(text = gsub("e", " %*% 10^", scientific_format()(x)))
}
Run Code Online (Sandbox Code Playgroud)

因此,我怀疑scales图书馆与它有关.

最令人费解的是,错误只发生在每次这么多次,也许每次第3次或第5次我试图绘制相同的图...

> sessionInfo()
R version 3.2.2 (2015-08-14)
Platform: x86_64-apple-darwin13.4.0 (64-bit)
Running under: OS X 10.9.5 (Mavericks)

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

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

other attached packages:
[1] gridExtra_2.0.0 scales_0.3.0    broom_0.4.0     tidyr_0.3.1             ggplot2_1.0.1   GGally_0.5.0    dplyr_0.4.3    

loaded via a namespace (and not attached):
 [1] Rcpp_0.11.5      magrittr_1.5     MASS_7.3-43      mnormt_1.5-1         munsell_0.4.2    colorspace_1.2-6 lattice_0.20-33  R6_2.0.1        
 [9] stringr_0.6.2    plyr_1.8.1       tools_3.2.2      parallel_3.2.2       grid_3.2.2       gtable_0.1.2     nlme_3.1-121     psych_1.5.8     
[17] DBI_0.3.1        htmltools_0.2.6  lazyeval_0.1.10  yaml_2.1.13      assertthat_0.1   digest_0.6.8     reshape2_1.4.1   rmarkdown_0.8.1 
[25] labeling_0.3     reshape_0.8.5    proto_0.3-10    

traceback()
35: grid.Call(L_textBounds, as.graphicsAnnot(x$label), x$x, x$y, 
    resolveHJust(x$just, x$hjust), resolveVJust(x$just, x$vjust), 
    x$rot, 0)
34: widthDetails.text(x)
33: widthDetails(x)
32: (function (x) 
{
    widthDetails(x)
})(list(label = expression(5 %*% 10^+5, 7.5 %*% 10^+5, 1 %*% 
    10^+6, 1.25 %*% 10^+6, 1.5 %*% 10^+6), x = 1, y =   c(0.0777214770341215, 
0.291044141334423, 0.504366805634725, 0.717689469935027, 0.931012134235329
), just = "centre", hjust = 1, vjust = 0.5, rot = 0, check.overlap = FALSE, 
    name = "axis.text.y.text.8056", gp = list(fontsize = 9.6, 
        col = "black", fontfamily = "", lineheight = 0.9, font = 1L), 
    vp = NULL))
31: grid.Call.graphics(L_setviewport, vp, TRUE)
30: push.vp.viewport(X[[i]], ...)
Run Code Online (Sandbox Code Playgroud)

Joo*_*amp 1

当我尝试将 ggplot/grid 输出绘制到 Rstudio 中的图形窗口时,我遇到了同样的问题。然而,绘制到外部绘图设备似乎工作正常。

选择的外部设备取决于您的系统,但以下脚本(摘自此博客)适用于大多数系统:

a = switch(tolower(Sys.info()["sysname"]),
               "darwin"  = "quartz",
               "linux"   = "x11",
               "windows" = "windows")
options("device" = a)
graphics.off()
rm(a)
Run Code Online (Sandbox Code Playgroud)

并切换回使用 Rstudio 绘图窗口:

options("device"="RStudioGD")
graphics.off()
Run Code Online (Sandbox Code Playgroud)

请注意,通过切换,您将丢失任何现有的图。