1

I am trying to visualize a network that is time dependent. Assuming time is running on the x axis, I'd like to follow the intuitions that connected nodes appear close to one another (have a similar y-score) and nodes with lots of edges appear closer to the center of the visualization, while those with fewer appear towards the upper and lower bounds. I'd like nodes not to overlap and to avoid having edges cross nodes. The y-space is meaningless for my purposes, other than to organize the nodes to achieve the above outcomes. The nodes themselves take place in time - i.e. they are not points.

Here is a simple mock-up of what I'd like to achieve (each rectangle is a process):enter image description here

Having looked around I can't seem to find anything. I am trying build my own solution in ggplot, creating rounds of connections (first round has no connection to them, second round has connections from the first round, third round has connections from the second round etc.). The y-score for the first round is based on number of outward connections, with y-values for subsequent rounds being the mean of all prior round y-scores from which there are connections. I'll then adjust y-scores to address any processes from showing as overlapping.

This seems like it should be possible, but its proving challenging. As I write more and more code, I thought I'd ask if someone had already built a solution for this.

MorrisseyJ
  • 1,191
  • 12
  • 19

0 Answers0