首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在R中使用openxlsx包更改默认列宽度

在R中使用openxlsx包更改默认列宽度
EN

Stack Overflow用户
提问于 2022-02-01 07:13:01
回答 1查看 355关注 0票数 2

我最近注意到,当我使用openxlsx包创建excel工作簿时,它生成的电子表格的默认列宽为10.71,而不是我们通常在excel中得到的8.43。例如,如果我运行以下代码来创建一个完全空白的excel电子表格,则所有列的宽度为10.71。

代码语言:javascript
复制
wb <- openxlsx::createWorkbook()
openxlsx::addWorksheet(wb, "Sheet 1")
openxlsx::saveWorkbook(wb, "Test File.xlsx", overwrite = TRUE)

有人知道如何将默认的列宽度设置回标准的8.43吗?我知道我可以运行以下命令来更改列宽,但是这会向电子表格中添加额外的格式,这将在我输入更大的数据集后增加我的文件大小。这还意味着,导出到excel的数据数据中的列与数据右侧的列的宽度不同(这看起来很琐碎,但如果可能的话,我希望保持整洁)。

代码语言:javascript
复制
openxlsx::setColWidths(wb, "Sheet 1", cols = 1:ncol(df), widths = "8.43")

在openxlsx::op.openxlsx中似乎没有描述列宽度的任何东西,这在我看来有点奇怪。

如果这是一个愚蠢的问题,或者我错过了一些简单的问题,但我还没有在网上找到任何关于这个问题的信息,请原谅。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2022-02-01 07:48:35

width的默认参数实际上是8.43,可以在帮助函数?setColWidth中看到。所以可能还有另一个原因干扰了这里。

openxlsx_getOp("minWidth")给了什么?缺省值为3,但您可能将其更改为10.71?

如果您不是从头开始创建工作簿,而是在现有文件中读取,这也可以解释两者之间的区别(如果读取文件的宽度为10.71)。

更新:我可以确认这个问题,默认设置的列宽度为10.71,而不是8.43。因此,我的建议是在开发人员的页面上打开一个bug:https://github.com/ycphs/openxlsx/issues

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/70936734

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档