R包ReporteRs : how to let it show cell padding in generated . docx文档?

标签 r reporters

我已经使用优秀的 R 包 ReporteRs 一段时间了,用于我的 R 表格和绘图。 David Gohel 在这里做得非常出色 ( David's site )。

我遇到的问题是无法使表格单元格内的填充功能起作用。

这是我的代码的一部分:

headerCellProp = cellProperties(background.color="#ffffff",border.bottom.width = 1, border.top.width = 1, border.left.width = 0, border.right.width = 0)
              headerTextProp = textProperties(font.weight="bold", color = "#000000", font.size=9 )
              dataCellProp = cellProperties(border.bottom.width = 0, border.top.width = 0, border.left.width = 0, border.right.width = 0)
              dataTextProp = textProperties(font.size=9, color = "#000000")
              dataParProp = parProperties(padding.top = 0, padding.bottom = 0, padding.left = 10, padding.right = 5, text.align = "right")
              footerCellProp = cellProperties(background.color="#ffffff",border.bottom.width = 0, border.top.width = 1, border.left.width = 0, border.right.width = 0)


    mfMyDataFrame = FlexTable( data = MyDataFrame
                                 , header.columns = FALSE
                                 , row.names = FALSE
                                 , cell_format = dataCellProp
                                 , text_format = dataTextProp
          )
          .names = names(MyDataFrame)
          headerRow = FlexRow(.names, textProp = headerTextProp, cellProp = headerCellProp )
          mfMyDataFrame = addHeaderRow( mfMyDataFrame, headerRow)
          footerRow = FlexRow()
          footerRow[1] = FlexCell( pot( " ", format = headerTextProp ), cellProp = footerCellProp, colspan = length(.names) )
          mfMyDataFrame = addFooterRow( mfMyDataFrame, footerRow)
          mfMyDataFrame[,] = parProperties( padding.top = 0, padding.bottom = 0, padding.left = 10, padding.right = 5, text.align = "right" )

          doc = addTitle( doc, "Table title", level = 4, stylename= "rTableLegend")
         doc = addFlexTable(doc, mfMyDataFrame) 

输出的 .docx 文件在表格单元格中不显示任何填充(左侧没有 10 个,右侧没有 5 个)。我在这里错过了什么吗?

非常感谢!

最佳答案

来自作者 David Gohel:

在 github 上也有人问过这个问题: https://github.com/davidgohel/ReporteRs/issues/10 这是0.5.3版本以来解决的一个小错误。

以下是适用于单元格填充的代码:

选项(“ReporteRs-fontsize”= 9) dataParProp = parProperties(padding.top = 0, padding.bottom = 0, padding.left = 10, padding.right = 5, text.align = "右")

mfMyDataFrame = FlexTable( data = iris, body.par.props = dataParProp, header.par.props = dataParProp )

mfMyDataFrame = setFlexTableBorders( mfMyDataFrame, inside.vertical = borderProperties( style = "none") ,inner.horizo​​ntal = borderProperties(style =“none”),outer.vertical = borderProperties(style =“none”))

关于R包ReporteRs : how to let it show cell padding in generated . docx文档?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23434035/

相关文章:

从ggplot条形图中的刻度线中删除一些文本标记

r - 无法安装 leaps 包,dyn.load 出错(文件,DLLpath = DLLpath,...)[Mac OSX]

r - 如何在ggplot的嵌套循环中为跨图中的因子分配相同的颜色?

r - 在 R 中创建具有专业外观的 Powerpoint

R - ReporteRs 包。是否可以对文本应用条件格式?

r - 在 R 中使用 Excel 文件

r - 图例中的 ggplot2 虚线未正确显示

r - 在循环中保存 grid.arrange 输出并打印到 word (ReporteRs) 或 PDF 文件

r - 使用 ReporteRs 包通过 R Shiny 生成 powerpoint 幻灯片