如何在R语言htmlTable生成的表格指定单元格之间绘制线条?
你可以通过为对应单元格追加CSS边框、渐变样式实现需求,完整实现代码如下:
df <- data.frame(a=c(4,3,9,9),b=c(5,3,8,8)) css.cell <- matrix('', nrow(df), ncol(df)) # 原有橙色背景设置 css.cell[rbind(c(2,1),c(2,2))] <- 'background-color: orange;' # 绘制两个3之间的黑色竖线:给第二行第一列单元格添加右边框 css.cell[2,1] <- paste0(css.cell[2,1], 'border-right: 3px solid black;') # 绘制8、9相邻的线条: # 如果是第三行第一列的9和第三行第二列的8之间的竖线,添加以下代码 css.cell[3,1] <- paste0(css.cell[3,1], 'border-right: 3px solid black;') # 如果是第三行第二列的8和第四行第一列的9之间的斜线,添加以下代码 # css.cell[3,2] <- paste0(css.cell[3,2], 'background: linear-gradient(to top right, transparent calc(50% - 1.5px), black, transparent calc(50% + 1.5px));') library(htmlTable) htmlTable(df, css.cell = css.cell)
样式说明:
- 单个单元格可以同时指定多个CSS样式,直接拼接样式字符串即可生效
- 单元格间的横/竖线直接通过对应单元格的
border属性设置,支持调整线条粗细、颜色、线型(实线、虚线等) - 跨单元格的斜线可以通过
linear-gradient线性渐变模拟,调整渐变角度、颜色阈值可以修改斜线的方向和粗细
内容的提问来源于stack exchange,提问作者user11916948
相关产品推荐
相关产品推荐

