list of neighbours
This commit is contained in:
		
							parent
							
								
									cc6fe60a7d
								
							
						
					
					
						commit
						c766d064e7
					
				
							
								
								
									
										63
									
								
								history.js
									
									
									
									
									
								
							
							
						
						
									
										63
									
								
								history.js
									
									
									
									
									
								
							| @ -118,7 +118,7 @@ function handle_data(config, map) { | |||||||
|     var graphnodes = data[0].nodes |     var graphnodes = data[0].nodes | ||||||
| 
 | 
 | ||||||
|     graph.nodes.forEach( function (d) { |     graph.nodes.forEach( function (d) { | ||||||
|       if (d.node_id in graphnodes && "location" in graphnodes[d.node_id].nodeinfo) |       if (d.node_id in graphnodes) | ||||||
|         d.node = graphnodes[d.node_id] |         d.node = graphnodes[d.node_id] | ||||||
|     }) |     }) | ||||||
| 
 | 
 | ||||||
| @ -139,6 +139,9 @@ function handle_data(config, map) { | |||||||
|     }) |     }) | ||||||
| 
 | 
 | ||||||
|     graph.forEach( function (d) { |     graph.forEach( function (d) { | ||||||
|  |       if (!("location" in d.source.node.nodeinfo && "location" in d.target.node.nodeinfo)) | ||||||
|  |         return | ||||||
|  | 
 | ||||||
|       d.latlngs = [] |       d.latlngs = [] | ||||||
|       d.latlngs.push(L.latLng(d.source.node.nodeinfo.location.latitude, d.source.node.nodeinfo.location.longitude)) |       d.latlngs.push(L.latLng(d.source.node.nodeinfo.location.latitude, d.source.node.nodeinfo.location.longitude)) | ||||||
|       d.latlngs.push(L.latLng(d.target.node.nodeinfo.location.latitude, d.target.node.nodeinfo.location.longitude)) |       d.latlngs.push(L.latLng(d.target.node.nodeinfo.location.latitude, d.target.node.nodeinfo.location.longitude)) | ||||||
| @ -146,10 +149,22 @@ function handle_data(config, map) { | |||||||
|       d.distance = d.latlngs[0].distanceTo(d.latlngs[1]) |       d.distance = d.latlngs[0].distanceTo(d.latlngs[1]) | ||||||
|     }) |     }) | ||||||
| 
 | 
 | ||||||
|     longlinks = graph.slice().sort( function (a, b) { |     longlinks = graph.slice().filter( function (d) { | ||||||
|  |       return "distance" in d | ||||||
|  |     }).sort( function (a, b) { | ||||||
|       return a.distance - b.distance |       return a.distance - b.distance | ||||||
|     }).reverse().slice(0, Math.ceil(config.longLinkPercentile * graph.length)) |     }).reverse().slice(0, Math.ceil(config.longLinkPercentile * graph.filter( function (d) { | ||||||
|  |       return "distance" in d | ||||||
|  |     }).length)) | ||||||
| 
 | 
 | ||||||
|  |     nodes.forEach( function (d) { | ||||||
|  |       d.neighbours = [] | ||||||
|  |     }) | ||||||
|  | 
 | ||||||
|  |     graph.forEach( function (d) { | ||||||
|  |       d.source.node.neighbours.push({ node: d.target.node, link: d }) | ||||||
|  |       d.target.node.neighbours.push({ node: d.source.node, link: d }) | ||||||
|  |     }) | ||||||
| 
 | 
 | ||||||
|     var gotoAnything = gotoBuilder(config, showNodeinfo, showLinkinfo) |     var gotoAnything = gotoBuilder(config, showNodeinfo, showLinkinfo) | ||||||
| 
 | 
 | ||||||
| @ -182,6 +197,9 @@ function handle_data(config, map) { | |||||||
| } | } | ||||||
| 
 | 
 | ||||||
| function showDistance(d) { | function showDistance(d) { | ||||||
|  |   if (isNaN(d.distance)) | ||||||
|  |     return | ||||||
|  | 
 | ||||||
|   return (new Intl.NumberFormat("de-DE", {maximumFractionDigits: 0}).format(d.distance)) + " m" |   return (new Intl.NumberFormat("de-DE", {maximumFractionDigits: 0}).format(d.distance)) + " m" | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| @ -293,6 +311,10 @@ function addLinksToMap(map, graph, gotoAnything) { | |||||||
| 
 | 
 | ||||||
|   var scale = chroma.scale(['green', 'orange', 'red']).domain([1, 10]) |   var scale = chroma.scale(['green', 'orange', 'red']).domain([1, 10]) | ||||||
| 
 | 
 | ||||||
|  |   graph = graph.filter( function (d) { | ||||||
|  |     return "distance" in d | ||||||
|  |   }) | ||||||
|  | 
 | ||||||
|   var lines = graph.map( function (d) { |   var lines = graph.map( function (d) { | ||||||
|     var opts = { color: scale(d.tq).hex(), |     var opts = { color: scale(d.tq).hex(), | ||||||
|                  weight: 4 |                  weight: 4 | ||||||
| @ -436,6 +458,41 @@ function showNodeinfo(config, d) { | |||||||
|   attributeEntry(attributes, "Clients", showClients(d)) |   attributeEntry(attributes, "Clients", showClients(d)) | ||||||
|   el.appendChild(attributes) |   el.appendChild(attributes) | ||||||
| 
 | 
 | ||||||
|  |   if (d.neighbours.length > 0) { | ||||||
|  |     var h3 = document.createElement("h3") | ||||||
|  |     h3.textContent = "Nachbarknoten" | ||||||
|  |     el.appendChild(h3) | ||||||
|  | 
 | ||||||
|  |     var table = document.createElement("table") | ||||||
|  | 
 | ||||||
|  |     var neighbours = d.neighbours.slice().sort( function (a, b) { | ||||||
|  |       return a.link.tq - b.link.tq | ||||||
|  |     }).reverse() | ||||||
|  | 
 | ||||||
|  |     neighbours.forEach( function (d) { | ||||||
|  |       var tr = document.createElement("tr") | ||||||
|  | 
 | ||||||
|  |       var td1 = document.createElement("td") | ||||||
|  |       var a = document.createElement("a") | ||||||
|  |       // a.href = "#"
 | ||||||
|  |       a.textContent = d.node.nodeinfo.hostname | ||||||
|  |       td1.appendChild(a) | ||||||
|  |       tr.appendChild(td1) | ||||||
|  | 
 | ||||||
|  |       var td2 = document.createElement("td") | ||||||
|  |       td2.textContent = showTq(d.link) | ||||||
|  |       tr.appendChild(td2) | ||||||
|  | 
 | ||||||
|  |       var td3 = document.createElement("td") | ||||||
|  |       td3.textContent = showDistance(d.link) | ||||||
|  |       tr.appendChild(td3) | ||||||
|  | 
 | ||||||
|  |       table.appendChild(tr) | ||||||
|  |     }) | ||||||
|  | 
 | ||||||
|  |     el.appendChild(table) | ||||||
|  |   } | ||||||
|  | 
 | ||||||
|   function close() { |   function close() { | ||||||
|     destroy() |     destroy() | ||||||
|     pushHistory() |     pushHistory() | ||||||
|  | |||||||
		Loading…
	
		Reference in New Issue
	
	Block a user