Created
July 23, 2014 09:51
-
-
Save 88250/a4f369912ebb476e3ff9 to your computer and use it in GitHub Desktop.
标签图生成 - JavaScript 部分
This file contains 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
<!DOCTYPE html> | |
<html> | |
<script src="jsnetworkx.js"></script> | |
<script src="d3.min.js"></script> | |
<body> | |
<div id='canvas'></div> | |
<script> | |
var G = jsnx.Graph(); | |
G.add_weighted_edges_from([['HTML5', 'NetBeans', 2]]); | |
G.add_weighted_edges_from([['J2EE/JavaEE', 'J2SE/JavaSE', 2]]); | |
G.add_weighted_edges_from([['Life in Programming', 'Java', 2]]); | |
G.add_weighted_edges_from([['JavaFX', 'Open Source', 4]]); | |
G.add_weighted_edges_from([['My Linux', 'Open Source', 2]]); | |
G.add_weighted_edges_from([['J2EE/JavaEE', 'EJB 3.x', 2]]); | |
G.add_weighted_edges_from([['Google', 'Java', 2]]); | |
G.add_weighted_edges_from([['JavaOne', 'Open Source', 3]]); | |
G.add_weighted_edges_from([['PHP', 'Java', 2]]); | |
G.add_weighted_edges_from([['B3log', 'Open Source', 3]]); | |
G.add_weighted_edges_from([['HTML5', 'Open Source', 2]]); | |
G.add_weighted_edges_from([['JavaFX', 'NetBeans', 5]]); | |
G.add_weighted_edges_from([['NetBeans', 'Maven', 2]]); | |
G.add_weighted_edges_from([['B3log', 'Life in Programming', 2]]); | |
G.add_weighted_edges_from([['Life in Programming', 'B3log Announcement', 2]]); | |
G.add_weighted_edges_from([['PHP', 'Open Source', 3]]); | |
G.add_weighted_edges_from([['JavaFX', 'Java', 3]]); | |
G.add_weighted_edges_from([['J2EE/JavaEE', 'NetBeans', 2]]); | |
G.add_weighted_edges_from([['GAE', 'Open Source', 2]]); | |
G.add_weighted_edges_from([['NetBeans', 'JavaOne', 4]]); | |
G.add_weighted_edges_from([['PHP', 'NetBeans', 4]]); | |
G.add_weighted_edges_from([['Java', 'Open Source', 12]]); | |
G.add_weighted_edges_from([['B3log', 'Java', 3]]); | |
G.add_weighted_edges_from([['NetBeans', 'Open Source', 26]]); | |
G.add_weighted_edges_from([['JavaEE', 'NetBeans', 2]]); | |
G.add_weighted_edges_from([['JavaEE', 'Open Source', 2]]); | |
G.add_weighted_edges_from([['B3log', 'B3log Announcement', 2]]); | |
G.add_weighted_edges_from([['Google', 'GAE', 2]]); | |
G.add_weighted_edges_from([['NetBeans', 'Java', 9]]); | |
G.add_weighted_edges_from([['J2EE/JavaEE', 'Open Source', 2]]); | |
G.add_weighted_edges_from([['B3log', 'GAE', 3]]); | |
G.add_weighted_edges_from([['Life in Programming', 'Open Source', 2]]); | |
G.add_weighted_edges_from([['Java', 'GAE', 4]]); | |
G.add_weighted_edges_from([['Java', 'JavaOne', 2]]); | |
var labelColor = d3.scale.category20b(); | |
var edgeColor = d3.scale.category20(); | |
var degrees = G.degree(); | |
degrees.forEach(function(node, degree) { | |
G.node.get(node).degree = degree; | |
}); | |
jsnx.draw(G, { | |
element: '#canvas', | |
layout_attr: { | |
linkDistance: 200, | |
charge: -500 | |
}, | |
node_shape: 'rect', | |
with_labels: true, | |
weighted: true, | |
edge_style: { | |
fill: function(d) { | |
return edgeColor(d.data.weight); | |
}, | |
'stroke-width': 20 | |
}, | |
node_attr: { | |
}, | |
label_style: { | |
fill: function(d) { | |
return labelColor(parseInt(Math.random() * 19)); | |
}, | |
'font-weight': 'bold', | |
'font-size': function(d) { | |
var ret = 36; | |
if (d.data.degree < 7) { | |
ret = 24; | |
} | |
if (d.data.degree < 4) { | |
ret = 18; | |
} | |
if (d.data.degree < 2) { | |
ret = 12; | |
} | |
return ret; | |
} | |
}, | |
node_style: { | |
}, | |
pan_zoom: {enabled: false, scale: false} | |
}); | |
</script> | |
</body> | |
</html> |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment