BaşlayınÜcretsiz başlayın

Bazı yardımcı fonksiyonlar oluşturma

Bir shinydashboard'a eklenebilecek birçok öğe vardır. Kullanıcı girişleriyle pano çıktıları arasında etkileşim sağlamak için, bu etkileşimleri sunucuda yer alan render fonksiyonları içinde tanımlaman gerekir.

Eğer çok sayıda etkileşim ve çıktı varsa, kod çok hızlı bir şekilde hantallaşabilir. Bu sorunu aşmanın bir yolu, shinydashboard ortamının dışında kendi yardımcı fonksiyonlarını oluşturmaktır.

Aşağıda iki yardımcı fonksiyon yazacaksın:

  1. num_listings(): price aralığı içindeki filtrelenmiş verilere göre ilan sayısını döndürür.
  2. make_plots(): Kullanıcı seçimine göre kutu grafikleri (boxplot) veya keman grafikleri (violin plot) oluşturur ve bunu price aralığı içindeki filtrelenmiş verilere göre yapar.

listings yüklendi ve sf, tidyverse ile leaflet içe aktarıldı.

Bu egzersiz, kursun bir parçasıdır

shinydashboard ile Panolar Oluşturma

Kursa Göz Atın

Egzersiz talimatları

  • listings verisini, shinyApp girdisi için yer tutucu olan range argümanının sol ve sağ sınırları arasında kalacak şekilde filtrele.
  • Doğru if-else koşullarını ayarla: choice değeri "Box plots" ile eşleştiğinde kutu grafikleri, "Violin plots" olduğunda ise keman grafikleri çizilsin.

Uygulamalı etkileşimli egzersiz

Bu egzersizi bu örnek kodu tamamlayarak deneyin.

num_listings <- function(range){
  # Filter listings appropriately
  filter(listings, price >= ___, price <= ___) %>% nrow()
}
make_plots <- function(range, choice){
  filtered_listings <- filter(listings, price >= range[1], price <= range[2])
  # Set the correct if-else conditions
  if (choice == ___){
     filtered_listings %>%
      ggplot(aes(y = price, x = room_type)) + geom_boxplot() + theme_classic()
  }
  else if (___){
    filtered_listings %>%
      ggplot(aes(y = price, x = room_type)) + geom_violin() + theme_classic()
}}
Kodu Düzenle ve Çalıştır