有没有办法在R Markdown/Knitr报告中交互显示/隐藏代码?

最佳答案

如果我对您的理解正确,那么至少可以使用HTML输出来做到这一点,例如以下示例所示:

---
title: "Toggle Code boxes"
output: html_document
date: "January 12, 2016"
---

First add the javascript to toggle boxes(remember to indent it)

  <script language="javascript">
    function toggle(num) {
      var ele = document.getElementById("toggleText" + num);
      var text = document.getElementById("displayText" + num);
      if(ele.style.display == "block") {
        ele.style.display = "none";
        text.innerHTML = "show";
      }
      else {
        ele.style.display = "block";
        text.innerHTML = "hide";
      }
   }
  </script>

and then we have some R code with the toggle button wrapped around (also indented):

  <a id="displayText" href="javascript:toggle(1);">Show underlying code</a>
  <div id="toggleText1" style="display: none">

```{r}
x <- sample(100)
mean.x <- mean(x)
```

  </div>

The mean is `r mean.x`. Please click the link to see the source code.

  <a id="displayText" href="javascript:toggle(2);">Show underlying code</a>
  <div id="toggleText2" style="display: none">

```{r}
median.x <- median(x)
```

  </div>

And the median is `r median.x`. Please click the link to see the source code.

关于r - 交互显示/隐藏代码R Markdown/Knitr报告,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/34784121/

10-12 17:32