我正在尝试在表格内创建超链接,并调整列以包装文本并生成pdf。
前表:
variable<-"testing a long column to wrap testing a long column to wrap "
col1<-"\href{https://www.google.co.uk/}{click here}"
col2<-"[click here](https://www.google.co.uk/)"
col3<-"[click here](https://www.google.co.uk/)"
col4<-"[click here](https://www.google.co.uk/)"
col5<-"[click here](https://www.google.co.uk/)"
test<-data.frame(variable,col1,col2,col3,col4,col5)
当我尝试以下操作时,它会正确提供超链接,但不会调整列宽
library(kableExtra)
knitr::kable(test,row.names=FALSE) %>%
column_spec(1, width = "5cm")
但是当我尝试包含format ='latex'
时,超链接不起作用,但列宽和包装文本
library(kableExtra)
knitr::kable(test,format ='latex' ,row.names=FALSE) %>%
column_spec(1, width = "5cm")
请帮我添加超链接,并在Rmarkdown中调整列宽。
答案 0 :(得分:0)
kableExtra
仅在kable
生成原始HTML / PDF代码时有效。这就是为什么当你没有指定格式时,column_spec
不起作用。
指定格式后,此问题变为“如何将链接放入kable(latex)”问题。事实上,你已经非常接近答案了。关键是您必须在escape
中将F
设置为kable
,以便它可以保持LaTeX代码不变。此外,你必须双重逃避col1中的反斜杠,因为它是一个“R事件”。
variable<-"testing a long column to wrap testing a long column to wrap "
col1<-"\\href{https://www.google.co.uk/}{click here}"
col2<-"\\href{https://www.google.co.uk/}{click here}"
col3<-"\\href{https://www.google.co.uk/}{click here}"
col4<-"\\href{https://www.google.co.uk/}{click here}"
col5<-"\\href{https://www.google.co.uk/}{click here}"
test<-data.frame(variable,col1,col2,col3,col4,col5)
knitr::kable(test,format ='latex',row.names=FALSE, escape = F) %>%
column_spec(1, width = "5cm")