首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何解决在R中运行latex时出现的错误?

如何解决在R中运行latex时出现的错误?
EN

Stack Overflow用户
提问于 2021-06-30 12:44:58
回答 1查看 368关注 0票数 1

我试图用R在乳胶中生成一些情节,下面是代码:

代码语言:javascript
运行
复制
msaPrettyPrint(seq_mapped, output="pdf", showNames="none",
               showLogo="none", askForOverwrite=FALSE, verbose=FALSE)

而错误是:

代码语言:javascript
运行
复制
Error in texi2dvi(texfile, quiet = !verbose, pdf = identical(output, "pdf"),  : 
  unable to run pdflatex on 'seq_mapped.tex'
LaTeX errors:
! Paragraph ended before \inf@@get was complete.
<to be read again> 
                   \par 
l.25 ...e}{/tmp/RtmppWEuqI/seq108d544be5486.fasta}
                                                  
! Misplaced alignment tab character &.
\msfline ->\par &
                  & & & @
l.25 ...e}{/tmp/RtmppWEuqI/seq108d544be5486.fasta}
                                                  
! Misplaced alignment tab character &.
\msfline ->\par & &
                    & & @
l.25 ...e}{/tmp/RtmppWEuqI/seq108d544be5486.fasta}
                                                  
! Misplaced alignment tab character &.
\msfline ->\par & & &
                      & @
l.25 ...e}{/tmp/RtmppWEuqI/seq108d544be5486.fasta}
                                                  
! Misplaced alignment tab character &.
\msfline ->\par & & & &
                        @
l.25 ...e}{/tmp/RtmppWEuqI/seq108d544be5486.fasta}

我也试过:

代码语言:javascript
运行
复制
msaPrettyPrint(seq_mapped, output="tex", showNames="none",
               showLogo="none", askForOverwrite=FALSE, verbose=FALSE)
tools::texi2pdf("seq_mapped.tex", clean=TRUE)

但仍然有一个错误

代码语言:javascript
运行
复制
Error in texi2dvi(file = file, pdf = TRUE, clean = clean, quiet = quiet,  : 
  Running 'texi2dvi' on 'seq_mappedt.tex' failed.
LaTeX errors:
! LaTeX Error: File `texshade.sty' not found.

Type X to quit or <RETURN> to proceed,
or enter new name. (Default extension: sty)

! Emergency stop.
<read *> 
         
l.4 ^^M
       
!  ==> Fatal error occurred, no output PDF file produced!

但是,安装了texshade.sty

代码语言:javascript
运行
复制
system.file("tex", "texshade.sty", package="msa")
[1] ".../R/x86_64-pc-linux-gnu-library/4.1/msa/tex/texshade.sty"

有什么想法吗?FYI: Ubuntu 20.04.2 LTS焦点

谢谢

EN

回答 1

Stack Overflow用户

发布于 2022-06-23 08:59:14

我刚刚偶然看到这条线,我意识到它11个月前的历史。不过,万一对某人有帮助,我敢回答.

首先,让我们从第二个问题开始:使用msaPrettyPrint()编写.tex文件,然后调用texi2dvi()。但是,您没有向texi2dvi()提供texshade.sty所在的信息。必须这样做,因为texshade.sty存储在msa包的文件夹中,而不是存储在LaTeX查找输入文件的标准文件夹中。长话短说-你应该这么做:

代码语言:javascript
运行
复制
tools::texi2pdf("seq_mapped.tex", texinputs=system.file("tex", package="msa"),clean=TRUE)

如果使用与第一个问题相同的输入数据,我想也会出现同样的问题。为了更好地回答这个问题,我需要尝试一下原始文件吗?你能拿出一个最小的例子来展示这个问题并通过电子邮件发送给我吗?(msa@bioinf.jku.at)

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

https://stackoverflow.com/questions/68195033

复制
相关文章

相似问题

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