R 마크 다운에 사진 / 테이블 삽입


132

그래서 테이블과 그림을 R Markdown에 삽입하고 싶습니다. 일반 단어 문서에서는 표 (5 행 x 2 열)를 쉽게 삽입하고 그림의 경우 복사하여 붙여 넣을 수 있습니다.

  1. 5 행 x 2 열 테이블을 삽입하고 물건을 입력하는 방법은 무엇입니까 (두 번째 열이 첫 번째보다 넓다는 점에서 테이블을 조정하는 방법)?

  2. 사진을 어떻게 삽입합니까? 이해를 돕기 위해 먼저 그림을 png로 저장 한 다음 내 문서에서 참조해야합니다. 또한 한 페이지 이상 또는 한 페이지 미만을 차지하지 않는 것처럼 보고서에 맞게 사진을 자동으로 조정하고 싶습니다 (사진의 크기를 원하는대로 조정할 수있는 방법이 있습니까)?

  3. 누구든지 R Markdown에 대한 멋진 / 포맷을 알고 있다면 알려주십시오. 나는 그것이 #단락의 큰 제목을 만들고 ** **대담한 것을 알고 있습니다. 내가 아는 전부에 대한 것!


테이블을 추가하는 방법을 찾았습니다! 아직도 사진에 대해 궁금해 ._.
user3784616

답변:


152

여러 사이트에서 테이블과 이미지에 대한 치트 시트 나 하우투를 제공합니다. 내 목록의 상단은 다음과 같습니다

사진은 사용이 매우 간단하지만 페이지에 맞게 이미지를 조정할 수있는 기능은 제공하지 않습니다 (아래의 업데이트 참조). 이미지 속성 (크기, 해상도, 색상, 테두리 등)을 조정하려면 이미지 편집기 형식이 필요합니다. 무료 및 오픈 소스 인 ImageMagick , GIMP 또는 InkScape 중 하나를 사용하여 필요한 모든 것을 할 수 있습니다 .

사진을 추가하려면 다음을 사용하십시오.

![Caption for the picture.](/path/to/image.png)

나는 판독이 PNG와 JPG를 지원한다는 것을 알고 있습니다.

R로 이미지 크기를 만드는 경우 이미지 크기를 제어 할 수 있습니다 (예 : 플롯). 이것은 이미지를 만들기 위해 명령에서 직접 수행하거나 knitr 를 사용하는 경우 옵션을 통해 더 잘 수행 할 수 있습니다 (권장 사항 ... 특히 플롯 아래 에서 청크 옵션을 확인하십시오 ).

이 자습서를 숙독하는 것이 좋습니다. markdown은 매우 편리하며 대부분의 사람들이 정기적으로 사용하지 않지만 일단 배우면 실제로 좋아하는 많은 기능을 가지고 있습니다. (SO는이 튜토리얼에서 직접적으로 답변되는 질문을하기에 반드시 최고의 장소는 아닙니다.)


2019 년 8 월 31 일 업데이트

얼마 전에 pandoc이미지에 "link_attributes"를 통합했습니다 (확실히 2015 년에 commit jgm / pandoc # 244cd56 사용 ). "이미지 크기 조정"을 직접 수행 할 수 있습니다. 예를 들면 다음과 같습니다.

![unchanged image](foo.jpg)
![much-smaller image](foo.jpg){#id .class width=30 height=20px}
![half-size image](foo.jpg){#id .class width=50% height=50%}

치수 단위가 더 제공 될 수있다 (화소 가정), 또는 함께 " px, cm, mm, in, inch%" (참조 : https://pandoc.org/MANUAL.html , 검색 link_attributes).

( 긴 토론 이 있었지만 CommonMark가 이것을 구현했는지 확실하지 않습니다 .)


그래도 사진을 읽고 있다면 사진없이 다른 컴퓨터에서 Rmarkdown 파일을 다시 열 수 있습니까? R에 추가하면 사진이 영구적입니까? 내가 어떻게 그것을 영구적으로 만들지 않으면
user3784616

3
파일이 파일 내에서 영구적이지 않습니다 .Rmd. pandoc을 사용하여 HTML로 "컴파일" --self-contained하면 이미지를 html 파일로 인코딩합니다. PDF 및 Word 파일은 파일의 일부로 포함되므로 실제 PNG 파일을 보낼 때 포함하지 않아도됩니다. 그러나 Rmd 파일은 이미지 파일을 수동으로 포함해야했습니다.
r2evans

어떻게 작동합니까? 사진을 추가 할 수없는 것 같습니다. 따라서 기본적으로 사진의 이름은 "고용률"이며 "요약"이라는 파일 폴더에 있습니다. 파일의 위치는 C : \ Users \ Paul \ Desktop \ Summary입니다. 내가 쓴 코드는! [Employment Rates.] (C : /Users/Paul/Desktop.Summary.png)이며 작동하지 않습니다
user3784616

자 급식을 사용하는 방법에 대한 예를 들어 주시겠습니까? 단어 doc로 저장하면 영구적으로 이미지가 표시됩니까? 나는 아직도 약간 혼란스러워
user3784616

더 나은 방법은 Rmd의 YAML 헤더 내에서 사용하는 것이 더 간단합니다 (그리고 기본값 인 것 같습니다). rstudiodown at rstudio 참조 입니다. 중단의 1/3 이상은 그 사용을 다루는 "문서 종속성"섹션입니다.
r2evans

87

업데이트 : @ r2evans의 답변이기 때문에 R Markdown에 이미지를 삽입하고 이미지 크기를 제어하는 ​​것이 훨씬 쉽습니다.

이미지

bookdown 책 이미지를 포함하는 가장 좋은 방법은 사용하는 것입니다 것을 설명하는 훌륭한 일을한다 include_graphics(). 예를 들어 다음과 같은 캡션을 사용하여 전체 너비 이미지를 인쇄 할 수 있습니다.

```{r pressure, echo=FALSE, fig.cap="A caption", out.width = '100%'}
knitr::include_graphics("temp.png")
```

이 방법이 pandoc 방식보다 나은 이유는 ![your image](path/to/image)다음과 같습니다.

  • 출력 형식 (HTML / PDF / Word)에 따라 명령을 자동으로 변경합니다.
  • 플롯의 크기 ( fig.width), 보고서의 출력 너비 ( out.width), 캡션 추가 ( fig.cap) 등에 동일한 구문을 사용할 수 있습니다 .
  • 출력에 가장 적합한 그래픽 장치를 사용합니다. 즉, PDF 이미지는 여전히 높은 해상도를 유지합니다.

테이블

knitr::kable()여기에 자세히 설명 된대로 R Markdown 보고서에 테이블을 포함시키는 가장 좋은 방법 입니다. 이 기능은 선택한 출력에 대한 올바른 형식을 자동으로 선택하는 데있어 지능적입니다.

```{r table}
knitr::kable(mtcars[1:5,, 1:5], caption = "A table caption")
```

R Markdown에서 간단한 테이블을 만들고 R Studio를 사용하는 경우 insert_table 패키지를 확인할 수 있습니다 . 테이블을 만들기위한 깔끔한 그래픽 인터페이스를 제공합니다.

사용자 정의 달성의 범위를 벗어 폭 테이블 컬럼의 스타일링 knitr하지만, kableExtra도움에 패키지가 기록 된 것은이를 : https://cran.r-project.org/web/packages/kableExtra/index.html

스타일 팁

R 마크 다운 치트 시트는 여전히 가장 많이 사용할 수있는 기본 구문을 배울 수있는 최고의 장소입니다.

서식에 대한 확장 기능을 찾고 있다면 bookdown패키지도 살펴볼 가치가 있습니다. https://bookdown.org/yihui/bookdown/markdown-extensions-by-bookdown.html : 상호 참조, 특수 헤더 작성 등의 기능을 제공합니다.


훌륭한 솔루션!
Marcus Nunes

이미지 위치를 제자리에 고정하는 방법을 알고 있습니까? 지금은 컴파일 할 때 나타날 위치를 예측하기가 매우 어렵습니다.
wolfsatthedoor

1
나는 씨름했다 ![image caption](\path\to\image.png).DOCX 렌더링 R 마크 다운에 이미지를 삽입하려고하지만, 난 당신 볼 때까지, 신비 실패 knitr::include_graphics()오늘날 솔루션을. 정말 고맙습니다!
elarry

5

그림을 삽입 할 때 ![Caption for the picture.](/path/to/image.png)PDF 출력이 필요한 경우 r2evans의 제안은 문제가 될 수 있습니다.

knitr 함수 include_graphics knitr::include_graphics('/path/to/image.png') 는 사용자를 대신하여 생성중인 출력 형식에 가장 적합한 마크 다운을 생성하는 이식성이 뛰어난 대안입니다.


궁금합니다 ... ![caption](path/to/image.png)PDF 출력이 필요한데 왜 문제가 있습니까? 아마도이 대답은 구식이지만 (원래의 대답과 같음) 적어도 2 년 동안 PDF 출력에서 ​​이것을 사용했습니다.
r2evans

4

3 월 에는 멋진 3D 프레임 워크 인 impress.js를 사용하여 Rmarkdown 에서 슬라이드 프레젠테이션을 발표 했습니다 . 내 머리글은index.Rmd

---
title       : French TER (regional train) monthly regularity
subtitle    : since January 2013
author      : brigasnuncamais
job         : Business Intelligence / Data Scientist consultant
framework   : impressjs     # {io2012, html5slides, shower, dzslides, ...}
highlighter : highlight.js  # {highlight.js, prettify, highlight}
hitheme     : tomorrow      # 
widgets     : []            # {mathjax, quiz, bootstrap}
mode        : selfcontained # {standalone, draft}
knit        : slidify::knit2slides

하위 디렉토리는 다음과 같습니다.

/assets /css    /impress-demo.css
        /fig    /unnamed-chunk-1-1.png (generated by included R code)
        /img    /SS850452.png (my image used as background)
        /js     /impress.js
        /layouts/custbg.html # content:--- layout: slide --- {{{ slide.html }}}
        /libraries  /frameworks /impressjs
                                /io2012
                    /highlighters   /highlight.js
                                    /impress.js
index.Rmd

배경 코드 스 니펫에 이미지가있는 슬라이드는 내 .Rmd에 있습니다.

<div id="bg">
  <img src="assets/img/SS850452.png" alt="">
</div>  

내가 마지막으로 작업 한 이후에 일부 문제가 나타났습니다 (사진은 더 이상 배경이 아니며 R 플롯에서 너무 큰 텍스트로 표시됩니다). 내 지역에서는 제대로 작동합니다. RPub에서 실행할 때 문제가 발생합니다.


2
새로운 질문이 있으면 질문하기 버튼 을 클릭하여 질문하십시오 . 컨텍스트를 제공하는 데 도움이되는 경우이 질문에 대한 링크를 포함하십시오.
Jaap

8
이것은 질문이 아니 었습니다. 이것은 답변입니다 :-)
brigasnuncamais

2
첫 번째 링크가 끊어졌습니다.
daknowles
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.