-
-
Save renecnielsen/49dbbcae4019dd76d3b2 to your computer and use it in GitHub Desktop.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#modal { | |
position:fixed; | |
left:150px; | |
top:20px; | |
z-index:1; | |
background: white; | |
border: 1px black solid; | |
box-shadow: 10px 10px 5px #888888; | |
display: none; | |
} | |
#content { | |
max-height: 400px; | |
overflow: auto; | |
} | |
#modalClose { | |
position: absolute; | |
top: -0px; | |
right: -0px; | |
z-index: 1; | |
} | |
tr { | |
border: 1px gray solid; | |
} | |
td { | |
font-size: 10px; | |
} | |
td.data { | |
font-weight: 900; | |
} | |
.tick line { | |
shape-rendering: crispEdges; | |
stroke: #000; | |
} | |
line.minor { | |
stroke: #777; | |
stroke-dasharray: 2,2; | |
} | |
path.domain { | |
fill: none; | |
stroke: black; | |
} | |
.inactive, .tentative { | |
stroke: darkgray; | |
stroke-width: 4px; | |
stroke-dasharray: 5 5; | |
} | |
.tentative { | |
opacity: .5; | |
} | |
.active { | |
stroke: black; | |
stroke-width: 4px; | |
stroke-dasharray: 0; | |
} | |
circle { | |
fill: red; | |
} | |
rect { | |
fill: darkgray; | |
} | |
#controls { | |
position: fixed; | |
bottom: 50px; | |
left: 20px; | |
} | |
#brushDiv { | |
position: fixed; | |
bottom: 100px; | |
left: 20px; | |
right: 20px; | |
height:50px; | |
background: white; | |
opacity: .75; | |
} | |
.brush .extent { | |
fill-opacity: .90; | |
shape-rendering: crispEdges; | |
} | |
svg { | |
width: 100%; | |
height:100%; | |
} |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
gexfD3 = | |
function () { | |
var nodes = []; | |
var links = []; | |
var linksFile = ""; | |
var fileName = ""; | |
var xExtent = []; | |
var yExtent = []; | |
var nodeScale = [1,10]; | |
var layoutSize = [500,500]; | |
var sizeExtent = []; | |
var dAtt = ""; | |
var dynamicExtent = []; | |
var sizeScale, xScale, yScale, dynamicScale; | |
var gexfD3Brush = d3.svg.brush(); | |
var linkAttributes = []; | |
var nodeAttributes = []; | |
var nodeHash = {}; | |
this.graph = function(gexfParsed) { | |
if (!arguments.length) return true; | |
var gNodes = gexfParsed.nodes; | |
var gLinks = gexfParsed.edges; | |
nodes = []; | |
links = []; | |
nodeHash = {}; | |
//Create JSON nodes array | |
var x = 0; | |
gNodes.forEach(function(gNode) { | |
var newNode = {id: x, properties: {}}; | |
newNode.label = gNode.label || gNode.id; | |
newNode.rgbColor = gNode.viz.color || "rgb(122,122,122)"; | |
newNode.x = gNode.viz.position.x; | |
newNode.y = gNode.viz.position.y; | |
newNode.z = gNode.viz.position.z; | |
newNode.originalX = newNode.x; | |
newNode.originalY = newNode.y; | |
newNode.size = gNode.viz.size; | |
nodeHash[gNode.id] = newNode; | |
for (y in gNode.attributes) { | |
if (!(typeof(gNode.attributes[y]) === "undefined") && !(gNode.attributes[y].toString() == "NaN" )) { | |
newNode.properties[y] = gNode.attributes[y]; | |
} | |
} | |
nodes.push(newNode); | |
x++; | |
}) | |
//get node attributes based on attributes in the first node | |
//this won't work for assymetrical node attributes | |
nodeAttributes = d3.keys(nodes[0].properties); | |
//Create JSON links array | |
var x = 0; | |
while (x < gLinks.length) { | |
var newLink = {id: x, properties: {}}; | |
newLink.source = nodeHash[gLinks[x].source]; | |
newLink.target = nodeHash[gLinks[x].target]; | |
//process attributes | |
for (y in gLinks[x].attributes) { | |
newLink.properties[y] = gLinks[x].attributes[y]; | |
y++; | |
} | |
links.push(newLink) | |
x++; | |
} | |
linkAttributes = d3.keys(links[0].properties); | |
sizeExtent = d3.extent(nodes, function(d) {return parseFloat(d.size)}) | |
sizeScale = d3.scale.linear().domain(sizeExtent).range(nodeScale); | |
return this; | |
} | |
this.nodes = function(incNodes) { | |
if (!arguments.length) return nodes; | |
nodes = incNodes; | |
return this; | |
} | |
this.links = function(incLinks) { | |
if (!arguments.length) return links; | |
links = incLinks | |
return this; | |
} | |
this.linkAttributes = function(incAtts) { | |
if (!arguments.length) return linkAttributes; | |
linkAttributes = incAtts; | |
return this; | |
} | |
this.nodeAttributes = function(incAtts) { | |
if (!arguments.length) return nodeAttributes; | |
nodeAttributes = incAtts; | |
return this; | |
} | |
this.nodeScale = function(incScale) { | |
if (!arguments.length) return sizeScale; | |
nodeScale = incScale; | |
sizeScale = d3.scale.linear().domain(sizeExtent).range(nodeScale); | |
return this; | |
} | |
this.overwriteLinks = function(incLinks) { | |
if (!arguments.length) return nodes; | |
data = incLinks; | |
//OVERWRITE links for parallel links | |
links = []; | |
for (x in data) { | |
var newLink = {id: x, properties: {}}; | |
newLink.source = nodeHash[data[x].source]; | |
newLink.target = nodeHash[data[x].target]; | |
newLink.id = x; | |
newLink.properties.type = "base"; | |
newLink.properties.year = data[x].year; | |
//process attributes | |
if (newLink.source && newLink.target) { | |
links.push(newLink); | |
} | |
x++; | |
} | |
linkAttributes = d3.keys(links[0].properties); | |
return this; | |
} | |
this.size = function(incSize) { | |
if (!arguments.length) return layoutSize; | |
//Measure | |
layoutSize = incSize; | |
xExtent = d3.extent(nodes, function(d) {return parseFloat(d.x)}) | |
yExtent = d3.extent(nodes, function(d) {return parseFloat(d.y)}) | |
xScale = d3.scale.linear().domain(xExtent).range([0,layoutSize[0]]); | |
yScale = d3.scale.linear().domain(yExtent).range([layoutSize[1],0]); | |
return this; | |
} | |
this.dynamicAttribute = function(incAtt) { | |
if (!arguments.length) return dAtt; | |
dAtt = incAtt; | |
var nDE = [Infinity, -Infinity]; | |
var lDE = [Infinity, -Infinity]; | |
if (nodeAttributes.indexOf(dAtt) > -1) { | |
//currently filters out 0 entries | |
// nDE = d3.extent(nodes, function(d) {return parseInt(d.properties[dAtt])}) | |
nDE = d3.extent(nodes.filter(function(p) {return p.properties[dAtt] != 0}), function(d) {return parseInt(d.properties[dAtt])}) | |
} | |
if (linkAttributes.indexOf(dAtt) > -1) { | |
// lDE = d3.extent(links, function(d) {return parseInt(d.properties[dAtt])}) | |
lDE = d3.extent(links.filter(function(p) {return p.properties[dAtt] != 0}), function(d) {return parseInt(d.properties[dAtt])}) | |
} | |
dynamicExtent = [Math.min(nDE[0],lDE[0]), Math.max(nDE[1],lDE[1])] | |
dynamicScale = d3.scale.linear().domain(dynamicExtent).range([0,layoutSize[0]]); | |
return this; | |
} | |
this.dynamicBrush = function(incSelection) { | |
if (!arguments.length) return gexfD3Brush; | |
gexfD3Brush | |
.x(dynamicScale) | |
.extent(dynamicExtent) | |
var brushAxis = d3.svg.axis().scale(dynamicScale).orient("bottom").tickSize(-40).ticks(20); | |
incSelection.append("g").attr("id", "bgAxis").append("g").attr("transform", "translate(50,35)").call(brushAxis) | |
incSelection.append("g").attr("id", "fgBrush").attr("transform", "translate(50,0)") | |
.call(gexfD3Brush) | |
.selectAll("rect").attr("height", 35); | |
return this; | |
} | |
this.xScale = function(newScale) { | |
if (!arguments.length) return xScale; | |
xScale = newScale; | |
return this; | |
} | |
this.yScale = function(newScale) { | |
if (!arguments.length) return yScale; | |
yScale = newScale; | |
return this; | |
} | |
return this; | |
} |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
<html xmlns="http://www.w3.org/1999/xhtml"> | |
<head> | |
<title>GEXF D3</title> | |
<meta charset="utf-8" /> | |
<link type="text/css" rel="stylesheet" href="gexfd3.css" /> | |
</head> | |
<script src="http://d3js.org/d3.v3.min.js"></script> | |
<script src="http://d3js.org/colorbrewer.v1.min.js"></script> | |
<script src="parser.js" type="text/javascript"> | |
</script> | |
<script src="gexfd3.js" type="text/javascript"> | |
</script> | |
<body onload="loadGraph('lm.gexf')"> | |
<div id="vizcontainer" style="width:100%;height:100%"> | |
<svg id="graphSVG" style="border:1px lightgray solid;"> | |
<g id="graphG" /> | |
<div id="modal"><div id="content"></div><button id="modalClose" onclick="nodeFocus=false;nodeOut();d3.select('#modal').style('display','none');">X</button></div> | |
</div> | |
<div id="controls"> | |
</div> | |
<footer> | |
<script> | |
nodeFocus = false; | |
currentBrush =[0,0]; | |
docHash = {}; | |
allLinks = []; | |
currentScale = 0; | |
function loadGraph(sourceGEXF) { | |
newGEXF = GexfParser.fetch(sourceGEXF); | |
gD3 = gexfD3().graph(newGEXF).size([1000,1000]).nodeScale([5,20]); | |
force = d3.layout.force() | |
.charge(-500) | |
.linkDistance(200) | |
.size([1000, 1000]) | |
.gravity(.1) | |
.on("tick", redrawGraph) | |
zoom = d3.behavior.zoom() | |
.scaleExtent([.1, 10]) | |
.on("zoom", zoomed); | |
allLinks = gD3.links(); | |
d3.select("svg").call(zoom); | |
createControls(); | |
zoomed(); | |
draw(); | |
} | |
function highlightNeighbors(d,i) { | |
var nodeNeighbors = findNeighbors(d,i); | |
d3.selectAll("g.node").each(function(p) { | |
var isNeighbor = nodeNeighbors.nodes.indexOf(p); | |
d3.select(this).select("circle") | |
.style("opacity", isNeighbor > -1 ? 1 : .25) | |
.style("stroke-width", isNeighbor > -1 ? 3 : 1) | |
.style("stroke", isNeighbor > -1 ? "blue" : "white") | |
}) | |
d3.selectAll("line.link") | |
.style("stroke-width", function (d) {return nodeNeighbors.links.indexOf(d) > -1 ? 2 : 1}) | |
.style("opacity", function (d) {return nodeNeighbors.links.indexOf(d) > -1 ? 1 : .25}) | |
} | |
function findNeighbors(d,i) { | |
neighborArray = [d]; | |
var linkArray = []; | |
var linksArray = d3.selectAll("line.link").filter(function(p) {return p.source == d || p.target == d}).each(function(p) { | |
neighborArray.indexOf(p.source) == -1 ? neighborArray.push(p.source) : null; | |
neighborArray.indexOf(p.target) == -1 ? neighborArray.push(p.target) : null; | |
linkArray.push(p); | |
}) | |
// neighborArray = d3.set(neighborArray).keys(); | |
return {nodes: neighborArray, links: linkArray}; | |
} | |
function zoomed() { | |
force.stop(); | |
var canvWidth = parseInt(d3.select("#vizcontainer").style("width")); | |
var canvHeight = parseInt(d3.select("#vizcontainer").style("height")); | |
if (currentScale != zoom.scale()) { | |
currentScale = zoom.scale(); | |
var halfCanvas = canvHeight / 2; | |
var zoomLevel = halfCanvas * currentScale; | |
gD3.xScale().range([halfCanvas - zoomLevel, halfCanvas + zoomLevel]); | |
gD3.yScale().range([halfCanvas + zoomLevel, halfCanvas - zoomLevel]); | |
redrawGraph(); | |
} | |
var canvasTranslate = zoom.translate(); | |
d3.select("#graphG").attr("transform", "translate("+canvasTranslate[0]+","+canvasTranslate[1]+")") | |
} | |
function createControls() { | |
d3.select("#controls").append("button").attr("class", "origButton").html("Force On").on("click", function() { | |
force.start();}) | |
d3.select("#controls").append("button").attr("class", "origButton").html("Force Off").on("click", function() { | |
force.stop();}) | |
d3.select("#controls").append("button").attr("class", "origButton").html("Reset Layout").on("click", function() { | |
force.stop(); | |
gD3.nodes().forEach(function (el) {el.x = el.originalX;el.px = el.originalX;el.y = el.originalY;el.py = el.originalY;}); | |
currentBrush = [0,0]; | |
draw(); | |
redrawGraph(); | |
}) | |
d3.select("#controls").append("button").attr("class", "origButton").html("Reset Colors").on("click", function() { | |
var sizeScale = gD3.nodeScale(); | |
d3.selectAll("circle") | |
.attr("r", function (d) {return sizeScale(d.size)}) | |
.style("fill", function(d) {return d.rgbColor}) | |
.style("opacity", 1); | |
d3.selectAll("line.link").style("stroke", "black"); | |
}) | |
d3.select("#controls").selectAll("button.nodeButtons").data(gD3.nodeAttributes()) | |
.enter() | |
.append("button") | |
.attr("class", "nodeButtons") | |
.on("click", nodeButtonClick) | |
.html(function(d) {return d}); | |
d3.select("#controls").selectAll("button.linkButtons").data(gD3.linkAttributes()) | |
.enter() | |
.append("button") | |
.attr("class", "linkButtons") | |
.on("click", linkButtonClick) | |
.html(function(d) {return d}); | |
} | |
function nodeButtonClick(d,i) { | |
var nodeAttExtent = d3.extent(gD3.nodes(), function(p) {return parseFloat(p.properties[d])}); | |
var colorScale = d3.scale.quantize().domain(nodeAttExtent).range(colorbrewer.YlGnBu[6]); | |
d3.selectAll("circle").style("fill", function(p) {return colorScale(p.properties[d])}).style("opacity", 1) | |
} | |
function linkButtonClick(d,i) { | |
var linkAttExtent = d3.extent(gD3.links(), function(p) {return parseFloat(p.properties[d])}); | |
var colorScale = d3.scale.quantize().domain(linkAttExtent).range(colorbrewer.YlGnBu[6]); | |
d3.selectAll("line").style("stroke", function(p) {return colorScale(p.properties[d])}).style("opacity", 1) | |
} | |
function redrawGraph() { | |
var xScale = gD3.xScale(); | |
var yScale = gD3.yScale(); | |
d3.selectAll("line.link") | |
.attr("x1", function (d) {return xScale(d.source.x)}) | |
.attr("x2", function (d) {return xScale(d.target.x)}) | |
.attr("y1", function (d) {return yScale(d.source.y)}) | |
.attr("y2", function (d) {return yScale(d.target.y)}); | |
d3.selectAll("g.node") | |
.attr("transform", function(d) {return "translate(" + xScale(d.x) + "," + yScale(d.y) + ")"}); | |
} | |
function draw() { | |
var xScale = gD3.xScale(); | |
var yScale = gD3.yScale(); | |
var sizeScale = gD3.nodeScale(); | |
var forceRunning = false; | |
if (force.alpha() > 0) { | |
force.stop(); | |
forceRunning = true; | |
} | |
d3.select("#graphG").selectAll("line.link") | |
.data(gD3.links(), function (d) {return d.id}) | |
.enter() | |
.insert("line", "g.node") | |
.attr("class","link") | |
.attr("x1", function (d) {return xScale(d.source.x)}) | |
.attr("x2", function (d) {return xScale(d.target.x)}) | |
.attr("y1", function (d) {return yScale(d.source.y)}) | |
.attr("y2", function (d) {return yScale(d.target.y)}) | |
.style("stroke", "black") | |
.style("stroke-width", "1px") | |
.style("opacity", .25) | |
d3.select("#graphG").selectAll("g.node").data(gD3.nodes(), function (d) {return d.id}) | |
.enter() | |
.append("g") | |
.attr("class", "node") | |
.attr("transform", function(d) {return "translate(" + xScale(d.x) + "," + yScale(d.y) + ")"}) | |
.on("mouseover", nodeOver) | |
.on("mouseout", nodeOut) | |
.on("click", nodeClick) | |
.append("circle") | |
.attr("r", function(d) {return sizeScale(d.size)}) | |
.style("fill", function(d) {return d.rgbColor}) | |
.style("stroke", "black") | |
.style("stroke-width", "1px") | |
.style("stroke-opacity", 1); | |
force | |
.nodes(gD3.nodes()) | |
.links(gD3.links()); | |
function nodeOver(d,i,e) { | |
var el = this; | |
if (!d3.event.fromElement) { | |
el = e; | |
} | |
if (nodeFocus) { | |
return; | |
} | |
//Only do the element stuff if this came from mouseover | |
el.parentNode.appendChild(el); | |
d3.select(el).append("text").attr("class", "hoverLabel").attr("stroke", "white").attr("stroke-width", "5px") | |
.style("opacity", .9) | |
.style("pointer-events", "none") | |
.text(d.label); | |
d3.select(el).append("text").attr("class", "hoverLabel") | |
.style("pointer-events", "none") | |
.text(d.label); | |
highlightNeighbors(d,i); | |
} | |
function nodeClick(d,i) { | |
nodeFocus = false; | |
nodeOut(); | |
nodeOver(d,i,this); | |
nodeFocus = true; | |
var newContent = "<p>" + d.label + "</p>"; | |
newContent += "<p>Attributes: </p><p><ul>"; | |
for (x in gD3.nodeAttributes()) { | |
newContent += "<li>" + gD3.nodeAttributes()[x] + ": " + d.properties[gD3.nodeAttributes()[x]]+ "</li>"; | |
} | |
newContent += "</ul></p><p>Connections:</p><ul>"; | |
var neighbors = findNeighbors(d,i); | |
for (x in neighbors.nodes) { | |
if (neighbors.nodes[x] != d) { | |
newContent += "<li>" + neighbors.nodes[x].label + "</li>"; | |
} | |
} | |
newContent += "</ul></p>"; | |
d3.select("#modal").style("display", "block").select("#content").html(newContent); | |
} | |
} | |
function nodeOut() { | |
if (nodeFocus) { | |
return; | |
} | |
d3.selectAll(".hoverLabel").remove(); | |
d3.selectAll("circle").style("opacity", 1).style("stroke", "black").style("stroke-width", "1px"); | |
d3.selectAll("line").style("opacity", .25); | |
} | |
</script> | |
</footer> | |
</body> | |
</html> |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
<?xml version="1.0" encoding="UTF-8"?> | |
<gexf xmlns="http://www.gexf.net/1.2draft" version="1.2" xmlns:viz="http://www.gexf.net/1.2draft/viz" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.gexf.net/1.2draft http://www.gexf.net/1.2draft/gexf.xsd"> | |
<meta lastmodifieddate="2014-03-04"> | |
<creator>Gephi 0.8.1</creator> | |
<description></description> | |
</meta> | |
<graph defaultedgetype="undirected" mode="static"> | |
<attributes class="node" mode="static"> | |
<attribute id="modularity_class" title="Modularity Class" type="integer"></attribute> | |
<attribute id="closnesscentrality" title="Closeness Centrality" type="double"> | |
<default>0.0</default> | |
</attribute> | |
<attribute id="betweenesscentrality" title="Betweenness Centrality" type="double"> | |
<default>0.0</default> | |
</attribute> | |
<attribute id="newClusteringCoefficient" title="Local Clustering Coefficient" type="double"> | |
<default>0.0</default> | |
</attribute> | |
<attribute id="eigencentrality" title="Eigenvector Centrality" type="double"> | |
<default>0.0</default> | |
</attribute> | |
</attributes> | |
<attributes class="edge" mode="static"> | |
<attribute id="Strength" title="Strength" type="float"></attribute> | |
</attributes> | |
<nodes> | |
<node id="0" label="Myriel"> | |
<attvalues> | |
<attvalue for="modularity_class" value="0"></attvalue> | |
<attvalue for="closnesscentrality" value="0.4293785310734463"></attvalue> | |
<attvalue for="betweenesscentrality" value="0.17684210526315788"></attvalue> | |
<attvalue for="newClusteringCoefficient" value="0.06666666666666667"></attvalue> | |
<attvalue for="eigencentrality" value="0.12589774854449567"></attvalue> | |
</attvalues> | |
<viz:size value="28.685715"></viz:size> | |
<viz:position x="-266.82776" y="-299.6904" z="0.0"></viz:position> | |
<viz:color r="91" g="91" b="245"></viz:color> | |
</node> | |
<node id="1" label="Napoleon"> | |
<attvalues> | |
<attvalue for="modularity_class" value="0"></attvalue> | |
<attvalue for="closnesscentrality" value="0.30158730158730157"></attvalue> | |
<attvalue for="betweenesscentrality" value="0.0"></attvalue> | |
<attvalue for="newClusteringCoefficient" value="0.0"></attvalue> | |
<attvalue for="eigencentrality" value="0.013644880522103907"></attvalue> | |
</attvalues> | |
<viz:size value="4.0"></viz:size> | |
<viz:position x="-418.08344" y="-446.8853" z="0.0"></viz:position> | |
<viz:color r="91" g="91" b="245"></viz:color> | |
</node> | |
<node id="2" label="MlleBaptistine"> | |
<attvalues> | |
<attvalue for="modularity_class" value="1"></attvalue> | |
<attvalue for="closnesscentrality" value="0.41304347826086957"></attvalue> | |
<attvalue for="betweenesscentrality" value="0.0"></attvalue> | |
<attvalue for="newClusteringCoefficient" value="1.0"></attvalue> | |
<attvalue for="eigencentrality" value="0.11188607125816913"></attvalue> | |
</attvalues> | |
<viz:size value="9.485714"></viz:size> | |
<viz:position x="-212.76357" y="-245.29176" z="0.0"></viz:position> | |
<viz:color r="245" g="91" b="91"></viz:color> | |
</node> | |
<node id="3" label="MmeMagloire"> | |
<attvalues> | |
<attvalue for="modularity_class" value="1"></attvalue> | |
<attvalue for="closnesscentrality" value="0.41304347826086957"></attvalue> | |
<attvalue for="betweenesscentrality" value="0.0"></attvalue> | |
<attvalue for="newClusteringCoefficient" value="1.0"></attvalue> | |
<attvalue for="eigencentrality" value="0.11188607125816913"></attvalue> | |
</attvalues> | |
<viz:size value="9.485714"></viz:size> | |
<viz:position x="-242.82404" y="-235.26283" z="0.0"></viz:position> | |
<viz:color r="245" g="91" b="91"></viz:color> | |
</node> | |
<node id="4" label="CountessDeLo"> | |
<attvalues> | |
<attvalue for="modularity_class" value="0"></attvalue> | |
<attvalue for="closnesscentrality" value="0.30158730158730157"></attvalue> | |
<attvalue for="betweenesscentrality" value="0.0"></attvalue> | |
<attvalue for="newClusteringCoefficient" value="0.0"></attvalue> | |
<attvalue for="eigencentrality" value="0.013644880522103907"></attvalue> | |
</attvalues> | |
<viz:size value="4.0"></viz:size> | |
<viz:position x="-379.30386" y="-429.06424" z="0.0"></viz:position> | |
<viz:color r="91" g="91" b="245"></viz:color> | |
</node> | |
<node id="5" label="Geborand"> | |
<attvalues> | |
<attvalue for="modularity_class" value="0"></attvalue> | |
<attvalue for="closnesscentrality" value="0.30158730158730157"></attvalue> | |
<attvalue for="betweenesscentrality" value="0.0"></attvalue> | |
<attvalue for="newClusteringCoefficient" value="0.0"></attvalue> | |
<attvalue for="eigencentrality" value="0.013644880522103907"></attvalue> | |
</attvalues> | |
<viz:size value="4.0"></viz:size> | |
<viz:position x="-417.26337" y="-406.03506" z="0.0"></viz:position> | |
<viz:color r="91" g="91" b="245"></viz:color> | |
</node> | |
<node id="6" label="Champtercier"> | |
<attvalues> | |
<attvalue for="modularity_class" value="0"></attvalue> | |
<attvalue for="closnesscentrality" value="0.30158730158730157"></attvalue> | |
<attvalue for="betweenesscentrality" value="0.0"></attvalue> | |
<attvalue for="newClusteringCoefficient" value="0.0"></attvalue> | |
<attvalue for="eigencentrality" value="0.013644880522103907"></attvalue> | |
</attvalues> | |
<viz:size value="4.0"></viz:size> | |
<viz:position x="-332.6012" y="-485.16974" z="0.0"></viz:position> | |
<viz:color r="91" g="91" b="245"></viz:color> | |
</node> | |
<node id="7" label="Cravatte"> | |
<attvalues> | |
<attvalue for="modularity_class" value="0"></attvalue> | |
<attvalue for="closnesscentrality" value="0.30158730158730157"></attvalue> | |
<attvalue for="betweenesscentrality" value="0.0"></attvalue> | |
<attvalue for="newClusteringCoefficient" value="0.0"></attvalue> | |
<attvalue for="eigencentrality" value="0.013644880522103907"></attvalue> | |
</attvalues> | |
<viz:size value="4.0"></viz:size> | |
<viz:position x="-382.69568" y="-475.09113" z="0.0"></viz:position> | |
<viz:color r="91" g="91" b="245"></viz:color> | |
</node> | |
<node id="8" label="Count"> | |
<attvalues> | |
<attvalue for="modularity_class" value="0"></attvalue> | |
<attvalue for="closnesscentrality" value="0.30158730158730157"></attvalue> | |
<attvalue for="betweenesscentrality" value="0.0"></attvalue> | |
<attvalue for="newClusteringCoefficient" value="0.0"></attvalue> | |
<attvalue for="eigencentrality" value="0.013644880522103907"></attvalue> | |
</attvalues> | |
<viz:size value="4.0"></viz:size> | |
<viz:position x="-320.384" y="-387.17325" z="0.0"></viz:position> | |
<viz:color r="91" g="91" b="245"></viz:color> | |
</node> | |
<node id="9" label="OldMan"> | |
<attvalues> | |
<attvalue for="modularity_class" value="0"></attvalue> | |
<attvalue for="closnesscentrality" value="0.30158730158730157"></attvalue> | |
<attvalue for="betweenesscentrality" value="0.0"></attvalue> | |
<attvalue for="newClusteringCoefficient" value="0.0"></attvalue> | |
<attvalue for="eigencentrality" value="0.013644880522103907"></attvalue> | |
</attvalues> | |
<viz:size value="4.0"></viz:size> | |
<viz:position x="-344.39832" y="-451.16772" z="0.0"></viz:position> | |
<viz:color r="91" g="91" b="245"></viz:color> | |
</node> | |
<node id="10" label="Labarre"> | |
<attvalues> | |
<attvalue for="modularity_class" value="1"></attvalue> | |
<attvalue for="closnesscentrality" value="0.39378238341968913"></attvalue> | |
<attvalue for="betweenesscentrality" value="0.0"></attvalue> | |
<attvalue for="newClusteringCoefficient" value="0.0"></attvalue> | |
<attvalue for="eigencentrality" value="0.08736417108874862"></attvalue> | |
</attvalues> | |
<viz:size value="4.0"></viz:size> | |
<viz:position x="-89.34107" y="-234.56128" z="0.0"></viz:position> | |
<viz:color r="245" g="91" b="91"></viz:color> | |
</node> | |
<node id="11" label="Valjean"> | |
<attvalues> | |
<attvalue for="modularity_class" value="1"></attvalue> | |
<attvalue for="closnesscentrality" value="0.6440677966101696"></attvalue> | |
<attvalue for="betweenesscentrality" value="0.5699890527836184"></attvalue> | |
<attvalue for="newClusteringCoefficient" value="0.12063492063492064"></attvalue> | |
<attvalue for="eigencentrality" value="1.0"></attvalue> | |
</attvalues> | |
<viz:size value="100.0"></viz:size> | |
<viz:position x="-87.93029" y="6.8120565" z="0.0"></viz:position> | |
<viz:color r="245" g="91" b="91"></viz:color> | |
</node> | |
<node id="12" label="Marguerite"> | |
<attvalues> | |
<attvalue for="modularity_class" value="1"></attvalue> | |
<attvalue for="closnesscentrality" value="0.41304347826086957"></attvalue> | |
<attvalue for="betweenesscentrality" value="0.0"></attvalue> | |
<attvalue for="newClusteringCoefficient" value="1.0"></attvalue> | |
<attvalue for="eigencentrality" value="0.1248881432416597"></attvalue> | |
</attvalues> | |
<viz:size value="6.742859"></viz:size> | |
<viz:position x="-339.77908" y="184.69139" z="0.0"></viz:position> | |
<viz:color r="245" g="91" b="91"></viz:color> | |
</node> | |
<node id="13" label="MmeDeR"> | |
<attvalues> | |
<attvalue for="modularity_class" value="1"></attvalue> | |
<attvalue for="closnesscentrality" value="0.39378238341968913"></attvalue> | |
<attvalue for="betweenesscentrality" value="0.0"></attvalue> | |
<attvalue for="newClusteringCoefficient" value="0.0"></attvalue> | |
<attvalue for="eigencentrality" value="0.08736417108874862"></attvalue> | |
</attvalues> | |
<viz:size value="4.0"></viz:size> | |
<viz:position x="-194.31313" y="-178.55301" z="0.0"></viz:position> | |
<viz:color r="245" g="91" b="91"></viz:color> | |
</node> | |
<node id="14" label="Isabeau"> | |
<attvalues> | |
<attvalue for="modularity_class" value="1"></attvalue> | |
<attvalue for="closnesscentrality" value="0.39378238341968913"></attvalue> | |
<attvalue for="betweenesscentrality" value="0.0"></attvalue> | |
<attvalue for="newClusteringCoefficient" value="0.0"></attvalue> | |
<attvalue for="eigencentrality" value="0.08736417108874862"></attvalue> | |
</attvalues> | |
<viz:size value="4.0"></viz:size> | |
<viz:position x="-158.05168" y="-201.99768" z="0.0"></viz:position> | |
<viz:color r="245" g="91" b="91"></viz:color> | |
</node> | |
<node id="15" label="Gervais"> | |
<attvalues> | |
<attvalue for="modularity_class" value="1"></attvalue> | |
<attvalue for="closnesscentrality" value="0.39378238341968913"></attvalue> | |
<attvalue for="betweenesscentrality" value="0.0"></attvalue> | |
<attvalue for="newClusteringCoefficient" value="0.0"></attvalue> | |
<attvalue for="eigencentrality" value="0.08736417108874862"></attvalue> | |
</attvalues> | |
<viz:size value="4.0"></viz:size> | |
<viz:position x="-127.701546" y="-242.55057" z="0.0"></viz:position> | |
<viz:color r="245" g="91" b="91"></viz:color> | |
</node> | |
<node id="16" label="Tholomyes"> | |
<attvalues> | |
<attvalue for="modularity_class" value="2"></attvalue> | |
<attvalue for="closnesscentrality" value="0.3917525773195876"></attvalue> | |
<attvalue for="betweenesscentrality" value="0.040629348177335795"></attvalue> | |
<attvalue for="newClusteringCoefficient" value="0.6111111111111112"></attvalue> | |
<attvalue for="eigencentrality" value="0.22502057525598232"></attvalue> | |
</attvalues> | |
<viz:size value="25.942856"></viz:size> | |
<viz:position x="-385.2226" y="393.5572" z="0.0"></viz:position> | |
<viz:color r="91" g="194" b="245"></viz:color> | |
</node> | |
<node id="17" label="Listolier"> | |
<attvalues> | |
<attvalue for="modularity_class" value="2"></attvalue> | |
<attvalue for="closnesscentrality" value="0.34080717488789236"></attvalue> | |
<attvalue for="betweenesscentrality" value="0.0"></attvalue> | |
<attvalue for="newClusteringCoefficient" value="1.0"></attvalue> | |
<attvalue for="eigencentrality" value="0.12757838866295002"></attvalue> | |
</attvalues> | |
<viz:size value="20.457146"></viz:size> | |
<viz:position x="-516.55884" y="393.98975" z="0.0"></viz:position> | |
<viz:color r="91" g="194" b="245"></viz:color> | |
</node> | |
<node id="18" label="Fameuil"> | |
<attvalues> | |
<attvalue for="modularity_class" value="2"></attvalue> | |
<attvalue for="closnesscentrality" value="0.34080717488789236"></attvalue> | |
<attvalue for="betweenesscentrality" value="0.0"></attvalue> | |
<attvalue for="newClusteringCoefficient" value="1.0"></attvalue> | |
<attvalue for="eigencentrality" value="0.12757838866295002"></attvalue> | |
</attvalues> | |
<viz:size value="20.457146"></viz:size> | |
<viz:position x="-464.79382" y="493.57944" z="0.0"></viz:position> | |
<viz:color r="91" g="194" b="245"></viz:color> | |
</node> | |
<node id="19" label="Blacheville"> | |
<attvalues> | |
<attvalue for="modularity_class" value="2"></attvalue> | |
<attvalue for="closnesscentrality" value="0.34080717488789236"></attvalue> | |
<attvalue for="betweenesscentrality" value="0.0"></attvalue> | |
<attvalue for="newClusteringCoefficient" value="1.0"></attvalue> | |
<attvalue for="eigencentrality" value="0.12757838866295002"></attvalue> | |
</attvalues> | |
<viz:size value="20.457146"></viz:size> | |
<viz:position x="-515.1624" y="456.9891" z="0.0"></viz:position> | |
<viz:color r="91" g="194" b="245"></viz:color> | |
</node> | |
<node id="20" label="Favourite"> | |
<attvalues> | |
<attvalue for="modularity_class" value="2"></attvalue> | |
<attvalue for="closnesscentrality" value="0.34080717488789236"></attvalue> | |
<attvalue for="betweenesscentrality" value="0.0"></attvalue> | |
<attvalue for="newClusteringCoefficient" value="1.0"></attvalue> | |
<attvalue for="eigencentrality" value="0.12757838866295002"></attvalue> | |
</attvalues> | |
<viz:size value="20.457146"></viz:size> | |
<viz:position x="-408.12122" y="464.5048" z="0.0"></viz:position> | |
<viz:color r="91" g="194" b="245"></viz:color> | |
</node> | |
<node id="21" label="Dahlia"> | |
<attvalues> | |
<attvalue for="modularity_class" value="2"></attvalue> | |
<attvalue for="closnesscentrality" value="0.34080717488789236"></attvalue> | |
<attvalue for="betweenesscentrality" value="0.0"></attvalue> | |
<attvalue for="newClusteringCoefficient" value="1.0"></attvalue> | |
<attvalue for="eigencentrality" value="0.12757838866295002"></attvalue> | |
</attvalues> | |
<viz:size value="20.457146"></viz:size> | |
<viz:position x="-456.44113" y="425.13303" z="0.0"></viz:position> | |
<viz:color r="91" g="194" b="245"></viz:color> | |
</node> | |
<node id="22" label="Zephine"> | |
<attvalues> | |
<attvalue for="modularity_class" value="2"></attvalue> | |
<attvalue for="closnesscentrality" value="0.34080717488789236"></attvalue> | |
<attvalue for="betweenesscentrality" value="0.0"></attvalue> | |
<attvalue for="newClusteringCoefficient" value="1.0"></attvalue> | |
<attvalue for="eigencentrality" value="0.12757838866295002"></attvalue> | |
</attvalues> | |
<viz:size value="20.457146"></viz:size> | |
<viz:position x="-459.1107" y="362.5133" z="0.0"></viz:position> | |
<viz:color r="91" g="194" b="245"></viz:color> | |
</node> | |
<node id="23" label="Fantine"> | |
<attvalues> | |
<attvalue for="modularity_class" value="2"></attvalue> | |
<attvalue for="closnesscentrality" value="0.46060606060606063"></attvalue> | |
<attvalue for="betweenesscentrality" value="0.12964454098819425"></attvalue> | |
<attvalue for="newClusteringCoefficient" value="0.3142857142857143"></attvalue> | |
<attvalue for="eigencentrality" value="0.4046733463057287"></attvalue> | |
</attvalues> | |
<viz:size value="42.4"></viz:size> | |
<viz:position x="-313.42786" y="289.44803" z="0.0"></viz:position> | |
<viz:color r="91" g="194" b="245"></viz:color> | |
</node> | |
<node id="24" label="MmeThenardier"> | |
<attvalues> | |
<attvalue for="modularity_class" value="7"></attvalue> | |
<attvalue for="closnesscentrality" value="0.46060606060606063"></attvalue> | |
<attvalue for="betweenesscentrality" value="0.029002418730461763"></attvalue> | |
<attvalue for="newClusteringCoefficient" value="0.4909090909090909"></attvalue> | |
<attvalue for="eigencentrality" value="0.4633759606776108"></attvalue> | |
</attvalues> | |
<viz:size value="31.428574"></viz:size> | |
<viz:position x="4.6313396" y="273.8517" z="0.0"></viz:position> | |
<viz:color r="91" g="245" b="194"></viz:color> | |
</node> | |
<node id="25" label="Thenardier"> | |
<attvalues> | |
<attvalue for="modularity_class" value="7"></attvalue> | |
<attvalue for="closnesscentrality" value="0.5170068027210885"></attvalue> | |
<attvalue for="betweenesscentrality" value="0.07490122123424225"></attvalue> | |
<attvalue for="newClusteringCoefficient" value="0.4083333333333333"></attvalue> | |
<attvalue for="eigencentrality" value="0.676494721845158"></attvalue> | |
</attvalues> | |
<viz:size value="45.142853"></viz:size> | |
<viz:position x="82.80825" y="203.1144" z="0.0"></viz:position> | |
<viz:color r="91" g="245" b="194"></viz:color> | |
</node> | |
<node id="26" label="Cosette"> | |
<attvalues> | |
<attvalue for="modularity_class" value="6"></attvalue> | |
<attvalue for="closnesscentrality" value="0.4779874213836478"></attvalue> | |
<attvalue for="betweenesscentrality" value="0.02379625345414819"></attvalue> | |
<attvalue for="newClusteringCoefficient" value="0.38181818181818183"></attvalue> | |
<attvalue for="eigencentrality" value="0.42094927831374934"></attvalue> | |
</attvalues> | |
<viz:size value="31.428574"></viz:size> | |
<viz:position x="78.64646" y="31.512747" z="0.0"></viz:position> | |
<viz:color r="194" g="91" b="245"></viz:color> | |
</node> | |
<node id="27" label="Javert"> | |
<attvalues> | |
<attvalue for="modularity_class" value="7"></attvalue> | |
<attvalue for="closnesscentrality" value="0.5170068027210885"></attvalue> | |
<attvalue for="betweenesscentrality" value="0.05433155966478436"></attvalue> | |
<attvalue for="newClusteringCoefficient" value="0.3235294117647059"></attvalue> | |
<attvalue for="eigencentrality" value="0.6765355896405886"></attvalue> | |
</attvalues> | |
<viz:size value="47.88571"></viz:size> | |
<viz:position x="-81.46074" y="204.20204" z="0.0"></viz:position> | |
<viz:color r="91" g="245" b="194"></viz:color> | |
</node> | |
<node id="28" label="Fauchelevent"> | |
<attvalues> | |
<attvalue for="modularity_class" value="4"></attvalue> | |
<attvalue for="closnesscentrality" value="0.4021164021164021"></attvalue> | |
<attvalue for="betweenesscentrality" value="0.026491228070175437"></attvalue> | |
<attvalue for="newClusteringCoefficient" value="0.3333333333333333"></attvalue> | |
<attvalue for="eigencentrality" value="0.1567411582284451"></attvalue> | |
</attvalues> | |
<viz:size value="12.228573"></viz:size> | |
<viz:position x="-225.73984" y="-82.41631" z="0.0"></viz:position> | |
<viz:color r="245" g="194" b="91"></viz:color> | |
</node> | |
<node id="29" label="Bamatabois"> | |
<attvalues> | |
<attvalue for="modularity_class" value="3"></attvalue> | |
<attvalue for="closnesscentrality" value="0.42696629213483145"></attvalue> | |
<attvalue for="betweenesscentrality" value="0.008040935672514621"></attvalue> | |
<attvalue for="newClusteringCoefficient" value="0.6428571428571429"></attvalue> | |
<attvalue for="eigencentrality" value="0.2676585868501075"></attvalue> | |
</attvalues> | |
<viz:size value="23.2"></viz:size> | |
<viz:position x="-385.6842" y="20.206686" z="0.0"></viz:position> | |
<viz:color r="194" g="245" b="91"></viz:color> | |
</node> | |
<node id="30" label="Perpetue"> | |
<attvalues> | |
<attvalue for="modularity_class" value="2"></attvalue> | |
<attvalue for="closnesscentrality" value="0.3179916317991632"></attvalue> | |
<attvalue for="betweenesscentrality" value="0.0"></attvalue> | |
<attvalue for="newClusteringCoefficient" value="1.0"></attvalue> | |
<attvalue for="eigencentrality" value="0.0545731260374156"></attvalue> | |
</attvalues> | |
<viz:size value="6.742859"></viz:size> | |
<viz:position x="-403.92447" y="197.69823" z="0.0"></viz:position> | |
<viz:color r="91" g="194" b="245"></viz:color> | |
</node> | |
<node id="31" label="Simplice"> | |
<attvalues> | |
<attvalue for="modularity_class" value="2"></attvalue> | |
<attvalue for="closnesscentrality" value="0.41758241758241754"></attvalue> | |
<attvalue for="betweenesscentrality" value="0.008640295033483888"></attvalue> | |
<attvalue for="newClusteringCoefficient" value="0.6666666666666666"></attvalue> | |
<attvalue for="eigencentrality" value="0.18823416532562146"></attvalue> | |
</attvalues> | |
<viz:size value="12.228573"></viz:size> | |
<viz:position x="-281.4253" y="158.45137" z="0.0"></viz:position> | |
<viz:color r="91" g="194" b="245"></viz:color> | |
</node> | |
<node id="32" label="Scaufflaire"> | |
<attvalues> | |
<attvalue for="modularity_class" value="1"></attvalue> | |
<attvalue for="closnesscentrality" value="0.39378238341968913"></attvalue> | |
<attvalue for="betweenesscentrality" value="0.0"></attvalue> | |
<attvalue for="newClusteringCoefficient" value="0.0"></attvalue> | |
<attvalue for="eigencentrality" value="0.08736417108874862"></attvalue> | |
</attvalues> | |
<viz:size value="4.0"></viz:size> | |
<viz:position x="-122.41348" y="-210.37503" z="0.0"></viz:position> | |
<viz:color r="245" g="91" b="91"></viz:color> | |
</node> | |
<node id="33" label="Woman1"> | |
<attvalues> | |
<attvalue for="modularity_class" value="1"></attvalue> | |
<attvalue for="closnesscentrality" value="0.39583333333333337"></attvalue> | |
<attvalue for="betweenesscentrality" value="0.0"></attvalue> | |
<attvalue for="newClusteringCoefficient" value="1.0"></attvalue> | |
<attvalue for="eigencentrality" value="0.14487866538812616"></attvalue> | |
</attvalues> | |
<viz:size value="6.742859"></viz:size> | |
<viz:position x="-234.6001" y="113.15067" z="0.0"></viz:position> | |
<viz:color r="245" g="91" b="91"></viz:color> | |
</node> | |
<node id="34" label="Judge"> | |
<attvalues> | |
<attvalue for="modularity_class" value="3"></attvalue> | |
<attvalue for="closnesscentrality" value="0.40425531914893614"></attvalue> | |
<attvalue for="betweenesscentrality" value="0.0"></attvalue> | |
<attvalue for="newClusteringCoefficient" value="1.0"></attvalue> | |
<attvalue for="eigencentrality" value="0.18012932101738532"></attvalue> | |
</attvalues> | |
<viz:size value="17.714287"></viz:size> | |
<viz:position x="-387.84915" y="-58.7059" z="0.0"></viz:position> | |
<viz:color r="194" g="245" b="91"></viz:color> | |
</node> | |
<node id="35" label="Champmathieu"> | |
<attvalues> | |
<attvalue for="modularity_class" value="3"></attvalue> | |
<attvalue for="closnesscentrality" value="0.40425531914893614"></attvalue> | |
<attvalue for="betweenesscentrality" value="0.0"></attvalue> | |
<attvalue for="newClusteringCoefficient" value="1.0"></attvalue> | |
<attvalue for="eigencentrality" value="0.18012932101738532"></attvalue> | |
</attvalues> | |
<viz:size value="17.714287"></viz:size> | |
<viz:position x="-338.2307" y="-87.48405" z="0.0"></viz:position> | |
<viz:color r="194" g="245" b="91"></viz:color> | |
</node> | |
<node id="36" label="Brevet"> | |
<attvalues> | |
<attvalue for="modularity_class" value="3"></attvalue> | |
<attvalue for="closnesscentrality" value="0.40425531914893614"></attvalue> | |
<attvalue for="betweenesscentrality" value="0.0"></attvalue> | |
<attvalue for="newClusteringCoefficient" value="1.0"></attvalue> | |
<attvalue for="eigencentrality" value="0.18012932101738532"></attvalue> | |
</attvalues> | |
<viz:size value="17.714287"></viz:size> | |
<viz:position x="-453.26874" y="-58.94648" z="0.0"></viz:position> | |
<viz:color r="194" g="245" b="91"></viz:color> | |
</node> | |
<node id="37" label="Chenildieu"> | |
<attvalues> | |
<attvalue for="modularity_class" value="3"></attvalue> | |
<attvalue for="closnesscentrality" value="0.40425531914893614"></attvalue> | |
<attvalue for="betweenesscentrality" value="0.0"></attvalue> | |
<attvalue for="newClusteringCoefficient" value="1.0"></attvalue> | |
<attvalue for="eigencentrality" value="0.18012932101738532"></attvalue> | |
</attvalues> | |
<viz:size value="17.714287"></viz:size> | |
<viz:position x="-386.44904" y="-140.05937" z="0.0"></viz:position> | |
<viz:color r="194" g="245" b="91"></viz:color> | |
</node> | |
<node id="38" label="Cochepaille"> | |
<attvalues> | |
<attvalue for="modularity_class" value="3"></attvalue> | |
<attvalue for="closnesscentrality" value="0.40425531914893614"></attvalue> | |
<attvalue for="betweenesscentrality" value="0.0"></attvalue> | |
<attvalue for="newClusteringCoefficient" value="1.0"></attvalue> | |
<attvalue for="eigencentrality" value="0.18012932101738532"></attvalue> | |
</attvalues> | |
<viz:size value="17.714287"></viz:size> | |
<viz:position x="-446.7876" y="-123.38005" z="0.0"></viz:position> | |
<viz:color r="194" g="245" b="91"></viz:color> | |
</node> | |
<node id="39" label="Pontmercy"> | |
<attvalues> | |
<attvalue for="modularity_class" value="6"></attvalue> | |
<attvalue for="closnesscentrality" value="0.37254901960784315"></attvalue> | |
<attvalue for="betweenesscentrality" value="0.006925438596491229"></attvalue> | |
<attvalue for="newClusteringCoefficient" value="0.3333333333333333"></attvalue> | |
<attvalue for="eigencentrality" value="0.1299042165780355"></attvalue> | |
</attvalues> | |
<viz:size value="9.485714"></viz:size> | |
<viz:position x="336.49738" y="269.55914" z="0.0"></viz:position> | |
<viz:color r="194" g="91" b="245"></viz:color> | |
</node> | |
<node id="40" label="Boulatruelle"> | |
<attvalues> | |
<attvalue for="modularity_class" value="7"></attvalue> | |
<attvalue for="closnesscentrality" value="0.34234234234234234"></attvalue> | |
<attvalue for="betweenesscentrality" value="0.0"></attvalue> | |
<attvalue for="newClusteringCoefficient" value="0.0"></attvalue> | |
<attvalue for="eigencentrality" value="0.05719593261755996"></attvalue> | |
</attvalues> | |
<viz:size value="4.0"></viz:size> | |
<viz:position x="29.187843" y="460.13132" z="0.0"></viz:position> | |
<viz:color r="91" g="245" b="194"></viz:color> | |
</node> | |
<node id="41" label="Eponine"> | |
<attvalues> | |
<attvalue for="modularity_class" value="7"></attvalue> | |
<attvalue for="closnesscentrality" value="0.39583333333333337"></attvalue> | |
<attvalue for="betweenesscentrality" value="0.011487550654163004"></attvalue> | |
<attvalue for="newClusteringCoefficient" value="0.45454545454545453"></attvalue> | |
<attvalue for="eigencentrality" value="0.47754909177354526"></attvalue> | |
</attvalues> | |
<viz:size value="31.428574"></viz:size> | |
<viz:position x="238.36697" y="210.00926" z="0.0"></viz:position> | |
<viz:color r="91" g="245" b="194"></viz:color> | |
</node> | |
<node id="42" label="Anzelma"> | |
<attvalues> | |
<attvalue for="modularity_class" value="7"></attvalue> | |
<attvalue for="closnesscentrality" value="0.35185185185185186"></attvalue> | |
<attvalue for="betweenesscentrality" value="0.0"></attvalue> | |
<attvalue for="newClusteringCoefficient" value="1.0"></attvalue> | |
<attvalue for="eigencentrality" value="0.13682236713537643"></attvalue> | |
</attvalues> | |
<viz:size value="9.485714"></viz:size> | |
<viz:position x="189.69513" y="346.50662" z="0.0"></viz:position> | |
<viz:color r="91" g="245" b="194"></viz:color> | |
</node> | |
<node id="43" label="Woman2"> | |
<attvalues> | |
<attvalue for="modularity_class" value="6"></attvalue> | |
<attvalue for="closnesscentrality" value="0.4021164021164021"></attvalue> | |
<attvalue for="betweenesscentrality" value="0.0"></attvalue> | |
<attvalue for="newClusteringCoefficient" value="1.0"></attvalue> | |
<attvalue for="eigencentrality" value="0.1816046162480234"></attvalue> | |
</attvalues> | |
<viz:size value="9.485714"></viz:size> | |
<viz:position x="-187.00418" y="145.02663" z="0.0"></viz:position> | |
<viz:color r="194" g="91" b="245"></viz:color> | |
</node> | |
<node id="44" label="MotherInnocent"> | |
<attvalues> | |
<attvalue for="modularity_class" value="4"></attvalue> | |
<attvalue for="closnesscentrality" value="0.3979057591623037"></attvalue> | |
<attvalue for="betweenesscentrality" value="0.0"></attvalue> | |
<attvalue for="newClusteringCoefficient" value="1.0"></attvalue> | |
<attvalue for="eigencentrality" value="0.10173439965023601"></attvalue> | |
</attvalues> | |
<viz:size value="6.742859"></viz:size> | |
<viz:position x="-252.99521" y="-129.87549" z="0.0"></viz:position> | |
<viz:color r="245" g="194" b="91"></viz:color> | |
</node> | |
<node id="45" label="Gribier"> | |
<attvalues> | |
<attvalue for="modularity_class" value="4"></attvalue> | |
<attvalue for="closnesscentrality" value="0.28787878787878785"></attvalue> | |
<attvalue for="betweenesscentrality" value="0.0"></attvalue> | |
<attvalue for="newClusteringCoefficient" value="0.0"></attvalue> | |
<attvalue for="eigencentrality" value="0.014370228561487381"></attvalue> | |
</attvalues> | |
<viz:size value="4.0"></viz:size> | |
<viz:position x="-296.07935" y="-163.11964" z="0.0"></viz:position> | |
<viz:color r="245" g="194" b="91"></viz:color> | |
</node> | |
<node id="46" label="Jondrette"> | |
<attvalues> | |
<attvalue for="modularity_class" value="5"></attvalue> | |
<attvalue for="closnesscentrality" value="0.25675675675675674"></attvalue> | |
<attvalue for="betweenesscentrality" value="0.0"></attvalue> | |
<attvalue for="newClusteringCoefficient" value="0.0"></attvalue> | |
<attvalue for="eigencentrality" value="0.007685164445947366"></attvalue> | |
</attvalues> | |
<viz:size value="4.0"></viz:size> | |
<viz:position x="550.3201" y="-522.4031" z="0.0"></viz:position> | |
<viz:color r="245" g="91" b="194"></viz:color> | |
</node> | |
<node id="47" label="MmeBurgon"> | |
<attvalues> | |
<attvalue for="modularity_class" value="5"></attvalue> | |
<attvalue for="closnesscentrality" value="0.3438914027149321"></attvalue> | |
<attvalue for="betweenesscentrality" value="0.02631578947368421"></attvalue> | |
<attvalue for="newClusteringCoefficient" value="0.0"></attvalue> | |
<attvalue for="eigencentrality" value="0.08317100295143207"></attvalue> | |
</attvalues> | |
<viz:size value="6.742859"></viz:size> | |
<viz:position x="488.13535" y="-356.8573" z="0.0"></viz:position> | |
<viz:color r="245" g="91" b="194"></viz:color> | |
</node> | |
<node id="48" label="Gavroche"> | |
<attvalues> | |
<attvalue for="modularity_class" value="8"></attvalue> | |
<attvalue for="closnesscentrality" value="0.5135135135135135"></attvalue> | |
<attvalue for="betweenesscentrality" value="0.16511250242584768"></attvalue> | |
<attvalue for="newClusteringCoefficient" value="0.354978354978355"></attvalue> | |
<attvalue for="eigencentrality" value="0.9959418749764184"></attvalue> | |
</attvalues> | |
<viz:size value="61.600006"></viz:size> | |
<viz:position x="387.89572" y="-110.462326" z="0.0"></viz:position> | |
<viz:color r="91" g="245" b="91"></viz:color> | |
</node> | |
<node id="49" label="Gillenormand"> | |
<attvalues> | |
<attvalue for="modularity_class" value="6"></attvalue> | |
<attvalue for="closnesscentrality" value="0.4418604651162791"></attvalue> | |
<attvalue for="betweenesscentrality" value="0.02021062158319776"></attvalue> | |
<attvalue for="newClusteringCoefficient" value="0.47619047619047616"></attvalue> | |
<attvalue for="eigencentrality" value="0.24207197686918017"></attvalue> | |
</attvalues> | |
<viz:size value="20.457146"></viz:size> | |
<viz:position x="126.4831" y="-68.10622" z="0.0"></viz:position> | |
<viz:color r="194" g="91" b="245"></viz:color> | |
</node> | |
<node id="50" label="Magnon"> | |
<attvalues> | |
<attvalue for="modularity_class" value="6"></attvalue> | |
<attvalue for="closnesscentrality" value="0.33480176211453744"></attvalue> | |
<attvalue for="betweenesscentrality" value="2.1720969089390142E-4"></attvalue> | |
<attvalue for="newClusteringCoefficient" value="0.0"></attvalue> | |
<attvalue for="eigencentrality" value="0.06156342639684764"></attvalue> | |
</attvalues> | |
<viz:size value="6.742859"></viz:size> | |
<viz:position x="127.07365" y="113.05923" z="0.0"></viz:position> | |
<viz:color r="194" g="91" b="245"></viz:color> | |
</node> | |
<node id="51" label="MlleGillenormand"> | |
<attvalues> | |
<attvalue for="modularity_class" value="6"></attvalue> | |
<attvalue for="closnesscentrality" value="0.4418604651162791"></attvalue> | |
<attvalue for="betweenesscentrality" value="0.04759892787524368"></attvalue> | |
<attvalue for="newClusteringCoefficient" value="0.42857142857142855"></attvalue> | |
<attvalue for="eigencentrality" value="0.23481275890305936"></attvalue> | |
</attvalues> | |
<viz:size value="20.457146"></viz:size> | |
<viz:position x="162.63559" y="-117.6565" z="0.0"></viz:position> | |
<viz:color r="194" g="91" b="245"></viz:color> | |
</node> | |
<node id="52" label="MmePontmercy"> | |
<attvalues> | |
<attvalue for="modularity_class" value="6"></attvalue> | |
<attvalue for="closnesscentrality" value="0.3153526970954357"></attvalue> | |
<attvalue for="betweenesscentrality" value="3.508771929824561E-4"></attvalue> | |
<attvalue for="newClusteringCoefficient" value="0.0"></attvalue> | |
<attvalue for="eigencentrality" value="0.03284459344820744"></attvalue> | |
</attvalues> | |
<viz:size value="6.742859"></viz:size> | |
<viz:position x="353.66415" y="205.89165" z="0.0"></viz:position> | |
<viz:color r="194" g="91" b="245"></viz:color> | |
</node> | |
<node id="53" label="MlleVaubois"> | |
<attvalues> | |
<attvalue for="modularity_class" value="6"></attvalue> | |
<attvalue for="closnesscentrality" value="0.3076923076923077"></attvalue> | |
<attvalue for="betweenesscentrality" value="0.0"></attvalue> | |
<attvalue for="newClusteringCoefficient" value="0.0"></attvalue> | |
<attvalue for="eigencentrality" value="0.021209021604697394"></attvalue> | |
</attvalues> | |
<viz:size value="4.0"></viz:size> | |
<viz:position x="165.43939" y="-339.7736" z="0.0"></viz:position> | |
<viz:color r="194" g="91" b="245"></viz:color> | |
</node> | |
<node id="54" label="LtGillenormand"> | |
<attvalues> | |
<attvalue for="modularity_class" value="6"></attvalue> | |
<attvalue for="closnesscentrality" value="0.36538461538461536"></attvalue> | |
<attvalue for="betweenesscentrality" value="0.0"></attvalue> | |
<attvalue for="newClusteringCoefficient" value="1.0"></attvalue> | |
<attvalue for="eigencentrality" value="0.1484283980520337"></attvalue> | |
</attvalues> | |
<viz:size value="12.228573"></viz:size> | |
<viz:position x="137.69348" y="-196.1069" z="0.0"></viz:position> | |
<viz:color r="194" g="91" b="245"></viz:color> | |
</node> | |
<node id="55" label="Marius"> | |
<attvalues> | |
<attvalue for="modularity_class" value="6"></attvalue> | |
<attvalue for="closnesscentrality" value="0.5314685314685315"></attvalue> | |
<attvalue for="betweenesscentrality" value="0.132032488621946"></attvalue> | |
<attvalue for="newClusteringCoefficient" value="0.3333333333333333"></attvalue> | |
<attvalue for="eigencentrality" value="0.8289654718930218"></attvalue> | |
</attvalues> | |
<viz:size value="53.37143"></viz:size> | |
<viz:position x="206.44687" y="13.805411" z="0.0"></viz:position> | |
<viz:color r="194" g="91" b="245"></viz:color> | |
</node> | |
<node id="56" label="BaronessT"> | |
<attvalues> | |
<attvalue for="modularity_class" value="6"></attvalue> | |
<attvalue for="closnesscentrality" value="0.35185185185185186"></attvalue> | |
<attvalue for="betweenesscentrality" value="0.0"></attvalue> | |
<attvalue for="newClusteringCoefficient" value="1.0"></attvalue> | |
<attvalue for="eigencentrality" value="0.09049342558743917"></attvalue> | |
</attvalues> | |
<viz:size value="6.742859"></viz:size> | |
<viz:position x="194.82993" y="-224.78036" z="0.0"></viz:position> | |
<viz:color r="194" g="91" b="245"></viz:color> | |
</node> | |
<node id="57" label="Mabeuf"> | |
<attvalues> | |
<attvalue for="modularity_class" value="8"></attvalue> | |
<attvalue for="closnesscentrality" value="0.39583333333333337"></attvalue> | |
<attvalue for="betweenesscentrality" value="0.027661236424394317"></attvalue> | |
<attvalue for="newClusteringCoefficient" value="0.6909090909090909"></attvalue> | |
<attvalue for="eigencentrality" value="0.5762557694358882"></attvalue> | |
</attvalues> | |
<viz:size value="31.428574"></viz:size> | |
<viz:position x="597.6618" y="-135.18481" z="0.0"></viz:position> | |
<viz:color r="91" g="245" b="91"></viz:color> | |
</node> | |
<node id="58" label="Enjolras"> | |
<attvalues> | |
<attvalue for="modularity_class" value="8"></attvalue> | |
<attvalue for="closnesscentrality" value="0.4810126582278481"></attvalue> | |
<attvalue for="betweenesscentrality" value="0.042553356822177105"></attvalue> | |
<attvalue for="newClusteringCoefficient" value="0.6095238095238096"></attvalue> | |
<attvalue for="eigencentrality" value="0.8162588169870529"></attvalue> | |
</attvalues> | |
<viz:size value="42.4"></viz:size> | |
<viz:position x="355.78366" y="74.882454" z="0.0"></viz:position> | |
<viz:color r="91" g="245" b="91"></viz:color> | |
</node> | |
<node id="59" label="Combeferre"> | |
<attvalues> | |
<attvalue for="modularity_class" value="8"></attvalue> | |
<attvalue for="closnesscentrality" value="0.3917525773195876"></attvalue> | |
<attvalue for="betweenesscentrality" value="0.0012501455659350395"></attvalue> | |
<attvalue for="newClusteringCoefficient" value="0.9272727272727272"></attvalue> | |
<attvalue for="eigencentrality" value="0.6131207361248003"></attvalue> | |
</attvalues> | |
<viz:size value="31.428574"></viz:size> | |
<viz:position x="515.2961" y="46.167564" z="0.0"></viz:position> | |
<viz:color r="91" g="245" b="91"></viz:color> | |
</node> | |
<node id="60" label="Prouvaire"> | |
<attvalues> | |
<attvalue for="modularity_class" value="8"></attvalue> | |
<attvalue for="closnesscentrality" value="0.3568075117370892"></attvalue> | |
<attvalue for="betweenesscentrality" value="0.0"></attvalue> | |
<attvalue for="newClusteringCoefficient" value="1.0"></attvalue> | |
<attvalue for="eigencentrality" value="0.506296820735366"></attvalue> | |
</attvalues> | |
<viz:size value="25.942856"></viz:size> | |
<viz:position x="614.29285" y="69.3104" z="0.0"></viz:position> | |
<viz:color r="91" g="245" b="91"></viz:color> | |
</node> | |
<node id="61" label="Feuilly"> | |
<attvalues> | |
<attvalue for="modularity_class" value="8"></attvalue> | |
<attvalue for="closnesscentrality" value="0.3917525773195876"></attvalue> | |
<attvalue for="betweenesscentrality" value="0.0012501455659350395"></attvalue> | |
<attvalue for="newClusteringCoefficient" value="0.9272727272727272"></attvalue> | |
<attvalue for="eigencentrality" value="0.6131207361248003"></attvalue> | |
</attvalues> | |
<viz:size value="31.428574"></viz:size> | |
<viz:position x="550.1917" y="128.17537" z="0.0"></viz:position> | |
<viz:color r="91" g="245" b="91"></viz:color> | |
</node> | |
<node id="62" label="Courfeyrac"> | |
<attvalues> | |
<attvalue for="modularity_class" value="8"></attvalue> | |
<attvalue for="closnesscentrality" value="0.4"></attvalue> | |
<attvalue for="betweenesscentrality" value="0.00526702988198833"></attvalue> | |
<attvalue for="newClusteringCoefficient" value="0.7564102564102564"></attvalue> | |
<attvalue for="eigencentrality" value="0.6803721982859926"></attvalue> | |
</attvalues> | |
<viz:size value="36.91429"></viz:size> | |
<viz:position x="436.17184" y="12.7286825" z="0.0"></viz:position> | |
<viz:color r="91" g="245" b="91"></viz:color> | |
</node> | |
<node id="63" label="Bahorel"> | |
<attvalues> | |
<attvalue for="modularity_class" value="8"></attvalue> | |
<attvalue for="closnesscentrality" value="0.39378238341968913"></attvalue> | |
<attvalue for="betweenesscentrality" value="0.0021854883087570067"></attvalue> | |
<attvalue for="newClusteringCoefficient" value="0.8636363636363636"></attvalue> | |
<attvalue for="eigencentrality" value="0.6436060005440674"></attvalue> | |
</attvalues> | |
<viz:size value="34.17143"></viz:size> | |
<viz:position x="602.55225" y="-16.421427" z="0.0"></viz:position> | |
<viz:color r="91" g="245" b="91"></viz:color> | |
</node> | |
<node id="64" label="Bossuet"> | |
<attvalues> | |
<attvalue for="modularity_class" value="8"></attvalue> | |
<attvalue for="closnesscentrality" value="0.47500000000000003"></attvalue> | |
<attvalue for="betweenesscentrality" value="0.030753650179957823"></attvalue> | |
<attvalue for="newClusteringCoefficient" value="0.7692307692307693"></attvalue> | |
<attvalue for="eigencentrality" value="0.7241400839567764"></attvalue> | |
</attvalues> | |
<viz:size value="36.91429"></viz:size> | |
<viz:position x="455.81955" y="115.45826" z="0.0"></viz:position> | |
<viz:color r="91" g="245" b="91"></viz:color> | |
</node> | |
<node id="65" label="Joly"> | |
<attvalues> | |
<attvalue for="modularity_class" value="8"></attvalue> | |
<attvalue for="closnesscentrality" value="0.39378238341968913"></attvalue> | |
<attvalue for="betweenesscentrality" value="0.0021854883087570067"></attvalue> | |
<attvalue for="newClusteringCoefficient" value="0.8636363636363636"></attvalue> | |
<attvalue for="eigencentrality" value="0.6436060005440672"></attvalue> | |
</attvalues> | |
<viz:size value="34.17143"></viz:size> | |
<viz:position x="516.40784" y="-47.242233" z="0.0"></viz:position> | |
<viz:color r="91" g="245" b="91"></viz:color> | |
</node> | |
<node id="66" label="Grantaire"> | |
<attvalues> | |
<attvalue for="modularity_class" value="8"></attvalue> | |
<attvalue for="closnesscentrality" value="0.3584905660377359"></attvalue> | |
<attvalue for="betweenesscentrality" value="1.5037593984962405E-4"></attvalue> | |
<attvalue for="newClusteringCoefficient" value="0.9333333333333333"></attvalue> | |
<attvalue for="eigencentrality" value="0.5367820851546334"></attvalue> | |
</attvalues> | |
<viz:size value="28.685715"></viz:size> | |
<viz:position x="646.4313" y="151.06331" z="0.0"></viz:position> | |
<viz:color r="91" g="245" b="91"></viz:color> | |
</node> | |
<node id="67" label="MotherPlutarch"> | |
<attvalues> | |
<attvalue for="modularity_class" value="8"></attvalue> | |
<attvalue for="closnesscentrality" value="0.28464419475655434"></attvalue> | |
<attvalue for="betweenesscentrality" value="0.0"></attvalue> | |
<attvalue for="newClusteringCoefficient" value="0.0"></attvalue> | |
<attvalue for="eigencentrality" value="0.046647528201617036"></attvalue> | |
</attvalues> | |
<viz:size value="4.0"></viz:size> | |
<viz:position x="668.9568" y="-204.65488" z="0.0"></viz:position> | |
<viz:color r="91" g="245" b="91"></viz:color> | |
</node> | |
<node id="68" label="Gueulemer"> | |
<attvalues> | |
<attvalue for="modularity_class" value="7"></attvalue> | |
<attvalue for="closnesscentrality" value="0.46341463414634143"></attvalue> | |
<attvalue for="betweenesscentrality" value="0.004960383978389518"></attvalue> | |
<attvalue for="newClusteringCoefficient" value="0.8"></attvalue> | |
<attvalue for="eigencentrality" value="0.5179939156546661"></attvalue> | |
</attvalues> | |
<viz:size value="28.685715"></viz:size> | |
<viz:position x="78.4799" y="347.15146" z="0.0"></viz:position> | |
<viz:color r="91" g="245" b="194"></viz:color> | |
</node> | |
<node id="69" label="Babet"> | |
<attvalues> | |
<attvalue for="modularity_class" value="7"></attvalue> | |
<attvalue for="closnesscentrality" value="0.46341463414634143"></attvalue> | |
<attvalue for="betweenesscentrality" value="0.004960383978389518"></attvalue> | |
<attvalue for="newClusteringCoefficient" value="0.8"></attvalue> | |
<attvalue for="eigencentrality" value="0.5179939156546661"></attvalue> | |
</attvalues> | |
<viz:size value="28.685715"></viz:size> | |
<viz:position x="150.35959" y="298.50797" z="0.0"></viz:position> | |
<viz:color r="91" g="245" b="194"></viz:color> | |
</node> | |
<node id="70" label="Claquesous"> | |
<attvalues> | |
<attvalue for="modularity_class" value="7"></attvalue> | |
<attvalue for="closnesscentrality" value="0.45238095238095233"></attvalue> | |
<attvalue for="betweenesscentrality" value="0.00486180419559921"></attvalue> | |
<attvalue for="newClusteringCoefficient" value="0.7111111111111111"></attvalue> | |
<attvalue for="eigencentrality" value="0.503856234703112"></attvalue> | |
</attvalues> | |
<viz:size value="28.685715"></viz:size> | |
<viz:position x="137.3717" y="410.2809" z="0.0"></viz:position> | |
<viz:color r="91" g="245" b="194"></viz:color> | |
</node> | |
<node id="71" label="Montparnasse"> | |
<attvalues> | |
<attvalue for="modularity_class" value="7"></attvalue> | |
<attvalue for="closnesscentrality" value="0.45783132530120485"></attvalue> | |
<attvalue for="betweenesscentrality" value="0.003873829873829873"></attvalue> | |
<attvalue for="newClusteringCoefficient" value="0.8333333333333334"></attvalue> | |
<attvalue for="eigencentrality" value="0.4812690923169401"></attvalue> | |
</attvalues> | |
<viz:size value="25.942856"></viz:size> | |
<viz:position x="234.87747" y="400.85983" z="0.0"></viz:position> | |
<viz:color r="91" g="245" b="194"></viz:color> | |
</node> | |
<node id="72" label="Toussaint"> | |
<attvalues> | |
<attvalue for="modularity_class" value="1"></attvalue> | |
<attvalue for="closnesscentrality" value="0.4021164021164021"></attvalue> | |
<attvalue for="betweenesscentrality" value="0.0"></attvalue> | |
<attvalue for="newClusteringCoefficient" value="1.0"></attvalue> | |
<attvalue for="eigencentrality" value="0.1816046162480234"></attvalue> | |
</attvalues> | |
<viz:size value="9.485714"></viz:size> | |
<viz:position x="40.942253" y="-113.78272" z="0.0"></viz:position> | |
<viz:color r="245" g="91" b="91"></viz:color> | |
</node> | |
<node id="73" label="Child1"> | |
<attvalues> | |
<attvalue for="modularity_class" value="8"></attvalue> | |
<attvalue for="closnesscentrality" value="0.34234234234234234"></attvalue> | |
<attvalue for="betweenesscentrality" value="0.0"></attvalue> | |
<attvalue for="newClusteringCoefficient" value="1.0"></attvalue> | |
<attvalue for="eigencentrality" value="0.0896239218108394"></attvalue> | |
</attvalues> | |
<viz:size value="6.742859"></viz:size> | |
<viz:position x="437.939" y="-291.58234" z="0.0"></viz:position> | |
<viz:color r="91" g="245" b="91"></viz:color> | |
</node> | |
<node id="74" label="Child2"> | |
<attvalues> | |
<attvalue for="modularity_class" value="8"></attvalue> | |
<attvalue for="closnesscentrality" value="0.34234234234234234"></attvalue> | |
<attvalue for="betweenesscentrality" value="0.0"></attvalue> | |
<attvalue for="newClusteringCoefficient" value="1.0"></attvalue> | |
<attvalue for="eigencentrality" value="0.0896239218108394"></attvalue> | |
</attvalues> | |
<viz:size value="6.742859"></viz:size> | |
<viz:position x="466.04922" y="-283.3606" z="0.0"></viz:position> | |
<viz:color r="91" g="245" b="91"></viz:color> | |
</node> | |
<node id="75" label="Brujon"> | |
<attvalues> | |
<attvalue for="modularity_class" value="7"></attvalue> | |
<attvalue for="closnesscentrality" value="0.37999999999999995"></attvalue> | |
<attvalue for="betweenesscentrality" value="4.385964912280702E-4"></attvalue> | |
<attvalue for="newClusteringCoefficient" value="0.9047619047619048"></attvalue> | |
<attvalue for="eigencentrality" value="0.34760805302873393"></attvalue> | |
</attvalues> | |
<viz:size value="20.457146"></viz:size> | |
<viz:position x="238.79364" y="314.06345" z="0.0"></viz:position> | |
<viz:color r="91" g="245" b="194"></viz:color> | |
</node> | |
<node id="76" label="MmeHucheloup"> | |
<attvalues> | |
<attvalue for="modularity_class" value="8"></attvalue> | |
<attvalue for="closnesscentrality" value="0.35348837209302325"></attvalue> | |
<attvalue for="betweenesscentrality" value="0.0"></attvalue> | |
<attvalue for="newClusteringCoefficient" value="1.0"></attvalue> | |
<attvalue for="eigencentrality" value="0.40771862915705165"></attvalue> | |
</attvalues> | |
<viz:size value="20.457146"></viz:size> | |
<viz:position x="712.18353" y="-4.8131495" z="0.0"></viz:position> | |
<viz:color r="91" g="245" b="91"></viz:color> | |
</node> | |
</nodes> | |
<edges> | |
<edge id="0" source="1" target="0"> | |
<attvalues> | |
<attvalue for="Strength" value="1.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="1" source="2" target="0" weight="8.0"> | |
<attvalues> | |
<attvalue for="Strength" value="8.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="2" source="3" target="0" weight="10.0"> | |
<attvalues> | |
<attvalue for="Strength" value="10.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="3" source="3" target="2" weight="6.0"> | |
<attvalues> | |
<attvalue for="Strength" value="6.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="4" source="4" target="0"> | |
<attvalues> | |
<attvalue for="Strength" value="1.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="5" source="5" target="0"> | |
<attvalues> | |
<attvalue for="Strength" value="1.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="6" source="6" target="0"> | |
<attvalues> | |
<attvalue for="Strength" value="1.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="7" source="7" target="0"> | |
<attvalues> | |
<attvalue for="Strength" value="1.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="8" source="8" target="0" weight="2.0"> | |
<attvalues> | |
<attvalue for="Strength" value="2.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="9" source="9" target="0"> | |
<attvalues> | |
<attvalue for="Strength" value="1.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="13" source="11" target="0" weight="5.0"> | |
<attvalues> | |
<attvalue for="Strength" value="5.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge source="11" target="2" weight="3.0"> | |
<attvalues> | |
<attvalue for="Strength" value="3.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="11" source="11" target="3" weight="3.0"> | |
<attvalues> | |
<attvalue for="Strength" value="3.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="10" source="11" target="10"> | |
<attvalues> | |
<attvalue for="Strength" value="1.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="14" source="12" target="11"> | |
<attvalues> | |
<attvalue for="Strength" value="1.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="15" source="13" target="11"> | |
<attvalues> | |
<attvalue for="Strength" value="1.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="16" source="14" target="11"> | |
<attvalues> | |
<attvalue for="Strength" value="1.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="17" source="15" target="11"> | |
<attvalues> | |
<attvalue for="Strength" value="1.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="18" source="17" target="16" weight="4.0"> | |
<attvalues> | |
<attvalue for="Strength" value="4.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="19" source="18" target="16" weight="4.0"> | |
<attvalues> | |
<attvalue for="Strength" value="4.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="20" source="18" target="17" weight="4.0"> | |
<attvalues> | |
<attvalue for="Strength" value="4.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="21" source="19" target="16" weight="4.0"> | |
<attvalues> | |
<attvalue for="Strength" value="4.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="22" source="19" target="17" weight="4.0"> | |
<attvalues> | |
<attvalue for="Strength" value="4.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="23" source="19" target="18" weight="4.0"> | |
<attvalues> | |
<attvalue for="Strength" value="4.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="24" source="20" target="16" weight="3.0"> | |
<attvalues> | |
<attvalue for="Strength" value="3.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="25" source="20" target="17" weight="3.0"> | |
<attvalues> | |
<attvalue for="Strength" value="3.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="26" source="20" target="18" weight="3.0"> | |
<attvalues> | |
<attvalue for="Strength" value="3.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="27" source="20" target="19" weight="4.0"> | |
<attvalues> | |
<attvalue for="Strength" value="4.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="28" source="21" target="16" weight="3.0"> | |
<attvalues> | |
<attvalue for="Strength" value="3.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="29" source="21" target="17" weight="3.0"> | |
<attvalues> | |
<attvalue for="Strength" value="3.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="30" source="21" target="18" weight="3.0"> | |
<attvalues> | |
<attvalue for="Strength" value="3.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="31" source="21" target="19" weight="3.0"> | |
<attvalues> | |
<attvalue for="Strength" value="3.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="32" source="21" target="20" weight="5.0"> | |
<attvalues> | |
<attvalue for="Strength" value="5.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="33" source="22" target="16" weight="3.0"> | |
<attvalues> | |
<attvalue for="Strength" value="3.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="34" source="22" target="17" weight="3.0"> | |
<attvalues> | |
<attvalue for="Strength" value="3.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="35" source="22" target="18" weight="3.0"> | |
<attvalues> | |
<attvalue for="Strength" value="3.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="36" source="22" target="19" weight="3.0"> | |
<attvalues> | |
<attvalue for="Strength" value="3.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="37" source="22" target="20" weight="4.0"> | |
<attvalues> | |
<attvalue for="Strength" value="4.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="38" source="22" target="21" weight="4.0"> | |
<attvalues> | |
<attvalue for="Strength" value="4.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="47" source="23" target="11" weight="9.0"> | |
<attvalues> | |
<attvalue for="Strength" value="9.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="46" source="23" target="12" weight="2.0"> | |
<attvalues> | |
<attvalue for="Strength" value="2.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="39" source="23" target="16" weight="3.0"> | |
<attvalues> | |
<attvalue for="Strength" value="3.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="40" source="23" target="17" weight="3.0"> | |
<attvalues> | |
<attvalue for="Strength" value="3.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="41" source="23" target="18" weight="3.0"> | |
<attvalues> | |
<attvalue for="Strength" value="3.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="42" source="23" target="19" weight="3.0"> | |
<attvalues> | |
<attvalue for="Strength" value="3.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="43" source="23" target="20" weight="4.0"> | |
<attvalues> | |
<attvalue for="Strength" value="4.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="44" source="23" target="21" weight="4.0"> | |
<attvalues> | |
<attvalue for="Strength" value="4.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="45" source="23" target="22" weight="4.0"> | |
<attvalues> | |
<attvalue for="Strength" value="4.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge source="24" target="11" weight="7.0"> | |
<attvalues> | |
<attvalue for="Strength" value="7.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="48" source="24" target="23" weight="2.0"> | |
<attvalues> | |
<attvalue for="Strength" value="2.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="52" source="25" target="11" weight="12.0"> | |
<attvalues> | |
<attvalue for="Strength" value="12.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="51" source="25" target="23"> | |
<attvalues> | |
<attvalue for="Strength" value="1.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="50" source="25" target="24" weight="13.0"> | |
<attvalues> | |
<attvalue for="Strength" value="13.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge source="26" target="11" weight="31.0"> | |
<attvalues> | |
<attvalue for="Strength" value="31.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge source="26" target="16"> | |
<attvalues> | |
<attvalue for="Strength" value="1.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="53" source="26" target="24" weight="4.0"> | |
<attvalues> | |
<attvalue for="Strength" value="4.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="56" source="26" target="25"> | |
<attvalues> | |
<attvalue for="Strength" value="1.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="57" source="27" target="11" weight="17.0"> | |
<attvalues> | |
<attvalue for="Strength" value="17.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="58" source="27" target="23" weight="5.0"> | |
<attvalues> | |
<attvalue for="Strength" value="5.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge source="27" target="24"> | |
<attvalues> | |
<attvalue for="Strength" value="1.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="59" source="27" target="25" weight="5.0"> | |
<attvalues> | |
<attvalue for="Strength" value="5.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="61" source="27" target="26"> | |
<attvalues> | |
<attvalue for="Strength" value="1.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="62" source="28" target="11" weight="8.0"> | |
<attvalues> | |
<attvalue for="Strength" value="8.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="63" source="28" target="27"> | |
<attvalues> | |
<attvalue for="Strength" value="1.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="66" source="29" target="11" weight="2.0"> | |
<attvalues> | |
<attvalue for="Strength" value="2.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="64" source="29" target="23"> | |
<attvalues> | |
<attvalue for="Strength" value="1.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="65" source="29" target="27"> | |
<attvalues> | |
<attvalue for="Strength" value="1.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="67" source="30" target="23"> | |
<attvalues> | |
<attvalue for="Strength" value="1.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge source="31" target="11" weight="3.0"> | |
<attvalues> | |
<attvalue for="Strength" value="3.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge source="31" target="23" weight="2.0"> | |
<attvalues> | |
<attvalue for="Strength" value="2.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge source="31" target="27"> | |
<attvalues> | |
<attvalue for="Strength" value="1.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="68" source="31" target="30" weight="2.0"> | |
<attvalues> | |
<attvalue for="Strength" value="2.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="72" source="32" target="11"> | |
<attvalues> | |
<attvalue for="Strength" value="1.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="73" source="33" target="11" weight="2.0"> | |
<attvalues> | |
<attvalue for="Strength" value="2.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="74" source="33" target="27"> | |
<attvalues> | |
<attvalue for="Strength" value="1.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="75" source="34" target="11" weight="3.0"> | |
<attvalues> | |
<attvalue for="Strength" value="3.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="76" source="34" target="29" weight="2.0"> | |
<attvalues> | |
<attvalue for="Strength" value="2.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="77" source="35" target="11" weight="3.0"> | |
<attvalues> | |
<attvalue for="Strength" value="3.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge source="35" target="29" weight="2.0"> | |
<attvalues> | |
<attvalue for="Strength" value="2.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="78" source="35" target="34" weight="3.0"> | |
<attvalues> | |
<attvalue for="Strength" value="3.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="82" source="36" target="11" weight="2.0"> | |
<attvalues> | |
<attvalue for="Strength" value="2.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="83" source="36" target="29"> | |
<attvalues> | |
<attvalue for="Strength" value="1.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="80" source="36" target="34" weight="2.0"> | |
<attvalues> | |
<attvalue for="Strength" value="2.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="81" source="36" target="35" weight="2.0"> | |
<attvalues> | |
<attvalue for="Strength" value="2.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="87" source="37" target="11" weight="2.0"> | |
<attvalues> | |
<attvalue for="Strength" value="2.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="88" source="37" target="29"> | |
<attvalues> | |
<attvalue for="Strength" value="1.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="84" source="37" target="34" weight="2.0"> | |
<attvalues> | |
<attvalue for="Strength" value="2.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="85" source="37" target="35" weight="2.0"> | |
<attvalues> | |
<attvalue for="Strength" value="2.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="86" source="37" target="36" weight="2.0"> | |
<attvalues> | |
<attvalue for="Strength" value="2.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="93" source="38" target="11" weight="2.0"> | |
<attvalues> | |
<attvalue for="Strength" value="2.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="94" source="38" target="29"> | |
<attvalues> | |
<attvalue for="Strength" value="1.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="89" source="38" target="34" weight="2.0"> | |
<attvalues> | |
<attvalue for="Strength" value="2.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="90" source="38" target="35" weight="2.0"> | |
<attvalues> | |
<attvalue for="Strength" value="2.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="91" source="38" target="36" weight="2.0"> | |
<attvalues> | |
<attvalue for="Strength" value="2.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="92" source="38" target="37" weight="2.0"> | |
<attvalues> | |
<attvalue for="Strength" value="2.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="95" source="39" target="25"> | |
<attvalues> | |
<attvalue for="Strength" value="1.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="96" source="40" target="25"> | |
<attvalues> | |
<attvalue for="Strength" value="1.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="97" source="41" target="24" weight="2.0"> | |
<attvalues> | |
<attvalue for="Strength" value="2.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="98" source="41" target="25" weight="3.0"> | |
<attvalues> | |
<attvalue for="Strength" value="3.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="101" source="42" target="24"> | |
<attvalues> | |
<attvalue for="Strength" value="1.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="100" source="42" target="25" weight="2.0"> | |
<attvalues> | |
<attvalue for="Strength" value="2.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="99" source="42" target="41" weight="2.0"> | |
<attvalues> | |
<attvalue for="Strength" value="2.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="102" source="43" target="11" weight="3.0"> | |
<attvalues> | |
<attvalue for="Strength" value="3.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="103" source="43" target="26"> | |
<attvalues> | |
<attvalue for="Strength" value="1.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="104" source="43" target="27"> | |
<attvalues> | |
<attvalue for="Strength" value="1.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge source="44" target="11"> | |
<attvalues> | |
<attvalue for="Strength" value="1.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="105" source="44" target="28" weight="3.0"> | |
<attvalues> | |
<attvalue for="Strength" value="3.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="107" source="45" target="28" weight="2.0"> | |
<attvalues> | |
<attvalue for="Strength" value="2.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="108" source="47" target="46"> | |
<attvalues> | |
<attvalue for="Strength" value="1.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="112" source="48" target="11"> | |
<attvalues> | |
<attvalue for="Strength" value="1.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="110" source="48" target="25"> | |
<attvalues> | |
<attvalue for="Strength" value="1.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="111" source="48" target="27"> | |
<attvalues> | |
<attvalue for="Strength" value="1.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="109" source="48" target="47" weight="2.0"> | |
<attvalues> | |
<attvalue for="Strength" value="2.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge source="49" target="11" weight="2.0"> | |
<attvalues> | |
<attvalue for="Strength" value="2.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="113" source="49" target="26" weight="3.0"> | |
<attvalues> | |
<attvalue for="Strength" value="3.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge source="50" target="24"> | |
<attvalues> | |
<attvalue for="Strength" value="1.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="115" source="50" target="49"> | |
<attvalues> | |
<attvalue for="Strength" value="1.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="119" source="51" target="11" weight="2.0"> | |
<attvalues> | |
<attvalue for="Strength" value="2.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="118" source="51" target="26" weight="2.0"> | |
<attvalues> | |
<attvalue for="Strength" value="2.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="117" source="51" target="49" weight="9.0"> | |
<attvalues> | |
<attvalue for="Strength" value="9.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge source="52" target="39"> | |
<attvalues> | |
<attvalue for="Strength" value="1.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="120" source="52" target="51"> | |
<attvalues> | |
<attvalue for="Strength" value="1.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="122" source="53" target="51"> | |
<attvalues> | |
<attvalue for="Strength" value="1.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="125" source="54" target="26"> | |
<attvalues> | |
<attvalue for="Strength" value="1.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="124" source="54" target="49"> | |
<attvalues> | |
<attvalue for="Strength" value="1.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="123" source="54" target="51" weight="2.0"> | |
<attvalues> | |
<attvalue for="Strength" value="2.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="131" source="55" target="11" weight="19.0"> | |
<attvalues> | |
<attvalue for="Strength" value="19.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="132" source="55" target="16"> | |
<attvalues> | |
<attvalue for="Strength" value="1.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="133" source="55" target="25" weight="2.0"> | |
<attvalues> | |
<attvalue for="Strength" value="2.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge source="55" target="26" weight="21.0"> | |
<attvalues> | |
<attvalue for="Strength" value="21.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="128" source="55" target="39"> | |
<attvalues> | |
<attvalue for="Strength" value="1.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="134" source="55" target="41" weight="5.0"> | |
<attvalues> | |
<attvalue for="Strength" value="5.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="135" source="55" target="48" weight="4.0"> | |
<attvalues> | |
<attvalue for="Strength" value="4.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="127" source="55" target="49" weight="12.0"> | |
<attvalues> | |
<attvalue for="Strength" value="12.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="126" source="55" target="51" weight="6.0"> | |
<attvalues> | |
<attvalue for="Strength" value="6.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="129" source="55" target="54"> | |
<attvalues> | |
<attvalue for="Strength" value="1.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="136" source="56" target="49"> | |
<attvalues> | |
<attvalue for="Strength" value="1.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="137" source="56" target="55"> | |
<attvalues> | |
<attvalue for="Strength" value="1.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge source="57" target="41"> | |
<attvalues> | |
<attvalue for="Strength" value="1.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge source="57" target="48"> | |
<attvalues> | |
<attvalue for="Strength" value="1.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="138" source="57" target="55"> | |
<attvalues> | |
<attvalue for="Strength" value="1.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="145" source="58" target="11" weight="4.0"> | |
<attvalues> | |
<attvalue for="Strength" value="4.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge source="58" target="27" weight="6.0"> | |
<attvalues> | |
<attvalue for="Strength" value="6.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="142" source="58" target="48" weight="7.0"> | |
<attvalues> | |
<attvalue for="Strength" value="7.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="141" source="58" target="55" weight="7.0"> | |
<attvalues> | |
<attvalue for="Strength" value="7.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="144" source="58" target="57"> | |
<attvalues> | |
<attvalue for="Strength" value="1.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="148" source="59" target="48" weight="6.0"> | |
<attvalues> | |
<attvalue for="Strength" value="6.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="147" source="59" target="55" weight="5.0"> | |
<attvalues> | |
<attvalue for="Strength" value="5.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge source="59" target="57" weight="2.0"> | |
<attvalues> | |
<attvalue for="Strength" value="2.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="146" source="59" target="58" weight="15.0"> | |
<attvalues> | |
<attvalue for="Strength" value="15.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="150" source="60" target="48"> | |
<attvalues> | |
<attvalue for="Strength" value="1.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="151" source="60" target="58" weight="4.0"> | |
<attvalues> | |
<attvalue for="Strength" value="4.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="152" source="60" target="59" weight="2.0"> | |
<attvalues> | |
<attvalue for="Strength" value="2.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="153" source="61" target="48" weight="2.0"> | |
<attvalues> | |
<attvalue for="Strength" value="2.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="158" source="61" target="55"> | |
<attvalues> | |
<attvalue for="Strength" value="1.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="157" source="61" target="57"> | |
<attvalues> | |
<attvalue for="Strength" value="1.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="154" source="61" target="58" weight="6.0"> | |
<attvalues> | |
<attvalue for="Strength" value="6.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="156" source="61" target="59" weight="5.0"> | |
<attvalues> | |
<attvalue for="Strength" value="5.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="155" source="61" target="60" weight="2.0"> | |
<attvalues> | |
<attvalue for="Strength" value="2.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="164" source="62" target="41"> | |
<attvalues> | |
<attvalue for="Strength" value="1.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="162" source="62" target="48" weight="7.0"> | |
<attvalues> | |
<attvalue for="Strength" value="7.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="159" source="62" target="55" weight="9.0"> | |
<attvalues> | |
<attvalue for="Strength" value="9.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge source="62" target="57" weight="2.0"> | |
<attvalues> | |
<attvalue for="Strength" value="2.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="160" source="62" target="58" weight="17.0"> | |
<attvalues> | |
<attvalue for="Strength" value="17.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="161" source="62" target="59" weight="13.0"> | |
<attvalues> | |
<attvalue for="Strength" value="13.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge source="62" target="60" weight="3.0"> | |
<attvalues> | |
<attvalue for="Strength" value="3.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="165" source="62" target="61" weight="6.0"> | |
<attvalues> | |
<attvalue for="Strength" value="6.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge source="63" target="48" weight="5.0"> | |
<attvalues> | |
<attvalue for="Strength" value="5.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="174" source="63" target="55"> | |
<attvalues> | |
<attvalue for="Strength" value="1.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge source="63" target="57" weight="2.0"> | |
<attvalues> | |
<attvalue for="Strength" value="2.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge source="63" target="58" weight="4.0"> | |
<attvalues> | |
<attvalue for="Strength" value="4.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="167" source="63" target="59" weight="5.0"> | |
<attvalues> | |
<attvalue for="Strength" value="5.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge source="63" target="60" weight="2.0"> | |
<attvalues> | |
<attvalue for="Strength" value="2.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="172" source="63" target="61" weight="3.0"> | |
<attvalues> | |
<attvalue for="Strength" value="3.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="169" source="63" target="62" weight="6.0"> | |
<attvalues> | |
<attvalue for="Strength" value="6.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="184" source="64" target="11"> | |
<attvalues> | |
<attvalue for="Strength" value="1.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge source="64" target="48" weight="5.0"> | |
<attvalues> | |
<attvalue for="Strength" value="5.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="175" source="64" target="55" weight="5.0"> | |
<attvalues> | |
<attvalue for="Strength" value="5.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="183" source="64" target="57"> | |
<attvalues> | |
<attvalue for="Strength" value="1.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="179" source="64" target="58" weight="10.0"> | |
<attvalues> | |
<attvalue for="Strength" value="10.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="182" source="64" target="59" weight="9.0"> | |
<attvalues> | |
<attvalue for="Strength" value="9.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="181" source="64" target="60" weight="2.0"> | |
<attvalues> | |
<attvalue for="Strength" value="2.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="180" source="64" target="61" weight="6.0"> | |
<attvalues> | |
<attvalue for="Strength" value="6.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="176" source="64" target="62" weight="12.0"> | |
<attvalues> | |
<attvalue for="Strength" value="12.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="178" source="64" target="63" weight="4.0"> | |
<attvalues> | |
<attvalue for="Strength" value="4.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="187" source="65" target="48" weight="3.0"> | |
<attvalues> | |
<attvalue for="Strength" value="3.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="194" source="65" target="55" weight="2.0"> | |
<attvalues> | |
<attvalue for="Strength" value="2.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="193" source="65" target="57"> | |
<attvalues> | |
<attvalue for="Strength" value="1.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge source="65" target="58" weight="5.0"> | |
<attvalues> | |
<attvalue for="Strength" value="5.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="192" source="65" target="59" weight="5.0"> | |
<attvalues> | |
<attvalue for="Strength" value="5.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge source="65" target="60" weight="2.0"> | |
<attvalues> | |
<attvalue for="Strength" value="2.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="190" source="65" target="61" weight="5.0"> | |
<attvalues> | |
<attvalue for="Strength" value="5.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="188" source="65" target="62" weight="5.0"> | |
<attvalues> | |
<attvalue for="Strength" value="5.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="185" source="65" target="63" weight="5.0"> | |
<attvalues> | |
<attvalue for="Strength" value="5.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="186" source="65" target="64" weight="7.0"> | |
<attvalues> | |
<attvalue for="Strength" value="7.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="200" source="66" target="48"> | |
<attvalues> | |
<attvalue for="Strength" value="1.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="196" source="66" target="58" weight="3.0"> | |
<attvalues> | |
<attvalue for="Strength" value="3.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="197" source="66" target="59"> | |
<attvalues> | |
<attvalue for="Strength" value="1.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="203" source="66" target="60"> | |
<attvalues> | |
<attvalue for="Strength" value="1.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="202" source="66" target="61"> | |
<attvalues> | |
<attvalue for="Strength" value="1.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="198" source="66" target="62" weight="2.0"> | |
<attvalues> | |
<attvalue for="Strength" value="2.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="201" source="66" target="63"> | |
<attvalues> | |
<attvalue for="Strength" value="1.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="195" source="66" target="64" weight="3.0"> | |
<attvalues> | |
<attvalue for="Strength" value="3.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="199" source="66" target="65" weight="2.0"> | |
<attvalues> | |
<attvalue for="Strength" value="2.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="204" source="67" target="57" weight="3.0"> | |
<attvalues> | |
<attvalue for="Strength" value="3.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge source="68" target="11"> | |
<attvalues> | |
<attvalue for="Strength" value="1.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge source="68" target="24"> | |
<attvalues> | |
<attvalue for="Strength" value="1.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="205" source="68" target="25" weight="5.0"> | |
<attvalues> | |
<attvalue for="Strength" value="5.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="208" source="68" target="27"> | |
<attvalues> | |
<attvalue for="Strength" value="1.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge source="68" target="41"> | |
<attvalues> | |
<attvalue for="Strength" value="1.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="209" source="68" target="48"> | |
<attvalues> | |
<attvalue for="Strength" value="1.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="213" source="69" target="11"> | |
<attvalues> | |
<attvalue for="Strength" value="1.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="214" source="69" target="24"> | |
<attvalues> | |
<attvalue for="Strength" value="1.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="211" source="69" target="25" weight="6.0"> | |
<attvalues> | |
<attvalue for="Strength" value="6.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge source="69" target="27" weight="2.0"> | |
<attvalues> | |
<attvalue for="Strength" value="2.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="217" source="69" target="41"> | |
<attvalues> | |
<attvalue for="Strength" value="1.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="216" source="69" target="48"> | |
<attvalues> | |
<attvalue for="Strength" value="1.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="212" source="69" target="68" weight="6.0"> | |
<attvalues> | |
<attvalue for="Strength" value="6.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="221" source="70" target="11"> | |
<attvalues> | |
<attvalue for="Strength" value="1.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="222" source="70" target="24"> | |
<attvalues> | |
<attvalue for="Strength" value="1.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="218" source="70" target="25" weight="4.0"> | |
<attvalues> | |
<attvalue for="Strength" value="4.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="223" source="70" target="27"> | |
<attvalues> | |
<attvalue for="Strength" value="1.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="224" source="70" target="41"> | |
<attvalues> | |
<attvalue for="Strength" value="1.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="225" source="70" target="58"> | |
<attvalues> | |
<attvalue for="Strength" value="1.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="220" source="70" target="68" weight="4.0"> | |
<attvalues> | |
<attvalue for="Strength" value="4.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="219" source="70" target="69" weight="4.0"> | |
<attvalues> | |
<attvalue for="Strength" value="4.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="230" source="71" target="11"> | |
<attvalues> | |
<attvalue for="Strength" value="1.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="233" source="71" target="25"> | |
<attvalues> | |
<attvalue for="Strength" value="1.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="226" source="71" target="27"> | |
<attvalues> | |
<attvalue for="Strength" value="1.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="232" source="71" target="41"> | |
<attvalues> | |
<attvalue for="Strength" value="1.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge source="71" target="48"> | |
<attvalues> | |
<attvalue for="Strength" value="1.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="228" source="71" target="68" weight="2.0"> | |
<attvalues> | |
<attvalue for="Strength" value="2.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="227" source="71" target="69" weight="2.0"> | |
<attvalues> | |
<attvalue for="Strength" value="2.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="229" source="71" target="70" weight="2.0"> | |
<attvalues> | |
<attvalue for="Strength" value="2.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="236" source="72" target="11"> | |
<attvalues> | |
<attvalue for="Strength" value="1.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="234" source="72" target="26" weight="2.0"> | |
<attvalues> | |
<attvalue for="Strength" value="2.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="235" source="72" target="27"> | |
<attvalues> | |
<attvalue for="Strength" value="1.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="237" source="73" target="48" weight="2.0"> | |
<attvalues> | |
<attvalue for="Strength" value="2.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="238" source="74" target="48" weight="2.0"> | |
<attvalues> | |
<attvalue for="Strength" value="2.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="239" source="74" target="73" weight="3.0"> | |
<attvalues> | |
<attvalue for="Strength" value="3.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="242" source="75" target="25" weight="3.0"> | |
<attvalues> | |
<attvalue for="Strength" value="3.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="244" source="75" target="41"> | |
<attvalues> | |
<attvalue for="Strength" value="1.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge source="75" target="48"> | |
<attvalues> | |
<attvalue for="Strength" value="1.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="241" source="75" target="68" weight="3.0"> | |
<attvalues> | |
<attvalue for="Strength" value="3.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="240" source="75" target="69" weight="3.0"> | |
<attvalues> | |
<attvalue for="Strength" value="3.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="245" source="75" target="70"> | |
<attvalues> | |
<attvalue for="Strength" value="1.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="246" source="75" target="71"> | |
<attvalues> | |
<attvalue for="Strength" value="1.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="252" source="76" target="48"> | |
<attvalues> | |
<attvalue for="Strength" value="1.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="253" source="76" target="58"> | |
<attvalues> | |
<attvalue for="Strength" value="1.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="251" source="76" target="62"> | |
<attvalues> | |
<attvalue for="Strength" value="1.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="250" source="76" target="63"> | |
<attvalues> | |
<attvalue for="Strength" value="1.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="247" source="76" target="64"> | |
<attvalues> | |
<attvalue for="Strength" value="1.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="248" source="76" target="65"> | |
<attvalues> | |
<attvalue for="Strength" value="1.0"></attvalue> | |
</attvalues> | |
</edge> | |
<edge id="249" source="76" target="66"> | |
<attvalues> | |
<attvalue for="Strength" value="1.0"></attvalue> | |
</attvalues> | |
</edge> | |
</edges> | |
</graph> | |
</gexf> |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
;(function(undefined) { | |
'use strict'; | |
/** | |
* GEXF Parser | |
* ============ | |
* | |
* Author: PLIQUE Guillaume (Yomguithereal) | |
* URL: https://github.com/Yomguithereal/gexf-parser | |
* Version: 1.0 | |
*/ | |
/** | |
* Helper Namespace | |
* ----------------- | |
* | |
* A useful batch of function dealing with DOM operations and types. | |
*/ | |
var _helpers = { | |
nodeListToArray: function(nodeList) { | |
// Return array | |
var children = []; | |
// Iterating | |
for (var i = 0, len = nodeList.length; i < len; ++i) { | |
if (nodeList[i].nodeName !== '#text') | |
children.push(nodeList[i]); | |
} | |
return children; | |
}, | |
nodeListEach: function(nodeList, func) { | |
// Iterating | |
for (var i = 0, len = nodeList.length; i < len; ++i) { | |
if (nodeList[i].nodeName !== '#text') | |
func(nodeList[i]); | |
} | |
}, | |
nodeListToHash: function(nodeList, filter) { | |
// Return object | |
var children = {}; | |
// Iterating | |
for (var i = 0; i < nodeList.length; i++) { | |
if (nodeList[i].nodeName !== '#text') { | |
var prop = filter(nodeList[i]); | |
children[prop.key] = prop.value; | |
} | |
} | |
return children; | |
}, | |
namedNodeMapToObject: function(nodeMap) { | |
// Return object | |
var attributes = {}; | |
// Iterating | |
for (var i = 0; i < nodeMap.length; i++) { | |
attributes[nodeMap[i].name] = nodeMap[i].value; | |
} | |
return attributes; | |
}, | |
getFirstElementByTagNS: function(node, ns, tag) { | |
var el = node.getElementsByTagName(ns + ':' + tag)[0]; | |
if (!el) | |
el = node.getElementsByTagNameNS(ns, tag)[0]; | |
if (!el) | |
el = node.getElementsByTagName(tag)[0]; | |
return el; | |
}, | |
getAttributeNS: function(node, ns, attribute) { | |
var attr_value = node.getAttribute(ns + ':' + attribute); | |
if (attr_value === undefined) | |
attr_value = node.getAttributeNS(ns, attribute); | |
if (attr_value === undefined) | |
attr_value = node.getAttribute(attribute); | |
return attr_value; | |
}, | |
enforceType: function(type, value) { | |
switch (type) { | |
case 'boolean': | |
value = (value === 'true'); | |
break; | |
case 'integer': | |
case 'long': | |
case 'float': | |
case 'double': | |
value = +value; | |
break; | |
} | |
return value; | |
}, | |
getRGB: function(values) { | |
return (values[3]) ? | |
'rgba(' + values.join(',') + ')' : | |
'rgb(' + values.slice(0, -1).join(',') + ')'; | |
} | |
}; | |
/** | |
* Parser Core Functions | |
* ---------------------- | |
* | |
* The XML parser's functions themselves. | |
*/ | |
/** | |
* Node structure. | |
* A function returning an object guarded with default value. | |
* | |
* @param {object} properties The node properties. | |
* @return {object} The guarded node object. | |
*/ | |
function Node(properties) { | |
// Possible Properties | |
return { | |
id: properties.id, | |
label: properties.label, | |
attributes: properties.attributes || {}, | |
viz: properties.viz || {} | |
}; | |
} | |
/** | |
* Edge structure. | |
* A function returning an object guarded with default value. | |
* | |
* @param {object} properties The edge properties. | |
* @return {object} The guarded edge object. | |
*/ | |
function Edge(properties) { | |
// Possible Properties | |
return { | |
id: properties.id, | |
type: properties.type || 'undirected', | |
label: properties.label || '', | |
source: properties.source, | |
target: properties.target, | |
weight: +properties.weight || 1.0, | |
viz: properties.viz || {} | |
}; | |
} | |
/** | |
* Graph parser. | |
* This structure parse a gexf string and return an object containing the | |
* parsed graph. | |
* | |
* @param {string} xml The xml string of the gexf file to parse. | |
* @return {object} The parsed graph. | |
*/ | |
function Graph(xml) { | |
var _xml = {}; | |
// Basic Properties | |
//------------------ | |
_xml.els = { | |
root: xml.getElementsByTagName('gexf')[0], | |
graph: xml.getElementsByTagName('graph')[0], | |
meta: xml.getElementsByTagName('meta')[0], | |
model: xml.getElementsByTagName('attribute'), | |
nodes: xml.getElementsByTagName('node'), | |
edges: xml.getElementsByTagName('edge') | |
}; | |
_xml.hasViz = !!_helpers.getAttributeNS(_xml.els.root, 'xmlns', 'viz'); | |
_xml.version = _xml.els.root.getAttribute('version') || '1.0'; | |
_xml.mode = _xml.els.graph.getAttribute('mode') || 'static'; | |
var edgeType = _xml.els.graph.getAttribute('defaultedgetype'); | |
_xml.defaultEdgetype = edgeType || 'undirected'; | |
// Parser Functions | |
//------------------ | |
// Meta Data | |
function _metaData() { | |
var metas = {}; | |
if (!_xml.els.meta) | |
return metas; | |
// Last modified date | |
metas.lastmodifieddate = _xml.els.meta.getAttribute('lastmodifieddate'); | |
// Other information | |
_helpers.nodeListEach(_xml.els.meta.childNodes, function(child) { | |
metas[child.tagName.toLowerCase()] = child.textContent; | |
}); | |
return metas; | |
} | |
// Model | |
function _model() { | |
var attributes = []; | |
// Iterating through attributes | |
_helpers.nodeListEach(_xml.els.model, function(attr) { | |
// Properties | |
var properties = { | |
id: attr.getAttribute('id') || attr.getAttribute('for'), | |
type: attr.getAttribute('type') || 'string', | |
title: attr.getAttribute('title') || '' | |
}; | |
// Defaults | |
var default_el = _helpers.nodeListToArray(attr.childNodes); | |
if (default_el.length > 0) | |
properties.defaultValue = default_el[0].textContent; | |
// Creating attribute | |
attributes.push(properties); | |
}); | |
return attributes; | |
} | |
// Nodes | |
function _nodes(model) { | |
var nodes = []; | |
// Iteration through nodes | |
_helpers.nodeListEach(_xml.els.nodes, function(n) { | |
// Basic properties | |
var properties = { | |
id: n.getAttribute('id'), | |
label: n.getAttribute('label') || '' | |
}; | |
// Retrieving data from nodes if any | |
if (model.length > 0) | |
properties.attributes = _nodeData(model, n); | |
// Retrieving viz information | |
if (_xml.hasViz) | |
properties.viz = _nodeViz(n); | |
// Pushing node | |
nodes.push(Node(properties)); | |
}); | |
return nodes; | |
} | |
// Data from nodes | |
function _nodeData(model, node) { | |
var data = {}; | |
var attvalues_els = node.getElementsByTagName('attvalue'); | |
// Getting Node Indicated Attributes | |
var ah = _helpers.nodeListToHash(attvalues_els, function(el) { | |
var attributes = _helpers.namedNodeMapToObject(el.attributes); | |
var key = attributes.id || attributes['for']; | |
// Returning object | |
return {key: key, value: attributes.value}; | |
}); | |
// Iterating through model | |
model.map(function(a) { | |
// Default value? | |
var att_title = a.title.toLowerCase(); | |
data[att_title] = !(a.id in ah) && 'defaultValue' in a ? | |
_helpers.enforceType(a.type, a.defaultValue) : | |
_helpers.enforceType(a.type, ah[a.id]); | |
}); | |
return data; | |
} | |
// Viz information from nodes | |
function _nodeViz(node) { | |
var viz = {}; | |
// Color | |
var color_el = _helpers.getFirstElementByTagNS(node, 'viz', 'color'); | |
if (color_el) { | |
var color = ['r', 'g', 'b', 'a'].map(function(c) { | |
return color_el.getAttribute(c); | |
}); | |
viz.color = _helpers.getRGB(color); | |
} | |
// Position | |
var pos_el = _helpers.getFirstElementByTagNS(node, 'viz', 'position'); | |
if (pos_el) { | |
viz.position = {}; | |
['x', 'y', 'z'].map(function(p) { | |
viz.position[p] = +pos_el.getAttribute(p); | |
}); | |
} | |
// Size | |
var size_el = _helpers.getFirstElementByTagNS(node, 'viz', 'size'); | |
if (size_el) | |
viz.size = +size_el.getAttribute('value'); | |
// Shape | |
var shape_el = _helpers.getFirstElementByTagNS(node, 'viz', 'shape'); | |
if (shape_el) | |
viz.shape = shape_el.getAttribute('value'); | |
return viz; | |
} | |
// Edges | |
function _edges(default_type) { | |
var edges = []; | |
// Iteration through edges | |
_helpers.nodeListEach(_xml.els.edges, function(e) { | |
// Creating the edge | |
var properties = _helpers.namedNodeMapToObject(e.attributes); | |
if (!('type' in properties)) { | |
properties.type = default_type; | |
} | |
// Retrieving viz information | |
if (_xml.hasViz) | |
properties.viz = _edgeViz(e); | |
edges.push(Edge(properties)); | |
}); | |
return edges; | |
} | |
// Viz information from edges | |
function _edgeViz(edge) { | |
var viz = {}; | |
// Color | |
var color_el = _helpers.getFirstElementByTagNS(edge, 'viz', 'color'); | |
if (color_el) { | |
var color = ['r', 'g', 'b', 'a'].map(function(c) { | |
return color_el.getAttribute(c); | |
}); | |
viz.color = _helpers.getRGB(color); | |
} | |
// Shape | |
var shape_el = _helpers.getFirstElementByTagNS(edge, 'viz', 'shape'); | |
if (shape_el) | |
viz.shape = shape_el.getAttribute('value'); | |
// Thickness | |
var thick_el = _helpers.getFirstElementByTagNS(edge, 'viz', 'thickness'); | |
if (thick_el) | |
viz.thickness = +thick_el.getAttribute('value'); | |
return viz; | |
} | |
// Returning the Graph | |
//--------------------- | |
_xml.model = _model(); | |
return { | |
version: _xml.version, | |
mode: _xml.mode, | |
defaultEdgeType: _xml.defaultEdgetype, | |
meta: _metaData(), | |
model: _xml.model, | |
nodes: _nodes(_xml.model), | |
edges: _edges(_xml.defaultEdgetype) | |
}; | |
} | |
/** | |
* Public API | |
* ----------- | |
* | |
* User-accessible functions. | |
*/ | |
// Fetching GEXF with XHR | |
function fetch(gexf_url, callback) { | |
var xhr = (function() { | |
if (window.XMLHttpRequest) | |
return new XMLHttpRequest(); | |
var names, | |
i; | |
if (window.ActiveXObject) { | |
names = [ | |
'Msxml2.XMLHTTP.6.0', | |
'Msxml2.XMLHTTP.3.0', | |
'Msxml2.XMLHTTP', | |
'Microsoft.XMLHTTP' | |
]; | |
for (i in names) | |
try { | |
return new ActiveXObject(names[i]); | |
} catch (e) {} | |
} | |
return null; | |
})(); | |
if (!xhr) | |
throw 'XMLHttpRequest not supported, cannot load the file.'; | |
// Async? | |
var async = (typeof callback === 'function'), | |
getResult; | |
// If we can't override MIME type, we are on IE 9 | |
// We'll be parsing the response string then. | |
if (xhr.overrideMimeType) { | |
xhr.overrideMimeType('text/xml'); | |
getResult = function(r) { | |
return r.responseXML; | |
}; | |
} | |
else { | |
getResult = function(r) { | |
var p = new DOMParser(); | |
return p.parseFromString(r.responseText, 'application/xml'); | |
}; | |
} | |
xhr.open('GET', gexf_url, async); | |
if (async) | |
xhr.onreadystatechange = function() { | |
if (xhr.readyState === 4) | |
callback(getResult(xhr)); | |
}; | |
xhr.send(); | |
return (async) ? xhr : getResult(xhr); | |
} | |
// Parsing the GEXF File | |
function parse(gexf) { | |
return Graph(gexf); | |
} | |
// Fetch and parse the GEXF File | |
function fetchAndParse(gexf_url, callback) { | |
if (typeof callback === 'function') { | |
return fetch(gexf_url, function(gexf) { | |
callback(Graph(gexf)); | |
}); | |
} else | |
return Graph(fetch(gexf_url)); | |
} | |
/** | |
* Exporting | |
* ---------- | |
*/ | |
this.GexfParser = { | |
// Functions | |
parse: parse, | |
fetch: fetchAndParse, | |
// Version | |
version: '0.1' | |
}; | |
}).call(this); |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment