如何在RStudio中将两个矩阵导出至同一Excel文件并设置格式
在RStudio中将两个矩阵导出到同一Excel文件并设置格式的方法
我们可以使用openxlsx包实现该需求,它能灵活控制Excel文件的格式与布局。以下是具体操作步骤:
1. 安装并加载依赖包
先确保安装openxlsx包,若未安装则执行安装命令:
install.packages("openxlsx") library(openxlsx)
2. 创建对应的数据框
根据你提供的矩阵数据,在R中构建两个数据框:
# 卡车位置坐标数据框 truck_pos <- data.frame( X_Now = c(5.4, 8.3, 6.6, 6.5, 15.0), Y_Now = c(15.4, 9.0, 5.2, 13.5, 1.9), row.names = c("A", "B", "C", "D", "E") ) # 装载位置坐标数据框 bcd <- data.frame( Pick_up_X = c(18.3, 11.1, 20.0, 4.4, 12.7, 5.2, 18.5, 8.2, 11.5, 2.1), Pick_up_Y = c(0.5, 0.1, 8.9, 18.2, 2.9, 10.7, 19.0, 17.3, 0.5, 11.3), Drop_off_X = c(4.0, 17.1, 18.4, 8.6, 4.0, 16.9, 4.8, 0.6, 3.4, 11.4), Drop_off_Y = c(13.9, 18.9, 7.4, 15.0, 0.7, 18.9, 9.5, 4.6, 11.4, 0.1) )
3. 创建工作簿并写入数据
创建空白工作簿,将两个数据框写入同一张工作表,并预留合适的空白间距:
# 创建空工作簿 wb <- createWorkbook() # 添加工作表 addWorksheet(wb, sheetName = "坐标数据汇总") # 写入卡车位置数据(保留行名),从A1单元格开始 writeData(wb, sheet = "坐标数据汇总", x = truck_pos, startRow = 1, startCol = 1, rowNames = TRUE) # 预留2行空白后,写入装载位置数据,从第8行开始 writeData(wb, sheet = "坐标数据汇总", x = bcd, startRow = 8, startCol = 1, rowNames = FALSE)
4. 设置格式优化
为数据添加格式,提升可读性:
# 设置所有列的宽度为12 setColWidths(wb, sheet = "坐标数据汇总", cols = 1:5, widths = 12) # 创建表头样式(加粗、白色字体、蓝色背景) header_style <- createStyle( textDecoration = "bold", fontColour = "white", fgFill = "#4F81BD" ) # 为卡车位置数据的表头应用样式 addStyle(wb, sheet = "坐标数据汇总", style = header_style, rows = 1, cols = 2:3, gridExpand = TRUE) # 为装载位置数据的表头应用样式 addStyle(wb, sheet = "坐标数据汇总", style = header_style, rows = 8, cols = 1:4, gridExpand = TRUE) # 创建行名样式(加粗) rowname_style <- createStyle(textDecoration = "bold") # 为卡车位置数据的行名应用样式 addStyle(wb, sheet = "坐标数据汇总", style = rowname_style, rows = 2:6, cols = 1, gridExpand = TRUE)
5. 保存Excel文件
将配置好的工作簿保存为指定路径的Excel文件:
saveWorkbook(wb, file = "坐标数据汇总.xlsx", overwrite = TRUE)
执行完以上代码后,你将得到一个包含两个矩阵数据、格式整齐且带有合适间距的Excel文件。
内容的提问来源于stack exchange,提问作者Meet Manoj Kothari
相关产品推荐
相关产品推荐

