開始使用免費開始

應用程式 2:最受歡迎的嬰兒名字

建立 Shiny 應用程式是一個模組化的流程。你先從 UI 開始,接著撰寫伺服端程式碼,根據使用者輸入來建立輸出。你越有意識地練習這個步驟,之後要打造好的應用程式就會越容易。

現在你要建立一個 Shiny 應用程式,讓使用者可以選擇性別與年份,並以長條圖顯示該年份中最受歡迎的前 10 個名字,長條代表按名字(name)計算的出生比例(prop)。你完成的應用程式在視覺上應該與下方螢幕截圖相似。

一個應用程式:左側側邊欄有名字選擇器與年份滑桿,右側主面板顯示圖表

我們已提供 get_top_names() 函式,可用來擷取給定 yearsex 的前 10 名名字。例如,你可以用 get_top_names(2000, "M") 取得 2000 年的男性前 10 名。

我們也已載入 ggplot2 套件。若有一個資料框 d,其中包含欄位 xy,你可以用下列方式建立長條圖:

ggplot(d, aes(x = x, y = y)) +
  geom_col()

本練習屬於課程

使用 R 的 Shiny 建立網頁應用程式

檢視課程

練習說明

  • 在應用程式頂端加入標題,並加入側邊欄版面配置。
  • 在側邊欄加入一個輸入,讓使用者選擇性別(MF)。
  • 在側邊欄加入一個滑桿,讓使用者選擇年份(1880 到 2017)。
  • 在主面板加入一個圖形輸出。
  • 在伺服端加入一個輸出,根據 yearsex 繪製長條圖。 注意,你可以在渲染函式的大括號內加入多行程式碼:render***({___})

動手互動練習

試著完成這個範例程式碼,體驗一下這個練習。

ui <- fluidPage(
  
)

server <- function(input, output, session) {
  
}

shinyApp(ui = ui, server = server)
編輯並執行程式碼