Shiny
Algumas das principais características do Shiny, ambiente de desenvolvimento web em R, incluem:
- Interatividade: Shiny permite a criação de aplicativos web interativos, onde os usuários podem interagir com os gráficos e dados gerados em tempo real.
- Personalização: Os aplicativos desenvolvidos com o Shiny podem ser altamente personalizados, permitindo a criação de interfaces visualmente atraentes.
- Fácil criação: Shiny é fácil de usar e não requer conhecimento avançado de HTML, CSS ou JavaScript. A maioria das funções e widgets são fornecidos pelo pacote Shiny, tornando a criação de aplicativos web em R muito mais acessível.
- Live R: Shiny executa o código R em tempo real, permitindo que o usuário visualize graficamente o resultado das mudanças feitas no código.
- Flexibilidade: Shiny permite a integração de outras tecnologias web e programas R.
- Facilidade de compartilhamento: Os aplicativos podem ser compartilhados facilmente com outros usuários, permitindo o trabalho em equipe e a colaboração.
- Traz todo o poder do R para web (mais de 10 mil pacotes) para criar aplicações
- Totalmente Open Source
O que você precisa:
- Baixar e instalar o R "core";
- Baixar i instalar o RStudio;
- Rodar o script:
- install.packages(c("shiny","sets","e1071","forecast","ggplot2","arules","arulesViz",
"xts", "RColorBrewer","GA","shinythemes","RJSONIO", "PKI", "rstudioapi", "packrat", "rsconnect"), dependencies = T)
Como funciona:
- A aplicação deve estar em um arquivo app.R
- Dois arquivos: ui.R e server.R
Iniciar
Nome da aaplicação
Estrutura do arquivo
O Shiny tem varios elementos visuais de entrada e saída de dados
- titlePanel("Old Faithful Geyser Data"),
- plotOutput("Grafico")
- h1("Texto")
- h1(textOutput("id"))
- actionButton("id","Processar")
- fluidRow()
- column(numColunas,componente) - 12 colunas
- etc...
Galeria
Shiny Widgets Gallery
Funções relevantes
Componentes Shiny
O Servidor
- Execução de código R
- Interação com UI
- Eventos(botão)
O shiny é reativo. Uma vez que o objeto é atualizado, todas refêrencias são atualizadas.
Apesar de ser reativo, vamos inicialmente programar utilizando o evento onClick dos botões.
Servidor externo