Easylayout: pacote R integrado à IDE para dispor grafos usando simulações de força

dc.contributor.advisorDalmolin, Rodrigo Juliani Siqueirapt_BR
dc.contributor.advisorIDhttps://orcid.org/0000-0002-1688-6155
dc.contributor.advisorLatteshttp://lattes.cnpq.br/4065178015615979
dc.contributor.authorImparato, Danilo Oliveirapt_BR
dc.contributor.authorIDhttps://orcid.org/0000-0001-6979-4951
dc.contributor.authorLatteshttp://lattes.cnpq.br/8680042030819838
dc.contributor.referees1Gysi, Deisy Morsellipt_BR
dc.contributor.referees2Costa, César Renno
dc.contributor.referees3Araújo, Gilderlanio Santana de
dc.date.accessioned2025-05-27T23:48:21Z
dc.date.available2025-05-27T23:48:21Z
dc.date.issued2024-10-11
dc.description.abstractNetwork visualization is a critical step for effective communication in various fields of knowledge, especially in life sciences. Currently, a gap separates network manipulation from network visualization in programming environments. Users constantly face the inconvenience of exporting network data to be laid out in external software, like Cytoscape and Gephi. We propose easylayout, a package that seamlessly bridges manipulation and visualization through the integration with the user’s IDE (e.g., RStudio, VSCode, Jupyter Notebook). It is not meant as another visualization library, but rather aims to standardize and interconnect existing libraries. The easylayout package receives an igraph object and serializes it into a web application integrated with the RStudio interface through a Shiny server. This web application provides an environment to lay out the network by simulating attraction and repulsion forces. There is an editing mode that allows users to move and rotate vertices. The development of easylayout aims for computational performance, so that even low-end devices are able to work with relatively large networks. One way this is done is by curating high-performing libraries like VivaGraphJS and d3-force. Once the user finishes tinkering the layout, it is sent back to the R session to be plotted through popular libraries like ggplot2 or even the base package itself. The current implementation focuses on the R ecosystem, but using web technologies makes it easily portable to similar environments, like Jupyter Notebooks. We expect this tool to reduce the time spent tweaking network layouts, allowing researches to generate more compelling figures. It is freely available under an MIT license on GitHub (https://github.com/dalmolingroup/easylayout). The package is implemented in R/Shiny and JavaScript/Svelte.
dc.description.resumoA visualização de redes é uma etapa crítica para a comunicação eficaz em várias áreas do conhecimento, especialmente nas ciências da vida. Atualmente, uma lacuna separa a manipulação da visualização de redes em ambientes de programação. Usuários constantemente enfrentam a inconveniência de exportar dados de rede para serem manipulados em softwares externos, como Cytoscape e Gephi. Propomos o easylayout, um pacote que une amigavelmente manipulação e visualização ao integrar-se à IDE do usuário (por exemplo, RStudio, VSCode e Jupyter Notebook). Não se trata de uma nova biblioteca para visualização de grafos, mas sim uma tentativa de padronização e intercomunicação de bibliotecas existentes. O pacote easylayout recebe um objeto igraph e o serializa para dentro de uma aplicação web integrada com a interface do RStudio por meio de um servidor Shiny. Esta aplicação web oferece um ambiente para dispor a rede simulando forças de atração e repulsão. Um modo de edição permite que os usuários movam e rotacionem vértices. O desenvolvimento do pacote visa desempenho computacional, de modo que dispositivos de baixo custo sejam capazes de trabalhar com redes relativamente grandes. Para atingir esse objetivo, utilizamos bibliotecas performáticas, como VivaGraphJS e d3-force e renderização em WebGL. Uma vez ajustado, o layout é enviado de volta ao ambiente de programação, podendo ser visualizado com bibliotecas populares como ggplot2 e a própria biblioteca base. A implementação atual foca em refinar a experiência no ecossistema R, mas o uso de tecnologias web torna-o facilmente portável para ambientes similares, como Jupyter Notebooks. Esperamos que esta ferramenta reduza o tempo gasto visualizando redes e também permita que pesquisadores gerem figuras melhores. Está disponível gratuitamente sob licença MIT no GitHub (https://github.com/dalmolingroup/easylayout). O pacote é implementado em R/Shiny e JavaScript/Svelte.
dc.description.sponsorshipCoordenação de Aperfeiçoamento de Pessoal de Nível Superior - CAPES
dc.identifier.citationIMPARATO, Danilo Oliveira. Easylayout: pacote R integrado à IDE para dispor grafos usando simulações de força. Orientador: Dr. Rodrigo Juliani Siqueira Dalmolin. 2024. 34f. Dissertação (Mestrado em Bioinformática) - Instituto Metrópole Digital, Universidade Federal do Rio Grande do Norte, Natal, 2024.
dc.identifier.urihttps://repositorio.ufrn.br/handle/123456789/63694
dc.language.isopt_BR
dc.publisherUniversidade Federal do Rio Grande do Norte
dc.publisher.countryBRpt_BR
dc.publisher.initialsUFRNpt_BR
dc.publisher.programPROGRAMA DE PÓS-GRADUAÇÃO EM BIOINFORMÁTICApt_BR
dc.rightsAcesso Abertopt_BR
dc.subjectRedes
dc.subjectGrafo
dc.subjectR
dc.subjectRStudio
dc.subjectJupyter
dc.subjectJavaScript
dc.subjectVisualização
dc.subject.cnpqCIENCIAS BIOLOGICAS
dc.titleEasylayout: pacote R integrado à IDE para dispor grafos usando simulações de força
dc.typemasterThesispt_BR

Arquivos

Pacote Original

Agora exibindo 1 - 1 de 1
Nenhuma Miniatura disponível
Nome:
EasylayoutpacoteR_Imparato_2024.pdf
Tamanho:
4.04 MB
Formato:
Adobe Portable Document Format
Nenhuma Miniatura disponível
Baixar

Licença do Pacote

Agora exibindo 1 - 1 de 1
Nenhuma Miniatura disponível
Nome:
license.txt
Tamanho:
1.53 KB
Formato:
Item-specific license agreed upon to submission
Nenhuma Miniatura disponível
Baixar