3

我正在将 R 数据框写入 .xlsx 文件。

我想用颜色填充某些单元格。我xlsx在 R 中使用包,我发现手册难以理解。这是一个简单的例子:

data(cars)
write.xlsx(cars, "cars.xlsx")

然后,我想填写dist20 到 25 之间的单元格,例如

因为我只有一个直接使用 编写的数据框,所以write.xlsx我没有工作簿 java 对象。

因此,我认为其中的示例不适?CellStyle用于这种情况。

我希望有一种简单的方法来定义单元格样式,例如,使用 的参数定义单元格样式write.xlsx,或者通过选择数据框中的单元格(即,不在 java 对象工作簿中)。

4

1 回答 1

7

您需要使用 xlsx 的低级 API。CellStyle请参阅函数中的示例。

wb <- createWorkbook()
sheet <- createSheet(wb, "Sheet1")
rows  <- createRow(sheet, rowIndex=1)    
cell.1 <- createCell(rows, colIndex=1)[[1,1]]     
setCellValue(cell.1, "Hello R!")
cellStyle1 <- CellStyle(wb) +
    Fill(backgroundColor="orange", foregroundColor="orange",
    pattern="SOLID_FOREGROUND") 
setCellStyle(cell.1, cellStyle1) 
# Then save the workbook 
saveWorkbook(wb, "filename.xlsx")

另请参阅 addDataFrame 函数以添加数据帧,然后使用低级 API 操作单元方面:

wb <- createWorkbook()
sheet  <- createSheet(wb, sheetName="your nice sheet name")
addDataFrame(cars, sheet, row.names=FALSE)
# add manipulations here
saveWorkbook(wb, "filename.xlsx")
于 2015-01-30T13:31:23.940 回答