2016-06-28 11 views
1

ich mit dem folgenden Code .rmd eine HTML-Seite von R Markdown bin erstellen:Stopp R Abschlag von Pausen zwischen Code und Ausgangs Hinzufügen

--- 
title: 'TITLE' 
author: "NAME" 
date: "DATE" 
output: 
    html_document: 
    keep_md: yes 
--- 

```{r setup, include=FALSE} 
knitr::opts_chunk$set(echo = TRUE) 
``` 

```{r} 
(n1 <- nrow(perf)) # Save the number of rows in 'perf' 
(m1 <- ncol(perf)) # Save the number of columns in 'perf' 
``` 

Wenn ich meine Seite stricken, gibt es meinen Code und Ausgabe in separate Brocken, aber ich möchte, dass sie alle in einem einzigen Stück enthalten sind, eingebettet in meine .md. Das Ergebnis sieht wie folgt aus:

Screen shot of .md output

Aber ich die Räume zwischen den Abschnitten möchte verschwinden, und der Code und Ausgabe in einem einzigen Abschnitt enthalten sein. Ist das möglich?

Ich plane, dies auf GitHub zu setzen, also wenn es trotzdem funktioniert, wäre GitHub-spezifische Abschrift hilfreich (ich weiß, das ist nicht, wie ich die .md derzeit konfiguriert habe, aber das ist mein nächster Schritt) .

Antwort

0

Ich habe zwei mögliche Lösungen für Sie:

1. jeden Quellcode chunk Kombinieren Sie mit der folgenden Ausgabe chunk

Sie könnten versuchen, den folgenden JavaScript-Brocken in Ihrem RMarkdown Skript hinzuzufügen:

<script> 
$chunks = $('pre.r'); 
$chunks.each(function() { 
    if ($(this).next().is('pre:not(r)')) { 
     var newc = '<br>' + $(this).next('pre').children('code').html(); 
     var oldc = $(this).children('code').html(); 
     $(this).children('code').html(oldc.concat(newc)); 
     $(this).next('pre').remove(); 
    } 
}) 
</script> 

enter image description here

2. Setzen Sie alles, was

einem R-Brocken in einem Feld gehört, oder wenn Sie möchten, dass alle html Brocken, die in Feld versuchen, einen zu dem gleichen RMarkdown Brocken gehören

<script> 
$chunks = $('pre.r'); 
$chunks.each(function() { 
    while($(this).next().is('pre')) { 
     var newc = '<br>' + $(this).next('pre').children('code').html(); 
     var oldc = $(this).children('code').html(); 
     $(this).children('code').html(oldc.concat(newc)); 
     $(this).next('pre').remove(); 
    } 
}) 
</script> 

enter image description here

1

Ganz einfach, sind die Spezifikation collapse = TRUE in der Spezifikation für das Stück Code in der Datei .rmd:

```{r, collapse = TRUE} 
(n1 <- nrow(perf)) # Save the number of rows in 'perf' 
(m1 <- ncol(perf)) # Save the number of columns in 'perf' 
``` 
Verwandte Themen