[R] 대화형 R Shiny 시각화 앱 설정하기

R-Blogger · 블로그·해설 · 2025-10-04

R-Blogger블로그·해설한국어2025-10-04

[R] 대화형 R Shiny 시각화 앱 설정하기

Zhenguo Zhang's Blog /2025/10/08/r-setting-up-an-interactive-r-shiny-plotting-app/ 저는 사용자가 색상, 기호 등을 선택하여 다양한 플롯을 대화형으로 만들 수 있는 shiny 앱을 개발하고자 하는 아이디어를 가지고 있습니다. 이는 데이터 탐색과 출판 품질의 그림을 만들 때 매우 유용합니다. 오늘은 이를 구현하고 https://fortune9.shinyapps.io/interactive_plot/에 공개했습니다. 소스 코드는 GitHub https://github.com/fortune9/interactive_plot에 있습니다. 이 가이드는 R Shiny를 사용해 대화형 플롯 애플리케이션을 만들고 배포하는 인프라 구성을 중점적으로 다룹니다. 상세 기능 및 구현 내용은 GitHub 리포지토리의 README.md를 참조하십시오. 개요 애플리케이션은 사용자가 업로드한 데이터와 R 내장 데이터셋 모두에서 산점도, 막대그래프, 박스플롯 등 커스터마이즈 가능한 플롯을 만들 수 있도록 지원합니다. 광범위한 사용자 지정 옵션과 내보내기 기능을 제공하며, 모든 소스 코드는 https://github.com/fortune9/interactive_plot에서 확인할 수 있습니다. 프로젝트 설정 프로젝트 구조를 생성합니다. interactive_plot/ ├── app.R ├── ui.R ├── server.R ├── www/ └── data/ 필수 패키지를 설치합니다. install.packages(c("shiny", "ggplot2", "tidyverse")) 메인 앱 파일 (app.R)을 만듭니다. library(shiny) library(ggplot2) library(tidyverse) source("ui.R") source("server.R") shinyApp(ui = ui, server = server) 배포 1. 배포 준비 rsconnect 패키지를 설치합니다. install.packages("rsconnect") shinyapps.io에 계정을 만들고, 대시보드 → 계정 → 토큰에서 토큰을 확인합니다. R에서 인증 정보를 설정합니다. rsconnect::setAccountInfo( name='your-account-name', token='your-token', secret='your-secret' ) 2. GitHub Actions를 이용한 배포 GitHub Secrets에 다음 변수를 추가합니다: SHINYAPPS_USER, SHINYAPPS_TOKEN, SHINYAPPS_SECRET. GitHub Actions 워크플로 파일 (.github/workflows/deploy.yml)을 생성합니다. name: Deploy to shinyapps.io on: push: branches: - main jobs: deploy: runs-on: ubuntu-latest steps: - uses: actions/checkout@v2 - uses: r-lib/actions/setup-r@v2 - name: Deploy to shinyapps.io run: | Rscript -e 'install.packages(c("shiny", "rsconnect"))' Rscript -e 'rsconnect::deployApp()' env: SHINYAPPS_USER: ${{ secrets.SHINYAPPS_USER }} SHINYAPPS_TOKEN: ${{ secrets.SHINYAPPS_TOKEN }} SHINYAPPS_SECRET: ${{ secrets.SHINYAPPS_SECRET }} 개발 팁 로컬 테스트: shiny::runApp()을 사용해 앱을 실행합니다. 다양한 브라우저와 화면 크기에서 테스트합니다. 배포 전 모든 기능을 검증합니다. 배포 체크리스트 필수 패키지가 배포 워크플로에 모두 명시되어 있는지 확인합니다. rsconnect를 사용해 로컬에서 배포 테스트를 수행합니다. GitHub Actions 로그를 모니터링하며 배포 문제를 해결합니다. 유지보수 shinyapps.io 토큰을 안전하게 보관합니다. 패키지 버전을 주기적으로 업데이트합니다. shinyapps.io 대시보드에서 앱 사용량을 모니터링합니다. 결론 이 가이드는 Shiny 앱의 필수 설정 및 배포 단계를 다룹니다. 구현 세부 사항 및 기능은 https://github.com/fortune9/interactive_plot에 있는 소스 코드와 문서를 참조하십시오. 질문이나 개선 사항이 있을 경우, GitHub 리포지토리에 이슈를 남겨 주십시오. 실제 코드는 대부분 GitHub Copilot을 이용해 작성하였으며, file development plan.md를 입력으로 사용했습니다. 아주 멋진 경험이었고 😄!
원문 URL
전체 글은 원문 페이지에서 이어서 읽을 수 있습니다.
원문에서 전체 글 읽기
작성자
R-Blogger
출처
R-Blogger
플랫폼
R-Blogger
분류
블로그·해설
언어
한국어
발행일
2025-10-04