대시보드 실행
개요
Python용 Shiny 대화형 문서를 실행하는 방법은 여러 가지가 있습니다.
- VS Code 또는 Positron에서 Quarto: Preview 명령 사용
- 어떤 편집기에서든
quarto preview명령줄 인터페이스 사용 - 더 넓은 사용자에게 제공하기 위해 서버에 배포
여기에서 각 시나리오를 자세히 다룹니다.
Quarto 문서에서 Shiny를 사용하려면 최신 버전의 shiny(>=0.9.0)와 shinywidgets(>=0.3.1) 패키지가 필요합니다. 다음과 같이 최신 버전을 설치할 수 있습니다.
pip install --upgrade shiny shinywidgetsVS Code 및 Positron
VS Code 및 Positron용 Quarto 확장(OpenVSX의 OpenVSX 및 Microsoft 마켓플레이스에서 제공)은 Shiny 대화형 문서를 미리 보기 위한 통합 지원을 제공합니다(정적 문서와 동일하게 Quarto: Preview 명령을 사용하면 됩니다).
명령줄
다른 노트북이나 텍스트 편집기를 사용한다면 quarto preview 명령으로 Shiny 대화형 문서를 미리 볼 수 있습니다. 이는 노트북(.ipynb)과 일반 텍스트 마크다운(.qmd) 모두에 동일하게 동작합니다. 예:
Terminal
quarto preview example.ipynb
quarto preview example.qmdpreview 명령에는 문서 서버의 포트와 호스트, 그리고 브라우저를 자동으로 열지 여부를 제어하는 옵션이 있습니다. quarto preview help에서 자세한 옵션을 확인할 수 있습니다.
quarto preview의 기능(문서 변경 시 자동 재렌더링)을 사용하지 않고 문서를 제공하려면 quarto serve 명령을 사용할 수 있습니다.
Terminal
quarto serve example.qmd배포
Shiny 대화형 문서는 quarto render로 생성되는 일반 Shiny 애플리케이션입니다. 사실 인터랙티브 문서를 제공하기 위해 Quarto가 꼭 필요한 것은 아니며, quarto render로 생성된 앱을 shiny run으로 실행하면 됩니다.
Terminal
quarto render example.qmd
shiny run app.py배포된 애플리케이션은 quarto render가 생성하는 HTML 문서와 app.py 스크립트로 구성됩니다.
example.html
example_files/
app.py다음 문서에서 다양한 환경에 Shiny 애플리케이션을 배포하는 방법을 확인할 수 있습니다.
| 대상 | 설명 |
|---|---|
| shinyapps.io | 클라우드 호스팅 서비스 |
| Hugging Face | 클라우드 호스팅 서비스 |
| Shiny Server | 오픈 소스 애플리케이션 서버 |
| Posit Connect | 상용 퍼블리싱 플랫폼 |
| Other Services | 사용자 지정 서버/호스팅 환경 |
서버리스 구성(브라우저에서 Pyodide로 Python을 실행)으로 Shiny 대화형 문서를 배포할 수도 있습니다. Retirement Simulation은 이 워크플로를 보여주는 예시입니다.
디버깅
생성된 .py 애플리케이션 파일(예: hello-app.py)을 디버깅하면 Shiny 문서의 대화형 디버깅 세션을 실행할 수 있습니다. 편집기 오른쪽 상단의 Debug Shiny App 메뉴 명령으로 디버깅 세션을 시작하세요.
디버깅 대상 파일(예: hello-app.py)은 대화형 문서에서 생성된 파일입니다. 따라서 이 파일을 직접 수정하면 안 되며(다음 렌더링 때 덮어써짐), 대신 이를 생성한 원본 문서(예: hello.qmd)를 수정해야 합니다.
더 알아보기
Python용 Shiny 대화형 문서에 대해 더 알아보려면 다음 문서를 참고하세요.
시작하기는 Shiny 대화형 문서의 기본을 설명합니다.
컴포넌트 브라우저는 사용 가능한 Shiny 입력과 출력, 그리고 대시보드에 복사해 사용할 수 있는 코드 스니펫을 정리합니다.
입력 레이아웃는 Shiny 입력을 배치하는 다양한 방법(사이드바, 입력 패널, 입력을 카드에 직접 연결 등)을 설명합니다.
실행 컨텍스트는 서로 다른 코드 셀이 언제 실행되는지(예: 렌더링 vs. 서빙)를 깊이 있게 설명합니다.
Python용 Shiny은 사용 가능한 모든 UI 및 출력 위젯에 대한 심화 문서와 동작 개념을 제공합니다.

