1 대쉬보드 1 2

A 12 Step Program to Quick Emailing Plots & Csvs

  1. Basic Layout
  2. Printing Tables, Descriptive Statistics, Model Summaries
  3. Interactive Datasets
    • DT
  4. Interactive Plots
    • highcharter
    • 지도(leaflet), 시계열(dygraphs), ggplots(plotly)
  5. Exporting
    • Datasets with DT
    • Highcharter Plots
  6. CSS basics
  7. Branding: Logos, Fonts, Colors
  8. Header/Footer
  9. Hosting
  10. Automate-ish (Render + System())
  11. Replicate (Render with arguments)
  12. Automate or App it (cron, shiny runtime)

2 대쉬보드 호스팅

GitHub 저장소에 개발된 대쉬보드를 웹호스팅도 가능하다. 이를 위해서 크게 두가지 작업이 별도로 필요하다.

먼저 rmarkdown::render_site() 명령어로 개발된 flexdashboard 대쉬보드를 docs/ 폴더로 배포시킨다.

두번째로 docs/ 폴더에 담긴 대쉬보드 결과물을 GitHub gh-pages에서 호스팅을 위한 환경 설정을 아래와 같이 수행한다.

  1. 기존 Github 저장소에 gh-pages 브랜치를 추가시켜 활성화 시킨다.
  2. Sourcemaster branch/docs 폴더를 지정한다.

마지막으로 두번째와 순서가 바뀌어도 상관이 없다. 즉, _site.yml을 작성하여 추가시킨다.

대쉬보드 GitHub 호스팅

대쉬보드 GitHub 호스팅

3 대쉬보드 제작

flexdashboard 팩키지를 사용해서 대쉬보드 사용법에 맞추어 코드를 작성하고 R 시각화 산출물을 배치시킨다. .Rmd 소스코드를 RStudio IDE를 사용할 경우 Ctrl + Shift + B 단축키를 사용하여 컴파일 시키거나 다음 명령어를 R 콘솔창에 타이핑하여 완성한다. 한글이 들어간 경우 필히 encoding = 'UTF-8'을 인자로 넣어준다.

제작된 대쉬보드를 로컬 웹서버를 띄워서 웹브라우저로 확인하고자 하는 경우 다음 명령어로 대쉬보드 웹서버를 띄운다. 그리고 나서 웹브라우저에서 localhost:8201 포트를 사용해서 접근하면 대쉬보드 결과물을 확인할 수 있다.

4 GitHub 배포

4.1 gh-pages 생성

gh-pages를 활용하여 정정 웹사이트인 경우 별다른 고민없이 배포할 수 있다. 이를 위해서 GitHub 설정을 해줘야만 한다.

gh-pages 활성화

gh-pages 활성화

4.2 GitHub Pages Source

대쉬보드 GitHub 저장소 상단에 보면 Settings을 클릭하고 나서, 쭉 아래로 내려가면 GitHub Pages 메뉴가 보이고 Source를 선택해서 master branch /docs folder를 지정한다. 즉, 대쉬보드 호스팅을 위해서 대쉬보드 제작 소스코드 .Rmdrmarkdown::render_site(encoding = 'UTF-8')으로 생성된 docs/ 폴더 산출물을 이용하여 gh-pages에 올려서 서비스하겠다는 얘기가 되겠다.

Source 지정

Source 지정

4.3 코로나19 대쉬보드

코로나19 대쉬보드 웹사이트에 gh-pages 규칙에 맞춰 생성된 URL로 접근하면 호스팅 작업이 마무리 된다.