XKCD包问题

时间:2014-04-23 00:04:19

标签: r

我正在尝试开始使用xkcd包,并按照the vignette中的说明操作。但是,一旦我到达“保存图表”的第2.2节,我就会收到错误。

以下是代码:

font.add("xkcd",  regular = "xkcd.ttf")
p <-  ggplot() + geom_point(aes(x=mpg, y=wt), data=mtcars) + 
  theme(text = element_text(size = 16, family = "xkcd"))
print(p)

这是错误:

Error in grid.Call(L_textBounds, as.graphicsAnnot(x$label), x$x, x$y,  : 
  polygon edge not found
In addition: Warning messages:
1: In grid.Call(L_textBounds, as.graphicsAnnot(x$label), x$x, x$y,  :
  no font could be found for family "xkcd"
2: In grid.Call(L_textBounds, as.graphicsAnnot(x$label), x$x, x$y,  :
  no font could be found for family "xkcd"

我错过了什么?

2 个答案:

答案 0 :(得分:0)

经过大量的反复试验,我能够自己开始工作。基本上,您必须将下载的xkcd.ttf复制到fon.paths()中的所有文件夹。

for(dirs in font.paths()) {
file.copy(file.path(dirs,"xkcd.ttf), "/Users/shambho/library/Fonts/")
}

它正在工作!!

答案 1 :(得分:0)

我在MacOS Sierra的干净安装上遇到了同样的问题。以下对我有用:

## Perform Once:
## install.packages("xkcd", dependencies=TRUE)
## install.packages("sysfonts")
## library(sysfonts)
## download.file("http://simonsoftware.se/other/xkcd.ttf", dest="xkcd.ttf", mode="wb")
## system("cp xkcd.ttf ~/Library/Fonts")

或者,获取xkcd.ttf的副本并将其复制到本地字体目录(确保它是由您的系统提供的)。如果出现问题且所有stackoverflow帖子只显示问号,那么你就搞乱了你的字体。现在转到字体书和文件 - &gt;恢复标准字体。

## Example 1
library("xkcd")
library("ggplot2")
ggplot(data = mtcars, aes(x = mpg, y = wt)) + 
    geom_point() + 
    theme(text = element_text(size = 16, family = "xkcd"))