코드 셀: Jupyter

Jupyter는 Python, R, Julia 등 여러 언어의 계산을 지원하는 개방형 문서 형식입니다. Quarto에서 Jupyter를 사용하는 방법은 Python 사용Julia 사용 문서를 참고하세요.

개요

셀 옵션은 실행 가능한 코드 블록의 실행과 출력에 영향을 줍니다. 블록 상단의 주석에 지정합니다. 예:

```{python}
#| label: fig-polar
#| echo: false
#| fig-cap: "A line plot on a polar axis"
```

속성

label

코드 셀을 고유하게 식별하는 레이블입니다. 다른 코드가 이 셀을 참조할 때 사용합니다. (예: fig-samples 또는 tbl-summary처럼 상호 참조에 활용됩니다)

classes

셀 컨테이너에 적용할 클래스입니다.

renderings

렌더링 이름 배열입니다. 예: [light, dark]

tags

노트북 셀에 사용할 태그의 배열입니다.

id

노트북 셀 식별자입니다. 셀 id가 없으면 label을 셀 id로 사용합니다. 자세한 내용은 https://jupyter.org/enhancement-proposals/62-cell-id/cell-id.html을 참고하세요.

코드 출력

eval

코드 셀을 실행합니다 (false면 코드를 출력으로 그대로 보여줍니다).

  • true(기본값): 코드 셀을 실행합니다.
  • false: 코드 셀을 실행하지 않습니다.
  • [...]: 표현식 포함/제외를 위한 양수 또는 음수 리스트입니다. (이 기능은 knitr 엔진에서만 지원됩니다)
echo

셀 소스 코드를 렌더링 결과에 포함합니다.

  • true(대부분 형식 기본값): 소스 코드를 포함합니다.
  • false(beamer, revealjs, pptx 등 발표 형식 기본값): 소스 코드를 포함하지 않습니다.
  • fenced: 코드를 포함하면서 셀 구분자도 출력합니다.
  • [...]: 포함하거나 제외할 줄 번호 목록입니다. (이 기능은 knitr 엔진에서만 지원됩니다)
code-fold

코드를 HTML <details> 태그로 접어서 사용자가 필요할 때 펼치도록 합니다.

  • true: 코드를 접습니다.
  • false(기본값): 코드를 접지 않습니다.
  • show: <details> 태그를 사용하되 처음에는 펼쳐진 상태로 표시합니다.
code-summary

Summary text to use for code blocks collapsed using code-fold

code-overflow

코드 줄이 컨테이너보다 넓을 때 처리 방식을 선택합니다. 다음 중 하나를 사용하세요:

  • scroll
  • wrap
code-line-numbers

코드 블록 출력에 행 번호를 포함합니다(true 또는 false).

revealjs 출력에서는 특정 줄을 강조하거나 강조 집합 사이를 애니메이션 형태로 표시하는 문자열도 지정할 수 있습니다.

  • 줄 집합은 쉼표로 구분합니다:
    • 3,4,5
    • 1,10,12
  • 범위는 대시와 쉼표를 조합해서 표시합니다:
    • 1-3,5
    • 5-10,12,14
  • 애니메이션 단계는 |로 나눕니다:
    • 1-3|1-3,5: 처음에는 1-3, 이후 1-3,5
    • |5|5-10,12: 처음에는 번호 없음, 그다음 5, 이후 5-10과 12
lst-label

상호 참조에 사용하는 코드 목록의 고유 레이블입니다.

lst-cap

코드 목록에 사용할 캡션입니다.

셀 출력

output

코드 실행 결과를 출력에 포함합니다. 가능한 값은 다음과 같습니다:

  • true: 결과를 포함합니다.
  • false: 결과를 포함하지 않습니다.
  • asis: 출력 결과를 별도 컨테이너 없이 마크다운 원본 그대로 취급합니다.
warning

렌더링 결과에 경고 메시지를 포함합니다.

error

출력에 오류를 포함합니다(이 설정은 코드 실행 오류로 인해 문서 처리가 중단되지 않는다는 의미입니다).

include

출력(코드나 결과)이 포함되는 것을 모두 차단하는 설정입니다.

panel

셀 출력에 사용할 패널 유형입니다(tabset, input, sidebar, fill, center).

output-location

출력이 코드를 기준으로 어느 위치에 나타날지 설정합니다. 가능한 값은 다음과 같습니다:

  • default: 코드 다음의 기본 흐름입니다.
  • fragment: 단락 조각(fragment) 안에 표시되어 진행할 때까지 보이지 않습니다.
  • slide: 현재 슬라이드 다음에 새 슬라이드로 표시합니다.
  • column: 인접한 열에 넣습니다.
  • column-fragment: 인접한 열에 넣되 진행할 때까지 보이지 않습니다.

이 옵션은 revealjs 형식에서만 지원됩니다.

그림

fig-cap

그림에 사용할 캡션입니다.

fig-subcap

그림의 서브캡션입니다.

fig-link

그림을 클릭했을 때 연결될 하이퍼링크 대상입니다.

fig-align

그림의 수평 정렬입니다(default, left, right, center).

fig-alt

HTML 이미지의 alt 속성에 들어갈 대체 텍스트입니다.

fig-env

그림 출력을 위한 LaTeX 환경입니다.

fig-pos

LaTeX \begin{figure}[]에 사용할 그림 위치 옵션입니다. 코드와 함께 생성되는 계산형 그림 출력은 기본값 fig-pos="H"로 설정해 코드와 그림이 지나치게 떨어지지 않도록 합니다. fig-posfalse로 설정하면 위치 지정자를 생략하며, 이는 sidewaysfigure 같은 사용자 정의 환경에서 유용할 수 있습니다.

fig-scap

짧은 캡션입니다(LaTeX 출력에서만 사용). \caption[]에 들어가며 PDF 문서의 그림 목록에 보통 표시됩니다.

테이블

tbl-cap

테이블에 사용할 캡션입니다.

tbl-subcap

테이블의 서브캡션입니다.

tbl-colwidths

Markdown grid 테이블이나 pipe 테이블이 columns 글자(기본값 72)보다 넓을 경우 명시적인 열 너비를 적용합니다. 일부 형식(예: HTML)은 열 너비를 자동으로 조절하므로 별도 명시가 크게 필요하지 않지만, LaTeX 같은 형식은 긴 셀 내용 때문에 열 너비 정보가 필요합니다. 이 옵션은 다음 값 중 하나로 설정합니다:

  • auto: 하이퍼링크가 없는 테이블에 마크다운 열 너비를 적용합니다(auto는 HTML 형식 기본값).
  • true: 항상 마크다운 열 너비를 적용합니다(true는 HTML 이외 형식 기본값).
  • false: 마크다운 열 너비를 절대 적용하지 않습니다.
  • 배열(예: [40, 30, 30]): 명시적인 너비 비율을 백분율로 지정합니다.
html-table-processing

none이면 셀 출력에 있는 원본 HTML 테이블을 처리하지 않고 그대로 유지합니다.

패널 레이아웃

layout

열(column)을 첫 번째 차원, 행(row)을 두 번째 차원으로 한 2차원 배열로서 너비를 지정합니다. 예를 들어 상단의 두 출력 블록을 나란히 두고 세 번째 블록을 아래 전체 너비로 펼치려면 [[3,3], [1]]을 사용하세요. 음수 값을 넣으면 여백이 생깁니다(예: [[3,-1,3], [1]]).

layout-ncol

출력 블록을 열로 배치합니다.

layout-nrow

출력 블록을 행으로 배치합니다.

layout-align

레이아웃 콘텐츠의 수평 정렬을 지정합니다(default, left, right, center).

layout-valign

레이아웃 콘텐츠의 수직 정렬을 지정합니다(default, top, center, bottom).

페이지 열

column

출력을 위한 페이지 열입니다.

fig-column

그림 출력을 위한 페이지 열입니다.

tbl-column

표 출력을 위한 페이지 열입니다.

cap-location

그림과 표 캡션을 어디에 둘지 지정합니다(top, bottom, margin).

fig-cap-location

그림 캡션을 어디에 둘지 지정합니다(top, bottom, margin).

tbl-cap-location

표 캡션을 어디에 둘지 지정합니다(top, bottom, margin).