У меня есть четыре разных вида графики, каждая из которых превращается в гроб с очевидным успехом. Я пытаюсь объединить их в одно изображение с grid.arrange(). Один из четырех - я бы сказал, самый простой из четырех - вызывает ошибку, даже без других трех.R: Рисование textGrob не удается с таинственной ошибкой
grid.text(expression(atop("first line",
scriptstyle("second line"))),
vjust = 0, gp=gpar(fontfamily = "HersheySans"))
Error in grid.Call.graphics(L_text, as.graphicsAnnot(x$label), x$x, x$y, :
Metric information not available for this family/device
Это traceback()
8: grid.Call.graphics(L_text, as.graphicsAnnot(x$label), x$x, x$y,
resolveHJust(x$just, x$hjust), resolveVJust(x$just, x$vjust),
x$rot, x$check.overlap)
7: drawDetails.text(x, recording = FALSE)
6: drawDetails(x, recording = FALSE)
5: drawGrob(x)
4: recordGraphics(drawGrob(x), list(x = x), getNamespace("grid"))
3: grid.draw.grob(tg)
2: grid.draw(tg)
1: grid.text(expression(atop("first line", scriptstyle("second line"))),
vjust = 0, gp = gpar(fontfamily = "HersheySans"))
я получаю ту же ошибку, если удалить scriptstyle
и vjust
из функции, поэтому они не являются виновниками.
Я даже не могу понять, из какой функции возникает ошибка. grid.Call.graphics не экспортируется, но grid:::grid.Call.graphics
не имеет сообщения об ошибке, подобного этому в коде, и ни as.graphicsAnnot, resolveHJust
, ни resolveVJust
.
Я ударил стену на этом. Любые идеи или предложения, как разрешить это или обойти его, очень ценятся.
Все сделано под Windows 7.
Вы имеете в виду мое использование функции scriptstyle? Это не может быть причиной этой проблемы, потому что я получил ту же ошибку, когда я удалил scriptstyle. Но я полагаю, что это может привести к другой проблеме, когда я исправлю это. Я не мог найти документацию для шрифтов, отличных от Hershey, в спецификациях gpar fontfamily. Есть такие? – andrewH
Ах! Спасибо. Я не понимал, что это не было базовое выражение R ". – andrewH