Comece agoraComece grátis

Criando algumas funções auxiliares

Há muitos elementos que podem ser adicionados a um shinydashboard. Para permitir interações entre as entradas do usuário e as saídas do dashboard, você precisa definir essas interações dentro das funções render que ficam no servidor.

O código pode ficar confuso rapidamente se houver muitas interações e muitas saídas. Uma forma de contornar esse problema é criar suas próprias funções auxiliares fora do ambiente do shinydashboard.

A seguir, você vai construir duas funções auxiliares:

  1. num_listings(): Retorna o número de anúncios com base nos dados filtrados dentro de um intervalo de price.
  2. make_plots(): Cria boxplots ou violin plots conforme a seleção do usuário e com base nos dados filtrados dentro de um intervalo de price.

listings já está carregado, e sf, tidyverse e leaflet foram importados.

Este exercicio faz parte do curso

Construindo dashboards com shinydashboard

Ver curso

Instruções do exercicio

  • Filtre listings para que fique restrito entre os limites esquerdo e direito do argumento range, que é um espaço reservado para uma entrada da shinyApp.
  • Defina as condições if-else corretas para que boxplots sejam plotados quando choice corresponder a "Box plots", e violin plots quando for "Violin plots".

exercicio interativo prático

Tente este exercicio completando este código de exemplo.

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()
}}
Editar e Executar Código