plantillas - tablas en html ejemplos
¿Puedo usar knitr para aplicar estilos CSS a celdas de tablas individuales? (2)
Los ReporteRs
paquete pueden ayudar. Echa un vistazo aquí FlexTable .
Luego puede obtener el código HTML correspondiente con la función as.html
y reutilizarlo dentro de su código knitr
.
¿Es posible aplicar un atributo de clase a celdas de una tabla individual utilizando knitr
? He aplicado con éxito un atributo de clase al encabezado de la sección que contiene una tabla generada por knitr::kable
y la utilicé para dar formato a toda la tabla. Sin embargo, me gustaría poder formatear condicionalmente celdas individuales, lo que requeriría poder aplicar una clase a elementos <td>
específicos.
Mi solución actual es envolver el contenido de la celda en un par de etiquetas <span>
y pasarlo a knitr::kable
. Este enfoque solo me permite formatear el texto dentro de la celda frente a la celda completa (por ejemplo, configurar el color de fondo de la celda). Aquí hay un ejemplo de lo que estoy usando actualmente:
## Read in the report, process the data, send to kable
rpt <- generate.report()
mutate(rpt, Col2 = ifelse(abs(Col2) > Threshold,
paste(''<span class="warning">'',
sprintf("%.2f", Col2), ''</span>''),
sprintf("%.2f", Col2))) %>%
knitr::kable(format="markdown", align = c("l", rep("r", 4)),
col.names = gsub("//.", "<br>", colnames(.)))
Lo que da como resultado el siguiente ejemplo de salida HTML:
<td align="right"><span class="warning"> -1.74 </span></td>
Me gustaría poder tener knitr :: kable generar algo como esto:
<td align="right" class="warning"> -1.74 </td>
De esa manera podría aplicar los estilos css a la etiqueta <td>
etiqueta <span>
.
Ok, puede que esta no sea la respuesta, pero puede apuntarle en la dirección correcta. Tuve un problema similar al formatear celdas individuales en knitr para preparar un pdf. Al final, uso xtable y escribí una función que se basaba en una matriz lógica para decidir si se formatearía o no una celda en la tabla de salida.
No conseguí que funcionara sin problemas, así que tuve que publicarlo aquí y, con la ayuda de ivyleavedtoadflax , pude desarrollar una función razonablemente fácil de usar para aplicar el formateo a ciertas celdas en una tabla en Knitr.
Como dije, no es la solución exacta a su problema, pero puede apuntarle en la dirección correcta.