您好我用kableExtra
创建了这个很棒的表,但我唯一的问题是行的高度并不总是相等。有人知道这方面的补救措施吗?
我的桌子:
例如,如您所见,项目编号22(第6行)的行高度(间距)比其他行更大。
我的代码:
my_column_names = c("Item number", "Item",
"Emotion", "Social",
"At Home", "Body", "Emotion",
"Social 1", "Social 2",
"At Home", "Body")
kable(df1,
format = "latex", booktabs = TRUE,
col.names = my_column_names,
caption = "Factor loadings for the 4 and 5 Factor Model") %>%
kable_styling(latex_options = c("striped", "hold_position"),
full_width = FALSE) %>%
add_header_above(c(" " = 2,
"4 Factor Model " = 4, "5 Factor model" = 5)) %>%
add_header_above(c(" " = 2,
"Model" = 9)) %>%
kableExtra::landscape()
答案 0 :(得分:9)
行高不总是相等的原因是默认情况下\addlinespace
每隔5行插入linesep = ""
。要摆脱它,请将kable()
放入7 more sections
。有关详细信息,请参阅Get rid of \addlinespace in kable。
答案 1 :(得分:1)
通常,您可以通过HTML在HTML表格中进行更改。不确定如何使用kableExtra
执行此操作,但您可能需要考虑tableHTML
来执行此操作。我在下面添加一个小例子来演示行高:
library(tableHTML)
tableHTML(mtcars[1:10, ],
border = 1,
rownames = TRUE,
caption = 'This is a caption',
footer = 'This is a footer',
widths = c(140, rep(50, 11)),
second_headers = list(c(2, 5, 6), c('', 'col2', 'col3')),
theme = 'scientific') %>%
add_css_row(list('height', '50px'), rows = 3:12)
如果你不想,你不需要使用科学主题。该软件包使您可以灵活地添加任何您喜欢的CSS(如条纹行等)。如果感兴趣,您可以查看教程here。
P.S。它目前只支持一个额外的标题。除此之外,您的整个表格都可以复制。