excel2data工具

excel2data工具

在准备文档时,手动修改 LaTeX 表格是一件不太好玩的事情。当然,有不少工具承诺可以简化这一过程。事实上,我已经记不清所有可用的工具了,我想把你的宝贵经验写成一篇大文章。其中一些工具在操作 LaTeX 表格的工具(HTML 到 LaTeX),但我觉得还有很多。

我建议有人用字母列表开始概述(以便我可以接受这个答案并且它保持在顶部),并且每个人都用“社区维基”条目回复,每个工具一个回复,并将该工具插入列表中。

就我个人而言,我使用 Excel2LaTeX,但我不喜欢必须启动 Windows 才能生成 LaTeX 代码。我正在考虑使用该xlrd库将其重写为独立的 Python 工具,但我不太愿意重新发明轮子。

答案1

通常,我会有这样的用例:将给定的数据表转换为“合适的” LaTeX 表。

通常,我的数据是数字类型,需要数字格式化,可能需要在小数点对齐,并且在大多数情况下,它需要基本的后处理(如商、差、梯度)。

由于我经常需要这样的东西,我编写了一些生成 .tex 文件的 C++ 脚本。它很有用 - 但我很早就意识到它是不够的;它不够灵活,而且 - 就像任何外部工具一样 - 由于涉及许多工具而产生了不必要的复杂性。

我的解决方案是 LaTeX 包pgfplotstable. 这是一个 LaTeX 表格发电机,即它通过一组可配置的规则明确地将输入数据转换为类似于的东西\begin{tabular}....\end{tabular}

免责声明:我编写了该包。

其特点包括:

  • 数据+格式分离
  • 以外部数据文件(带有可自定义分隔符的 CSV)或内联表(文件内部.tex)形式的数据
  • 中心格式定义(例如在序言中或以样式形式)
  • 充分发挥 LaTeX 的强大功能来格式化数字
  • 也支持简单的文本列
  • 简单支持交替行颜色(colortbl
  • 简单支持标准 LaTeX 表格包( booktabs,,,,,... )longtablecolortblmultirow\multicolumn
  • pgf可以使用强大的数学引擎生成包含后处理数据的全新列
  • 可以将单列输出转换为双列输出
  • 完全用 TeX 编写(不需要外部工具)
  • 高度可定制
  • 有一个手动的并给出大量的例子。

您可能需要检查上面提到的链接及其示例,看看它是否符合您的需要。

答案2

我本来不愿意发布这个不起眼的工具,但还是把它发布出来了。

excel2data工具

excel2datatool是我编写的 Java 应用程序,用于帮助我完成个人项目。由于它对我很有用,而且我相信它对于其他用途来说足够通用,所以我决定将其公开。存储库托管在GitHub

整个想法是读取 Microsoft Excel 格式并生成.csv++ .texdatatool有些人可能会认为这个应用程序基本上是一个 CSV 转换器。好吧,它是,但由于我必须用 编写一个补充.tex文件\DTLloaddb,所以我决定自动执行这些步骤。

主屏幕

该应用程序不依赖于 Microsoft Excel。它支持这两种格式,xls并且xlsx开箱即用。使用起来非常简单,在 Windows 和 Mac 中双击excel2datatool.jar即可,java -jar excel2datatool在 Linux 中运行即可。代码符合 Java 5、6、7 和 OpenJDK 6 标准。

优点

  • 不需要 Microsoft Excel 或其他办公工具。
  • 它支持开箱即用的两种格式xlsxlsx
  • 可在所有主流操作系统上运行。
  • LaTeX 文件生成是可选的,因此您可以将其用作普通 CSV 转换器。

缺点

  • 我编写了该应用程序。
  • 由于它不依赖于外部应用程序,因此有效载荷相当大(9.5Mb)。
  • LaTeX 文件将包含最基本的datatool用法,\DTLloaddb没有高级命令。
  • 没有命令行界面。
  • 有些人可能不喜欢拖放样式。
  • 该应用程序会尽力解析 Excel 文件,但可能有一些更复杂的文件无法正确转换。

答案3

Excel 转 LaTeX

Excel 插件,可将电子表格的各个部分转换为等效的 LaTeX 表。

自由的。

加拿大运输安全管理局:http://www.ctan.org/tex-archive/support/excel2latex/

来源:https://github.com/krlmlr/Excel2LaTeX

优点

  • 支持大多数 Excel 格式。
    • 粗体和斜体(如果应用于整个单元格)
    • 左对齐、右对齐、居中对齐和一般对齐(按单元格或按列)
    • 垂直和水平边框(每个单元格或每列、单或双)
    • 字体颜色(使用xcolor包)
    • 填充颜​​色(使用colortbl包)
    • 旋转(使用rotating包)
    • multirow合并单元格(如果需要,使用包)
    • 可以将\$_^%&和转换#为适当的宏,或将其保留在原处
    • 支持booktabs
    • 在不可用时使用bigstrutbooktabs
  • 可以tabulartable环境模板包围环境
  • 将输出复制到剪贴板或导出到.tex文件以供包含使用\include
  • 将表格规范保存到 Excel 工作表,然后一次性导出所有表格
  • 可配置:只需单击一次即可重复转换相同范围

缺点

  • 需要 Windows 或 OS X 和 Excel 进行转换

答案4

莱克斯

莱克斯有一个相对不错的表格编辑器。通过选择查看->查看源代码,可以直接看到生成的 LaTeX 代码并轻松复制粘贴(并且学习) 即可。此外,还可以轻松地通过 LaTeX 排版结果,以了解表格的实际外观。其他好处包括内置对booktabs和 的支持longtable

在此处输入图片描述

生成的 LaTeX 源文件的直接表示帮助我真正了解了 LaTeX 表格的精髓。如今,我已经熟练掌握了 LyX,但很少使用 LyX 来做这个。

您甚至可以按照以下步骤将从 Excel 复制的表格粘贴到 LyX 中指示

  1. 在 LyX 中,插入一个与 Excel 中尺寸相同的表格。
  2. 将鼠标光标放在表格左上角的单元格中。
  3. 从 LyX 的菜单中选择Edit → Paste Special → Plain Text, Join Lines

相关内容