Sự cố:Hình động hoạt ảnh trong knitr rmarkdown
Xin chào, tôi cố gắng tạo một ô hoạt hình trong tài liệu hướng dẫn lại. Đây là mã của tôi:
```{r lmSim, fig.show='animate'}
library(animation)
library(plyr)
oopt = ani.options(interval = 0.3, nmax = 101)
a <- sort(rnorm(100, 2))
b <- sort(rnorm(100, 7))
out <- vector("list", 101)
for (i in 1:ani.options("nmax")) {
ji <- seq(from = 0, to = 5, by = .05)
a <- jitter(a, factor = 1, amount = ji[i])
fab1 <- lm(a ~ b)
coe <- summary(fab1)$coefficients
r2 <- summary(fab1)$r.squared
if (coe[2, 4] < .0001) p <- " < .0001"
if (coe[2, 4] < .001 & coe[2, 4] > .0001) p <- " < .001"
if (coe[2, 4] > .01) p <- round(coe[2, 4], 3)
plot(a ~ b, main = "Linear model")
abline(fab1, col = "red", lw = 2)
text(x = min(b) + 2, y = max(a) - 1,
labels = paste("t = ", round(coe[2, 3], 3), ", p = ", p, ", R2 = ", round(r2, 3)))
out[[i]] <- c(coe[2, 3], coe[2, 4], r2)
ani.pause()
}
ani.options(oopt)
```
Vòng lặp công việc tốt, và thông qua vào một chức năng, I'am thể lưu nó trong một số định dạng với 'saveLatex', 'saveHTML' hoặc 'saveVideo'. Tuy nhiên, khi 'đan' file .Rmd để có được một file PDF, hình ảnh động không xuất hiện, đó chỉ là dòng này viết:
video of chunk lmSim
Nếu tôi đan nó dưới dạng HTML, chỉ vào nút play của video được hiển thị. Tuy nhiên, nếu tôi mở HTML trong trình duyệt của tôi (firefox) nó được hiển thị chính xác.
Không có thông báo lỗi nào được hiển thị. Tôi đang sử dụng phiên bản R 3.2.0, phiên bản R Studio mới nhất, phiên bản 1.10.5 knitr trên MacBook Pro Yosemite. Tôi không tìm thấy bất kỳ thông tin hoặc tài liệu liên quan nào để giải quyết vấn đề của mình.
Câu hỏi:
Vì vậy, chỉ đơn giản là có thể đưa hoạt ảnh được nhúng vào PDF được tạo bằng rmarkdown/knitr?
Tôi có phải cài đặt chương trình khác để xử lý video bằng PDF (tôi có ffmpeg trên máy tính của mình) không?
Rất cám ơn!
Cảm ơn Yihui! Nó hoạt động rất tốt với các cài đặt sau (đọc PDF với Adobe):
---
title: "Sim"
author: ""
header-includes:
- \usepackage{animate}
...
---
```{r lmSim, fig.show='animate', out.width = '6in'}
Nếu định dạng đầu ra duy nhất mà bạn muốn là PDF, có lẽ bạn có thể thử các tùy chọn đoạn ' out.width = '' '. Xin lưu ý rằng bạn sẽ phải bao gồm '\ usepackage {animate}' trong tiêu đề (http://rmarkdown.rstudio.com/pdf_document_format.html), và cũng sử dụng Acrobat Reader để xem PDF. Nếu điều này làm việc, tôi sẽ giải thích nó trong một câu trả lời. –