Khi tôi sử dụng Sweave
với R
, tôi có thể tránh đặt tên rõ ràng các tệp lô bằng cách chỉ cần đặt các lệnh lô trong một đoạn mã như <<fig=TRUE>> ... @
. Người tài xế Sweave
tự động tạo ra file được đánh số âm mưu như fig1.pdf
, fig2.pdf
vvR + Org-mode: làm thế nào để tránh đặt tên các tệp lô?
Tuy nhiên trong org-mode
, nó có vẻ như tôi cần phải đặt tên một cách rõ ràng các tập tin hình sử dụng một :file [...].pdf
trong tiêu đề, ví dụ
#+attr_latex: width=8cm placement=[htbp]
#+begin_src R :results output graphics :exports results :file fig.pdf
require(ggplot2)
a <- rnorm(100)
b <- 2*a + rnorm(100)
d <- data.frame(a,b)
ggplot(d,aes(a,b)) + geom_point()
#+end_src
Có cách nào để tránh đặt tên rõ ràng tệp lô và công cụ xuất cao su chế độ org tạo ra các tên tệp này không?
Cập nhật: tôi bao gồm các giải pháp mà G. Jay Kerns chỉ đến đây để tham khảo dễ dàng: tất cả các bạn cần làm là bao gồm một temp-file-tạo chức năng emacs-lisp trong tiêu đề, như :file (org-babel-temp-file "./figure-" ".pdf")
. Điều này tạo ra một tệp hình tạm thời trong thư mục hiện tại (vì ./
). Nếu bạn muốn tạm con số-file trong một thư mục tạm thời toàn cầu (được định nghĩa bởi biến org-babel-temporary-directory
), sau đó chỉ cần nói ".figure"
:
#+attr_latex: width=8cm placement=[htbp]
#+begin_src R :results output graphics :exports results :file (org-babel-temp-file "./figure-" ".pdf")
require(ggplot2)
a <- rnorm(100)
b <- 2*a + rnorm(100)
d <- data.frame(a,b)
ggplot(d,aes(a,b)) + geom_point()
#+end_src
Cảm ơn bạn, đã hoạt động rất tốt! –