knitr + pandoc: не может видеть график при просмотре html-слайдов

0

Я успешно создал 2 тестовых слайда в R Studio, используя пакет knitr и pandoc. Файл отметки R при использовании кнопки "knitr" в студии R выглядит хорошо и показывает графики правильно, однако при использовании pandoc для генерации.html файла из файла.Rmd работа в браузере, кажется, теряет всю оболочку кода и графики из файл Rmd. Вот мои два сценария:

mdown.Rmd:

Title
========================================================

This is an R Markdown document. Markdown is a simple formatting syntax for authoring web pages (click the **MD** toolbar button for help on Markdown).

When you click the **Knit HTML** button a web page will be generated that includes both content as well as the output of any embedded R code chunks within the document. You can embed an R code chunk like this:

'''{r}
summary(cars)
'''

---

You can also embed plots, for example:

'''{r fig.width=7, fig.height=6}
plot(cars)
'''

и сценарий для запуска:

# Load packages
setwd("~Documents")
require(knitr)
require(markdown)

# Create slides
knit('mdown.Rmd')
system('pandoc -s -t slidy mdown.Rmd -o mdown.html')

также здесь html файл, созданный pandoc

<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
 "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en"> 
<head>
  <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
  <meta name="generator" content="pandoc" />
  <link rel="stylesheet" type="text/css" media="screen, projection, print" 
    href="/slidy.css" /> 
  <script src="http://www.w3.org/Talks/Tools/Slidy/slidy.js.gz"
    charset="utf-8" type="text/javascript"></script>
</head>
<body>
<div class="slide">

<h1>Title</h1>
<p>This is an R Markdown document. Markdown is a simple formatting syntax for authoring web pages (click the <strong>MD</strong> toolbar button for help on Markdown).</p>
<p>When you click the <strong>Knit HTML</strong> button a web page will be generated that includes both content as well as the output of any embedded R code chunks within the document. You can embed an R code chunk like this:</p>
<p><code>{r} summary(cars)</code></p>
</div>

<div class="slide">

<p>You can also embed plots, for example:</p>
<p><code>{r fig.width=7, fig.height=6} plot(cars)</code></p>
</div>
</body>
</html>

где я здесь не так?

Теги:
knitr
pandoc

1 ответ

2
Лучший ответ

Вы обрабатываете файл .Rmd с помощью pandoc где вы должны обрабатывать файл .md созданный после запуска mdown.Rmd через knitr.

knit('mdown.Rmd')
system('pandoc -s -t slidy mdown.md -o mdown.html')

Файл .Rmd - это просто исходный файл, который вы .Rmd выше.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню