Primary Menu

Education, Events, Publication

Funding & Recognition

Visualization tools for network science: Building beautiful graphs with netplot

Summer 2023

Project Background

The field of complex systems modeling, and in particular, Network Science, is a thriving area of research. With the recent advances in biomedical sciences, computer science, and information sciences, network-type data has become highly common across disciplines. Because of this reason, tools for processing, exploring, and analyzing networked data are critical for the daily work of the scientific community, with data visualization tools among the most critical areas. In this project, we will extend and improve the software netplot, an R package for visualizing complex networks. This package, available on the Comprehensive R Archive Network [CRAN] since June 2021, has over 5,000 downloads. The project will be centered on three goals: improving processing speed, incorporating metadata for annotation, and exporting to web technologies. The first goal involves designing and implementing faster algorithms for processing network data and graphical object design. The latter will allow for analyzing larger networks. Considering network data is commonly annotated at the node and tie (connection) levels, the second task will involve designing and implementing ways to incorporate legends and annotations into the visualizations, in particular, adding metadata, e.g., legends, to improve interpretation. Finally, the third goal involves using existing tools to export the generated visuals to web technologies, particularly SVG and HTML. Finally, within the context of the reproducibility crisis in sciences, having reliable ways to design network visualizations programmatically is of utmost importance; thus, the potential impact of this project cannot be understated.

Student Role

My collaborator (a.k.a. student) will be involved in three tasks: programming in the R language, performing literature reviews, and scientific writing. The first task involves implementing functions and corresponding unit tests to check whether the function behaves as expected. Functional programming also involves documenting the functions and creating examples so other users can see how it works. The literature review will be on two different levels. My collaborator will be expected to search papers on network and data visualization, this is, on layout algorithms (how to organize nodes in a network,) the science of colors (e.g., making figures considering color blindness,) and ways to reduce large data to accelerate processing. The literature review will also involve searching other network visualization tools so we can have them as benchmarks. Finally, the scientific writing will be reflected across tasks. Moreover, my co-author (a.k.a. collaborator) will be leading the preparation of a short software paper to be submitted to the Journal of Open Source Software. This high-impact journal has become a hub for the latest scientific advancements in software tools. The mentee is also expected to prepare a report, in the form of a scientific poster or a talk, with the results and progress made during the program, with the opportunity to present it at an international scientific conference (see mentoring philosophy and activities).

Student Learning Outcomes and Benefits

My co-author will be directly benefited as a leading author of a scientific paper and co-author of a highly popular scientific software tool. Regarding the learning experience, my collaborator will learn about professional software development, online collaborator tools (see activities,) the scientific production process, and network science and data visualization. We will be actively using the R programming language. Knowing R is a highly valued skill in both academia and industry. Furthermore, package development is an important plus to programming skills. We will also be using GitHub for deploying the project. This online collaboration tool for software projects is also highly valued in the academic and non-academic markets. Furthermore, using GitHub, they will be exposed to continuous integration applications, process automatization, and containerization technologies (Docker), all very relevant technical knowledge. Throughout the process, my collaborator will be actively exposed and involved in scientific research using literature review and manuscript creation. Although the final product will be a scientific paper, writing skills are also crucial in the private sector. Finally, as I mentioned earlier, network science is a booming discipline with applications across all knowledge areas. The data we will be dealing with includes protein-to-protein networks, social networks, online social networks (e.g., Twitter,) and disease-spreading networks, providing my collaborator with a differentiating and exciting way to see the world.

George Vega Yon

Research Assistant Professor
Internal Medicine

As a mentor, I work hard to build a safe and inclusive environment where those I work with feel empowered to learn and express themselves without prejudice. I provide many opportunities for my mentees to learn new skills, ask for guidance, and participate in the creation process. When needed, I provide one-on-one lectures to complement my collaborators' knowledge and skillset (regardless they are students or not!.) I actively give career guidance and, if the opportunity arises, chances to build networks across industry and academia. During the first few weeks, my collaborator and I will work actively together while we set up the research and software development plan. As the project progresses, my co-author should expect to acquire more independence in developing the software programming activities so that they can test their newly acquired knowledge. I would continuously review their work with weekly progress evaluations. Communication will be frequent through email, video conference, GitHub, and, if possible, in person. The mentee will have the opportunity (and funding) to participate in an international scientific conference to showcase their work as a poster or a presentation. Three potential venues during the mentorship program are the International Network of Social Networks conference (INSNA's Sunbelt,) the Networks conference (joint between INSNA and the Network Science Society,) and the UseR! Conference.