MulaiMulai sekarang secara gratis

Jelajahi jenis masakan: bahan teratas

Makanan memiliki daya tarik universal, dan beragamnya hidangan yang dapat diracik dari begitu banyak bahan menghasilkan variasi yang nyaris tak terbatas! Pada latihan ini, Anda akan menggunakan himpunan data bernama recipes yang memuat resep, jenis masakan yang menaunginya, serta bahan yang digunakan, untuk membangun aplikasi Shiny yang memungkinkan pengguna menjelajahi bahan yang paling sering digunakan berdasarkan jenis masakan.

Aplikasi akhir Anda seharusnya menyerupai gambar pada tangkapan layar ini.

An app displaying an interactive table of top ingredients by chosen cuisine

Kami sudah memuat paket shiny dan dplyr, serta himpunan data recipes. Selain itu, berikut adalah potongan kode praktis yang mendapatkan 10 bahan teratas yang digunakan pada masakan Yunani. Ini akan berguna untuk membuat tabel data interaktif di aplikasi berdasarkan jenis masakan dan jumlah bahan yang dipilih pengguna.

recipes %>% 
  filter(cuisine == 'greek') %>% 
  count(ingredient, name = 'nb_recipes') %>% 
  arrange(desc(nb_recipes)) %>% 
  head(10)

Latihan ini adalah bagian dari kursus

Membangun Aplikasi Web dengan Shiny di R

Lihat Kursus

Petunjuk latihan

  • UI:
    • Tambahkan sebuah input di bilah sisi bernama cuisine agar pengguna dapat memilih jenis masakan dari seluruh himpunan jenis masakan yang tersedia dalam himpunan data recipes.
    • Tambahkan sebuah slider input bernama nb_ingredients di bilah sisi agar pengguna dapat memilih jumlah bahan yang akan ditampilkan.
    • Tambahkan keluaran tabel data interaktif di panel utama bernama dt_top_ingredients.
  • Server:
    • Saring recipes berdasarkan jenis masakan yang dipilih dan jumlah bahan teratas yang akan ditampilkan.
    • Render data yang telah disaring sebagai tabel data interaktif.
    • Tetapkan ke objek output bernama dt_top_ingredients.

Latihan interaktif praktis

Cobalah latihan ini dengan menyelesaikan kode contoh berikut.

ui <- fluidPage(
  titlePanel('Explore Cuisines'),
  sidebarLayout(
    sidebarPanel(
      # CODE BELOW: Add an input named "cuisine" to select a cuisine

      # CODE BELOW: Add an input named "nb_ingredients" to select # of ingredients

    ),
    mainPanel(
      # CODE BELOW: Add a DT output named "dt_top_ingredients"

    )
  )
)

server <- function(input, output, session) {
  # CODE BELOW: Render the top ingredients in a chosen cuisine as 
  # an interactive data table and assign it to output object `dt_top_ingredients`







}

shinyApp(ui, server)
Edit dan Jalankan Kode