O que você usa para gerar um painel no R?

17

Preciso gerar relatórios periódicos (diários, mensais) do painel de análise da web. Eles serão estáticos e não requerem interação, então imagine um arquivo PDF como saída de destino. Os relatórios mesclam tabelas e gráficos (principalmente gráficos sparkline e bullet criados com o ggplot2). Pense nos painéis do estilo Stephen Few / Perceptual Edge, como:painel de amostra

mas aplicado à análise da web.

Alguma sugestão sobre quais pacotes usar para criar esses relatórios do painel?

Minha primeira intuição é usar markdown R e knitr, mas talvez você tenha encontrado uma solução melhor. Não consigo encontrar exemplos ricos de painéis gerados a partir de R.

shadowtalker
fonte
Sugiro substituir untaggedtag com r, dashboards, reportsou similar.
Aleksandr Blekh
Você criou este painel como descrito acima? Eu adoraria dar uma olhada no código!
Kare

Respostas:

15

Eu acho que Shinyé um exagero nessa situação e não corresponde ao seu requisito de que os relatórios do painel sejam estáticos . Acho que o uso do termo "painel" é um pouco confuso, pois algumas pessoas podem considerar que ele tem mais ênfase na interatividade ( painéis em tempo real ) do que no layout das informações , como é meu entendimento (confirmado pelo " estático ").

Minha recomendação para você é usar o R Markdown e o knitr , especialmente porque esses pacotes têm uma curva de aprendizado muito menor do que o Shiny . Além disso, recentemente deparei com um pacote R, que, na minha opinião, atende idealmente à sua exigência de incorporar pequenos gráficos / plotagens em um relatório, conforme apresentado na sua foto acima. Este pacote gera tabelas gráficas estáticas ou dinâmicas e é chamado sparkTable ( http://cran.r-project.org/web/packages/sparkTable ). Sua vinheta está disponível aqui (não há link para ele na página inicial do pacote): http://publik.tuwien.ac.at/files/PubDat_228663.pdf . Se você precisar de alguma interatividade ,sparkTablefornece alguns através de sua interface simples para Shiny.

Aleksandr Blekh
fonte
Eu não sabia sobre o sparkTable, parece uma ótima ferramenta para o trabalho.
shadowtalker
@ssdecontrol: Até recentemente, eu também não sabia disso. Parece uma ótima ferramenta, com certeza. Estou ansioso para experimentá-lo no meu projeto, se tiver necessidade e oportunidade.
Aleksandr Blekh
9

Shiny é uma estrutura para gerar aplicativos baseados em HTML que executam código R dinamicamente. Os aplicativos brilhantes podem ser independentes ou incorporados aos documentos do Markdown knitr, e o desenvolvimento do Shiny é totalmente integrado ao RStudio. Existe até um serviço gratuito chamado shinyapps.io para hospedar aplicativos Shiny, o shinypacote possui funções para implantar aplicativos Shiny diretamente do R, e o RStudio possui uma interface GUI para chamar essas funções. Há muito mais informações na seção Tutorial do site.

Como essencialmente "compila" tudo para JavaScript e HTML, você pode usar CSS para alterar livremente a formatação e o layout, embora o Shiny tenha uma funcionalidade decente de wrapper para isso. Mas acontece que o esquema de cores padrão é semelhante ao esquema na captura de tela que você postou.

edit: Acabei de perceber que você não precisa que eles sejam dinâmicos. O Shiny ainda cria páginas da Web muito bonitas prontas para uso, com muitas opções para reorganizar elementos. Também há funcionalidade para baixar gráficos, para que você possa gerar seu painel todo mês apenas atualizando seus arquivos de dados no aplicativo e salvando a imagem resultante em PDF.

shadowtalker
fonte
2

Achei a opção Flex Dashboard muito legal, interativa e fácil de usar. Experimente, talvez você também.

Enquanto isso, você também pode tentar isso.

Espero que ajude! (Atualize-me se você conseguir algo ainda melhor que isso.)

Abhishek Jaiswal
fonte
1

Eu tive que criar um painel baseado na web. Minha principal ferramenta de gráficos era d3js. Mas eu precisava usar o ggplot2 para gerar alguns gráficos. Através da extensão ggplot2 do d3js, eu poderia criar o mesmo. Se seus gráficos puderem ser gerados por meio de extensões existentes, a Web terá alternativas melhores. Posteriormente, você pode exportá-los para PDF para distribuição.

Vikram
fonte
1

Você pode experimentar o ShinyDashboard e deixar de fora quaisquer aspectos interativos. Na minha opinião, ainda é bom permitir que os usuários aumentem o zoom em gráficos ou pesquisem determinados valores em uma coluna. Brilhante permitirá que você faça isso.

Estéreo
fonte