2012-01-23 25 views
12

Tôi chỉ mới bắt đầu với chế độ org và cho đến giờ tôi thích nó. Tôi đã thấy rằng có thể chèn R trong tệp chế độ org và thực thi nó khi xuất. Nhưng tôi có một số rắc rối khi nhận được org-babel (nhúng mã) để tạo cốt truyện mà tôi quan tâm và nhúng hình ảnh kết quả thay vì mã hoặc đầu ra để chạy mã.Nhúng các ô R bằng latex qua org-mode

Cho đến nay tôi đã có để làm việc này:

#+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} 

Nhưng nó không phải là tốt đẹp như nó có thể. Đầu tiên, nó luôn nhắc tôi xem tôi có muốn thực thi mã R hay không và thứ hai là tôi muốn loại bỏ lệnh \includegraphics.

Điều này có thể thực hiện được không?

+1

Bạn có thể thử sử dụng 'tikzDevice' ở phía R và' \ usepackage {tikz} 'ở phía LaTeX ... điều đó sẽ loại bỏ sự cần thiết của' \ includegraphics' ít nhất. Đồ họa OTOH TikZ có thể rất chậm, đặc biệt nếu cốt truyện của bạn có nhiều điểm trên đó. – zwol

Trả lời

14

Rất ít điều: 1) Chế độ Org đã thay đổi rất nhiều gần đây, đặc biệt là w.r.t. Các khối Babel và src - nhận phiên bản mới nhất từ ​​kho lưu trữ git của chúng (hãy xem Câu hỏi thường gặp để biết chi tiết cách thực hiện). 2) Chúng tôi không sử dụng dòng #+BABEL nữa, những dòng này hiện được thực hiện với #+PROPERTY dòng, 3) Việc bao gồm đồ họa được thực hiện tự động. Tuy nhiên, một người không cần phải thực hiện một số \includegraphics{} (trừ khi bạn muốn tinh chỉnh hành vi mặc định, ví dụ như để đặt phụ đề).

Ví dụ, đây là những gì một phiên bản đơn giản của các ví dụ của bạn sẽ trông giống như dưới một phiên bản mới của chế độ Org:

#+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 

tôi chỉ thử nghiệm trên máy tính của tôi và nó hoạt động như một nét duyên dáng. Một điều cuối cùng - tôi khuyên bạn nên đăng ký vào danh sách gửi thư chế độ Org, bởi vì đó là nơi bạn sẽ thấy các cuộc thảo luận đang diễn ra về BABEL, PROPERTY và một loạt các nội dung khác.

Nhân tiện, dòng #+PROPERTY: results output không quan trọng, nó chỉ là những gì tôi thường làm vì nó giống như những gì tôi mong đợi từ Sweave.

+0

Tôi đang đọc câu hỏi của bạn một lần nữa và có vẻ như bạn không muốn 'hist (rnorm (100))' được lặp lại. Thay vì ': xuất cả hai' chỉ làm': xuất kết quả'. –

+1

Ngoài ra, có, "yêu cầu để đánh giá mã" là gây phiền nhiễu. Họ thảo luận điều này trong hướng dẫn sử dụng Org, nhưng câu trả lời ngắn gọn là thực hiện 'C-h v org-confirm-babel-evaluation'. Bạn muốn đặt nó thành 'nil'. –

+0

Dĩ nhiên bạn đã đúng. Tôi đã làm theo mô tả trên http://orgmode.org/worg/org-faq.html#sec-4-2 để có được trên các cạnh chảy máu, và bây giờ nó hoạt động giống như tôi mong đợi. – cdecker

Các vấn đề liên quan