{"id":23157,"date":"2025-01-20T09:31:17","date_gmt":"2025-01-20T09:31:17","guid":{"rendered":"https:\/\/socialmedialab.ca\/web\/?p=23157"},"modified":"2025-02-06T21:31:37","modified_gmt":"2025-02-06T21:31:37","slug":"graphoptima-graph-layout-optimization-open-access-framework-visualizing-large-networks","status":"publish","type":"post","link":"https:\/\/socialmedialab.ca\/web\/2025\/01\/20\/graphoptima-graph-layout-optimization-open-access-framework-visualizing-large-networks\/","title":{"rendered":"[New Paper + Source Code] GraphOptima: A graph layout optimization framework for visualizing large networks"},"content":{"rendered":"\n<p class=\"wp-block-paragraph\">We are excited to announce the publication of a new paper titled <em>\u201c<\/em><a href=\"https:\/\/www.sciencedirect.com\/science\/article\/pii\/S2352711025000019\"><em><strong>GraphOptima: A graph layout optimization framework for visualizing large networks<\/strong><\/em><\/a>\u201d in <em>Software X<\/em> by Anatoliy Gruzd (Toronto Metropolitan University), Jingwei Zhang (University of Toronto), and Philip Mai (Toronto Metropolitan University).<\/p>\n\n\n\n<div class=\"wp-block-media-text is-stacked-on-mobile\" style=\"grid-template-columns:40% auto\"><figure class=\"wp-block-media-text__media\"><img decoding=\"async\" width=\"1280\" height=\"1280\" src=\"https:\/\/socialmedialab.ca\/web\/wp-content\/uploads\/2022\/09\/Figure1-1280x1280.jpg\" alt=\"\" class=\"wp-image-20402 size-full\" srcset=\"https:\/\/socialmedialab.ca\/web\/wp-content\/uploads\/2022\/09\/Figure1-1280x1280.jpg 1280w, https:\/\/socialmedialab.ca\/web\/wp-content\/uploads\/2022\/09\/Figure1-150x150.jpg 150w, https:\/\/socialmedialab.ca\/web\/wp-content\/uploads\/2022\/09\/Figure1-300x300.jpg 300w, https:\/\/socialmedialab.ca\/web\/wp-content\/uploads\/2022\/09\/Figure1-768x768.jpg 768w, https:\/\/socialmedialab.ca\/web\/wp-content\/uploads\/2022\/09\/Figure1-1024x1024.jpg 1024w, https:\/\/socialmedialab.ca\/web\/wp-content\/uploads\/2022\/09\/Figure1-696x696.jpg 696w, https:\/\/socialmedialab.ca\/web\/wp-content\/uploads\/2022\/09\/Figure1-1068x1068.jpg 1068w, https:\/\/socialmedialab.ca\/web\/wp-content\/uploads\/2022\/09\/Figure1-420x420.jpg 420w\" sizes=\"(max-width: 1280px) 100vw, 1280px\" \/><\/figure><div class=\"wp-block-media-text__content\">\n<p class=\"wp-block-paragraph\">Graphs are crucial in visualizing online and offline networks, their participants and interactions. These visual representations have become indispensable tools for studying various issues, including the propagation of misinformation, botnet activities, algorithmic filtering, and the spread of disease. Researchers rely on these graphs to uncover underlying structures, formulate hypotheses, and communicate their findings to the public.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">However, creating visually appealing and informative network visualizations is no simple task, especially for large networks with millions of nodes and edges. It often requires researchers to manually experiment with multiple layout algorithms and fine-tune parameters to achieve the desired result. This process is time-consuming, particularly for large networks, where the computational complexity of rendering a graph can lead to significant delays between adjustments and results. These challenges can hinder iterative exploration and analysis.<\/p>\n<\/div><\/div>\n\n\n\n<p class=\"wp-block-paragraph\">To address these issues, this paper introduces <a href=\"https:\/\/github.com\/smlabto\/GraphOptima\"><strong>GraphOptima<\/strong><\/a>, an open-source framework designed to optimize graph layouts and improve readability metrics. GraphOptima automates key steps in the visualization process, including <strong>parameter selection<\/strong>, <strong>layout computation<\/strong>, and <strong>readability metric evaluation<\/strong>. Unlike conventional approaches that aim to provide a single \u201coptimal\u201d solution, GraphOptima generates a set of solutions by applying <strong>multi-objective optimization<\/strong>. This allows researchers to compare and evaluate different layouts based on multiple readability metrics, such as:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Crosslessness<\/strong>: Minimizing the number of edge crossings.<\/li>\n\n\n\n<li><strong>Normalized Edge Length Variance<\/strong>: Ensuring uniformity in edge lengths.<\/li>\n\n\n\n<li><strong>Minimum Angle<\/strong>: Maximizing the smallest angle between edges to enhance clarity.<\/li>\n<\/ul>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity is-style-dots\"\/>\n\n\n\n<p class=\"wp-block-paragraph\">For example, the figure below shows a scatter plot representing possible layout solutions for a Reply-To network from Reddit with 39,492 nodes and 232,717 edges. The network is derived from 359,289 posts shared in <em>r\/conspiracy<\/em> between August 10 and 31, 2020. Each dot represents a ForceAtlas2 layout with specific parameter values for the Scaling Factor, Gravity, and Max Number of Iterations. The X, Y, and Z coordinates correspond to the values of the three readability metrics used for optimization: <em>Crosslessness<\/em>, <em>Normalized Edge Length Variance<\/em>, and <em>Minimum Angle<\/em>.<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-large\"><img decoding=\"async\" width=\"1024\" height=\"559\" src=\"https:\/\/socialmedialab.ca\/web\/wp-content\/uploads\/2025\/01\/GraphOptima_Example2-1024x559.jpg\" alt=\"Objective Space of Layout Solutions for a Reply-To Reddit Network\" class=\"wp-image-23161\" srcset=\"https:\/\/socialmedialab.ca\/web\/wp-content\/uploads\/2025\/01\/GraphOptima_Example2-1024x559.jpg 1024w, https:\/\/socialmedialab.ca\/web\/wp-content\/uploads\/2025\/01\/GraphOptima_Example2-300x164.jpg 300w, https:\/\/socialmedialab.ca\/web\/wp-content\/uploads\/2025\/01\/GraphOptima_Example2-768x419.jpg 768w, https:\/\/socialmedialab.ca\/web\/wp-content\/uploads\/2025\/01\/GraphOptima_Example2-1536x838.jpg 1536w, https:\/\/socialmedialab.ca\/web\/wp-content\/uploads\/2025\/01\/GraphOptima_Example2-2048x1117.jpg 2048w, https:\/\/socialmedialab.ca\/web\/wp-content\/uploads\/2025\/01\/GraphOptima_Example2-696x380.jpg 696w, https:\/\/socialmedialab.ca\/web\/wp-content\/uploads\/2025\/01\/GraphOptima_Example2-1068x583.jpg 1068w, https:\/\/socialmedialab.ca\/web\/wp-content\/uploads\/2025\/01\/GraphOptima_Example2-770x420.jpg 770w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n<\/div>\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Layout A<\/strong> maintains uniform edge lengths throughout the graph, resulting in more edge crossings and smaller minimum angles between edges. <\/li>\n\n\n\n<li><strong>Layout B <\/strong>keeps angles between edges as orthogonal as possible. <\/li>\n\n\n\n<li><strong>Layout C <\/strong>minimizes edge crossings, producing even fewer overlapping edges than in Layout B. <strong>While this optimization leads to a more uneven edge length distribution, this layout may be more desirable for researchers interested in examining hubs, rather than other aspects of a network.<\/strong><\/li>\n<\/ul>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity is-style-dots\"\/>\n\n\n\n<p class=\"wp-block-paragraph\">If you would like to learn more about this new open-source framework and how it can help you visualize large networks, check out the full paper<a href=\"https:\/\/www.sciencedirect.com\/science\/article\/pii\/S2352711025000019\"> here<\/a>. As for the source code and documentation for GraphOptima, they are available on <a href=\"https:\/\/github.com\/smlabto\/GraphOptima\">GitHub<\/a>.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Citation:<\/strong><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Gruzd, A., Zhang, J., &amp; Mai, P. (2025). GraphOptima: A graph layout optimization framework for visualizing large networks.\u00a0<em>SoftwareX<\/em>,\u00a0<em>29<\/em>, 102034.<\/p>\n\n\n\n<div style=\"height:20px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<p class=\"wp-block-paragraph\"><\/p>\n","protected":false},"excerpt":{"rendered":"<p>We are excited to announce the publication of a new paper titled \u201cGraphOptima: A graph layout optimization framework for visualizing large networks\u201d in Software X by Anatoliy Gruzd (Toronto Metropolitan University), Jingwei Zhang (University of Toronto), and Philip Mai (Toronto Metropolitan University). Graphs are crucial in visualizing online and offline networks, their participants and interactions. [&hellip;]<\/p>\n","protected":false},"author":49,"featured_media":23161,"comment_status":"closed","ping_status":"closed","sticky":true,"template":"","format":"standard","meta":{"footnotes":""},"categories":[264],"tags":[607,657,656,506,233],"class_list":["post-23157","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-web-apps","tag-data-science","tag-hpc","tag-network-visualization","tag-sna-2","tag-social-network-analysis"],"_links":{"self":[{"href":"https:\/\/socialmedialab.ca\/web\/wp-json\/wp\/v2\/posts\/23157","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/socialmedialab.ca\/web\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/socialmedialab.ca\/web\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/socialmedialab.ca\/web\/wp-json\/wp\/v2\/users\/49"}],"replies":[{"embeddable":true,"href":"https:\/\/socialmedialab.ca\/web\/wp-json\/wp\/v2\/comments?post=23157"}],"version-history":[{"count":11,"href":"https:\/\/socialmedialab.ca\/web\/wp-json\/wp\/v2\/posts\/23157\/revisions"}],"predecessor-version":[{"id":23186,"href":"https:\/\/socialmedialab.ca\/web\/wp-json\/wp\/v2\/posts\/23157\/revisions\/23186"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/socialmedialab.ca\/web\/wp-json\/wp\/v2\/media\/23161"}],"wp:attachment":[{"href":"https:\/\/socialmedialab.ca\/web\/wp-json\/wp\/v2\/media?parent=23157"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/socialmedialab.ca\/web\/wp-json\/wp\/v2\/categories?post=23157"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/socialmedialab.ca\/web\/wp-json\/wp\/v2\/tags?post=23157"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}