Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/75.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
更改ggplot2中条形文本背景的高度无法按预期工作 ###加载库 图书馆(GG2) 图书馆(gtable) ###建图 这似乎起到了作用 ###Load libraries library(ggplot2) library(gtable) ###Bu_R_Ggplot2_Gtable - Fatal编程技术网

更改ggplot2中条形文本背景的高度无法按预期工作 ###加载库 图书馆(GG2) 图书馆(gtable) ###建图 这似乎起到了作用 ###Load libraries library(ggplot2) library(gtable) ###Bu

更改ggplot2中条形文本背景的高度无法按预期工作 ###加载库 图书馆(GG2) 图书馆(gtable) ###建图 这似乎起到了作用 ###Load libraries library(ggplot2) library(gtable) ###Bu,r,ggplot2,gtable,R,Ggplot2,Gtable,更改ggplot2中条形文本背景的高度无法按预期工作 ###加载库 图书馆(GG2) 图书馆(gtable) ###建图 这似乎起到了作用 ###Load libraries library(ggplot2) library(gtable) ###Build plot d <- ggplot(mtcars, aes(x=gear)) + geom_bar(aes(y=gear), stat="identity", position="dodge") +

更改ggplot2中条形文本背景的高度无法按预期工作
###加载库
图书馆(GG2)
图书馆(gtable)
###建图

这似乎起到了作用

###Load libraries

library(ggplot2)
library(gtable)

###Build plot

d <- ggplot(mtcars, aes(x=gear)) + 
            geom_bar(aes(y=gear), stat="identity", position="dodge") +
            facet_wrap(~cyl)

###Change height of strip text

g <- ggplotGrob(d)
g$heights[[3]] = unit(2,"in")
grid.newpage()
grid.draw(g)

g@Axeman是我干的。图2,标题为“预期结果”。@konvas,如问题中所述,问题出在Mac上,在Linux上,一切正常sessionInfo
正确地报告了
ggplot2\U 2.0.0
,Linux也是如此。在Linux中运行示例代码会产生预期的结果,但在Mac上不会。Rstudio也被无罪释放。谢谢。@Konvas感谢您指出这一点,在对各种ggplot2版本进行挖掘和修补之后,我发现这只发生在
ggplot2\u 2.0.0
中。这个问题也与操作系统无关(whew),即
ggplot2_2.0.0
之前的版本在OS X上给出了预期的结果。我已经对问题进行了相应的编辑。+one但不管它值多少,我更喜欢得到的结果result@C8H10N4O2不,你不应该喜欢预期的结果。如果您有多个GGPlot,其中刻面标题的长度各不相同,比如45度角(因此不同的strip.text高度),然后对其进行排列,您将看到原因;-)成功了。。但是,为什么在将新单位分配给g$heights后,它只接受值,而不接受技巧的单位splus,但我需要以厘米为单位的高度:在我的用例中非常方便。@Shekeine您需要以厘米为单位的高度是多少?你完全可以在
g$heights[[3]]@konvas中将单位改为“cm”是的是的,我的意思是,我需要以绝对单位指定条形文本背景的高度(无论是
cm
还是
中的
),而不是npc。无论使用的是
cm
还是
in
,上述问题始终存在。做
g$grobs[[5]]$heights@Shekeine我不是网格包专家,但我的理解是,如果你做
g$heights[[3]]=unit(X,Y)
(使用任意数字X和unity),然后做
g$grobs[[5]]$heights
g <- ggplotGrob(d)
g$heights[[3]] = unit(2,"in")
g$grobs[[5]]$heights <- g$grobs[[6]]$heights <-
    g$grobs[[7]]$heights <- unit(1, "native") # or "npc"
grid.newpage()
grid.draw(g)