grid.table 和 gridExtra 包中的 tableGrob
grid.table and tableGrob in gridExtra package
我正在尝试使用 gridExtra
包格式化 table。我的 gridExtra
包是 2.0
,R 版本是 3.2.1
我在 Whosebug 上浏览了关于格式的答案,建议的选项似乎只适用于旧版本的包。例如,
grid.table(data, h.even.alpha = 1, h.odd.alpha = 0,
v.even.alpha = 1, v.odd.alpha = 1,
gpar.corefill, gpar.coretext)
所有这些选项在最新版本中显示为 "unused arguments"。
进一步搜索,我发现在新的 gridExtra 包中,格式可能在主题中定义,示例 -
tt <- ttheme_default(core=list(fg_params=list(hjust=1, x=0.95)),
colhead=list(fg_params=list(col="brown"))
然后做
grid.table(data, theme=tt).
我找不到的是主题中的这些选项是如何定义的,以及现在如何完成旧版本中可能的所有格式设置。
特别是,我想做 -
- 列左对齐
- big.marks 的逗号(10000 等于 10,000)
- 偶数和奇数行号的不同行颜色
- 列header颜色
- 不显示行名称(类似 row.names=FALSE)
最近的回答显示了如何改变参数,Baptiste 给出了 link 进一步的例子。正如您在问题中注意到的那样,要更改格式,您可以使用 theme
参数;您可以通过查看 ttheme_default()
的输出来了解要更改的参数
# New theme paramters
myt <- ttheme_default(
# Use hjust and x to left justify the text
# Alternate the row fill colours
core = list(fg_params=list(hjust = 1, x=1),
bg_params=list(fill=c("yellow", "pink"))),
# Change column header to white text and red background
colhead = list(fg_params=list(col="white"),
bg_params=list(fill="red"))
)
# Example data - create some large numbers
dat <- mtcars[1:5,1:5]
dat$mpg <- dat$mpg*1000
grid.newpage()
grid.draw(tableGrob(format(dat, big.mark=","), theme=myt, rows=NULL))
format
的big.mark
参数用于添加逗号分隔符,使用rows=NULL
参数删除行名。
我正在尝试使用 gridExtra
包格式化 table。我的 gridExtra
包是 2.0
,R 版本是 3.2.1
我在 Whosebug 上浏览了关于格式的答案,建议的选项似乎只适用于旧版本的包。例如,
grid.table(data, h.even.alpha = 1, h.odd.alpha = 0,
v.even.alpha = 1, v.odd.alpha = 1,
gpar.corefill, gpar.coretext)
所有这些选项在最新版本中显示为 "unused arguments"。
进一步搜索,我发现在新的 gridExtra 包中,格式可能在主题中定义,示例 -
tt <- ttheme_default(core=list(fg_params=list(hjust=1, x=0.95)),
colhead=list(fg_params=list(col="brown"))
然后做
grid.table(data, theme=tt).
我找不到的是主题中的这些选项是如何定义的,以及现在如何完成旧版本中可能的所有格式设置。
特别是,我想做 -
- 列左对齐
- big.marks 的逗号(10000 等于 10,000)
- 偶数和奇数行号的不同行颜色
- 列header颜色
- 不显示行名称(类似 row.names=FALSE)
theme
参数;您可以通过查看 ttheme_default()
# New theme paramters
myt <- ttheme_default(
# Use hjust and x to left justify the text
# Alternate the row fill colours
core = list(fg_params=list(hjust = 1, x=1),
bg_params=list(fill=c("yellow", "pink"))),
# Change column header to white text and red background
colhead = list(fg_params=list(col="white"),
bg_params=list(fill="red"))
)
# Example data - create some large numbers
dat <- mtcars[1:5,1:5]
dat$mpg <- dat$mpg*1000
grid.newpage()
grid.draw(tableGrob(format(dat, big.mark=","), theme=myt, rows=NULL))
format
的big.mark
参数用于添加逗号分隔符,使用rows=NULL
参数删除行名。