Я пытаюсь выявить проблему с grobWidth
, применяемым к объектам gtable
(см. gtable:::widthDetails.gtable
); проблема возникает тогда, когда размер определяется как сумма единиц (unit.arithmetic
объекта),отсутствует метод S3, но работает более высокий уровень функции
library(grid)
u = unit(1,"npc") + unit(2,"mm")
grid:::absolute.units(u)
#Error in UseMethod("absolute.units") :
# no applicable method for 'absolute.units' applied to an object of class #"c('unit.arithmetic', 'unit')"
Примечательно, что absolute.size
работает, даже если он называет grid:::absolute.units
,
grid::absolute.size(u)
#[1] 1null+2mm
Как это возможно?
Вам не нужно устанавливать рамку для печати перед использованием блоков npc? –
нет, но забавно это вызывает еще одну проблему: 'grid :: absolute.size (unit (1," in ") + unit (2," mm "))' yielding '1null + 2mm'. И я думал, что имперские подразделения сбивают с толку. – baptiste