Cytoscape is a graph manipulation and rendering library. We use the javascript version to demonstrate rendering that hints at the possible integrations with wiki.
Here we duplicate an example from the the Cytoscape documentation. page
{"nodes":[ {"data":{"id":"n0"}}, {"data":{"id":"n1"}}, {"data":{"id":"n2"}}, {"data":{"id":"n3"}}, {"data":{"id":"n4"}}, {"data":{"id":"n5"}}, {"data":{"id":"n6"}}, {"data":{"id":"n7"}}, {"data":{"id":"n8"}}, {"data":{"id":"n9"}}, {"data":{"id":"n10"}}, {"data":{"id":"n11"}}, {"data":{"id":"n12"}}, {"data":{"id":"n13"}}, {"data":{"id":"n14"}}, {"data":{"id":"n15"}}, {"data":{"id":"n16"}}], "edges":[ {"data":{"source":"n0","target":"n1"}}, {"data":{"source":"n1","target":"n2"}}, {"data":{"source":"n1","target":"n3"}}, {"data":{"source":"n4","target":"n5"}}, {"data":{"source":"n4","target":"n6"}}, {"data":{"source":"n6","target":"n7"}}, {"data":{"source":"n6","target":"n8"}}, {"data":{"source":"n8","target":"n9"}}, {"data":{"source":"n8","target":"n10"}}, {"data":{"source":"n11","target":"n12"}}, {"data":{"source":"n12","target":"n13"}}, {"data":{"source":"n13","target":"n14"}}, {"data":{"source":"n13","target":"n15"}}]}
# Markup
We use JSON formatted elements as input to the graph rendering engine. cytoscape
Say any whitespace to coax the plugin to look elsewhere for graph data. (No markup means delete.) We find graph-source and merge by the same mechanism as Transport. See About Transport Plugin