36077


Rstudio上でRnwファイルからのpdfレポートの生成をしたいと思っています。  
環境はWin8.1、texは美文書入門のDVDからインストールしたTex Liveです。  
Useful Rのドキュメント・プレゼンテーション生成を参考に進めていますがうまくいかないです。  
うまくいかない点があるので質問させていただきます。

[code]

    \documentclass{ltjsarticle}
    \usepackage{ascmac}
    \usepackage[dvipdfmx]
    \usepackage{graphicx}
    \usepackage{multirow}
    \usepackage{amsmath}
    \usepackage{amssymb}
    \usepackage{amsfonts}
    
    \begin{document}
    hogehoge
    \end{document}
    
[/code]

というRnwファイルから、Rコンソール上で

[code]

    library(knitr)
    setwd("C:\\Users\\hoge\\")
    Sys.setenv(RSTUDIO_PDFLATEX = "lualatex")
    knit2pdf("hoge.Rnw",compiler = "lualatex")
    
[/code]

としたのですが、Compile PDFのボタンを押してもknit2pdfを使ってもエラーになってしまいます。

[code]

    Error in texi2dvi(file = file, pdf = TRUE, clean = clean, quiet = quiet,  : 
    unable to run 'lualatex' on 'hoge.tex'
    In addition: Warning message:
    running command '"lualatex" -interaction=nonstopmode "hoge.tex"' had status 1 
    
[/code]

Texworksで同じソースのものをjsarticleでコンパイルするとうまくいくのですが、上記のものですとPDFが一応生成され、,,graphicxとだけ1ページめに出現、2ページ目以降は正常なものが生成されました。

また、lualatexとplatexの違いってなんなんでしょう？  
platexで実行すると

[code]

    this file needs format platex2e
    
[/code]

というエラーが出て断念しました。


CC BY-SA 3.0
2016-09-29T11:23:34.007
29245
2017-07-03T18:38:06.903
12457
question
r latex
Rstudio上でRnwファイルからのpdfレポートの生成

[code]

    \usepackage[dvipdfmx]
    \usepackage{graphicx}
    
[/code]

や

[code]

    \usepackage[dvipdfmx]{graphicx}
    
[/code]

ではうまく行かず、

[code]

    \usepackage[dvipdfmx]{}
    
[/code]

だとうまくいくようです。  
ただまだ原因などまとまっていないので取り急ぎ。


CC BY-SA 3.0
2016-10-30T08:25:54.867
29994
2016-10-30T08:25:54.867
12457
29245
answer

[code]

    \usepackage[dvipdfmx]
    \usepackage{graphicx}
    
[/code]

は

[code]

    \usepackage{graphicx}
    
[/code]

に変更してください．  
`dvipdfmx` というのはパッケージの名前ではないので，`\usepackage{}` は間違いです．  
`graphicx` パッケージを使う際にはオプションで

[code]

    \usepackage[ドライバ名]{graphicx}
    
[/code]

というようにドライバ名を指定しますが，この場合は不要です（<https://texwiki.texjp.org/?graphicx> を参照）．

あとは，

[code]

    knit2pdf("hoge.Rnw",compiler = "lualatex", texi2dvi="lualatex")
    
[/code]

というようにして実行するか，Compile PDF ボタンを押すとPDFが生成されると思います．

`knit2pdf()` は `texi2pdf()` を呼び出しています．`texi2dvi="lualatex"`
という引数は`texi2pdf()`に渡す引数で，「texファイルからpdfを作るのに何を使うか」を指定するものです（詳しくは help を参照）．

`platex`， `lualatex` はTeXの処理系の種類です．  
今回の場合は`lualatex`用の`.Rnw`ファイルなので，

[code]

    lualatex hoge.tex
    
[/code]

とすれば PDF が生成されます．


CC BY-SA 3.0
2017-07-03T18:38:06.903
36077
2017-07-03T18:38:06.903
24196
29245
answer