2012-01-23 3 views
12

私はちょうどorg-modeを使い始めています。私は、org-modeファイルにRを挿入し、エクスポート時にそれを実行することが可能であることを見てきました。しかし、興味のあるプロットを生成するためにorg-babel(コード埋め込み)を取得する際に問題があり、コードの代わりに結果イメージを埋め込むか、コードを実行して出力します。org-mode経由のRateプロットの埋め込み

#+BABEL: :session *R* :results output graphics :exports both 
#+begin_src R :file img.pdf :results output graphics :session *R* 
hist(rnorm(100)) 
#+end_src 

#\includegraphics{img.pdf} 

しかし、それはそれができるほど素敵ではありません。

は、これまでのところ、私は仕事にこれを持っています。最初に、私はRコードを実行するかどうかを尋ねるメッセージを表示し、次に、\includegraphics命令を削除したいと思います。

これはまったく可能ですか?

+1

R側で 'tikzDevice'、LaTeX側で' \ usepackage {tikz} 'を試してみると、少なくとも\ includegraphicsの必要がなくなります。 OTOH TikZのグラフィックスは非常に遅くなる可能性があります。特に、プロットに多くの点がある場合はそうです。 – zwol

答えて

14

いくつかのこと:1)組織モードが最近変更されており、特にw.r.t。 Babelとsrcブロック - gitリポジトリから最新バージョンを入手します(詳細はFAQをチェックしてください)。 2)私たちは#+BABEL行をこれ以上使用しません。これは今では#+PROPERTY行で行われます。3)グラフィックの包含は自動的に行われます。あなたは\includegraphics{}を一切行う必要はありません(キャプションの配置については、デフォルトの動作を微調整しない限り)。

は例えば、ここにあなたの例の簡易版は、組織モードの最近のバージョンで次のようになります:私はちょうど私のマシン上でテストし、それが魔法のように動作

#+TITLE: tester.org 
#+PROPERTY: session *R* 
#+PROPERTY: results output 

* Headline here 

Here is some text. 

#+begin_src R :exports both :results graphics :file img.pdf 
hist(rnorm(100)) 
#+end_src 

。最後の1つ - であるため、BABEL、PROPERTY、および他の多くのものについての継続的な議論が見られるので、Orgモードのメーリングリストに登録することを強くお勧めします。

ちなみに、#+PROPERTY: results output行は重要ではありません。それは私がSweaveから期待しているもののほうが一般的ですからです。

+0

あなたの質問をもう一度読んでいて、 'hist(rnorm(100))'がエコーされないように見えます。 ':exports both 'の代わりに':exports results'を実行します。 –

+1

また、「はい、評価コードを尋ねる」は迷惑です。彼らはOrgマニュアルでこれについて議論しますが、簡単な答えは 'C-h v org-confirm-babel-evaluate'です。これを 'nil'に設定したいとします。 –

+0

あなたはもちろん正しいです。私はhttp://orgmode.org/worg/org-faq.html#sec-4-2に関する説明を踏まえて、私が期待していた通りに機能しました。 – cdecker