Skip to content

Instantly share code, notes, and snippets.

@endocrimes
Created November 27, 2012 17:28
Show Gist options
  • Select an option

  • Save endocrimes/4155707 to your computer and use it in GitHub Desktop.

Select an option

Save endocrimes/4155707 to your computer and use it in GitHub Desktop.
Craig Reville New D3 JSON Format Force Graph with Pan And Zoom
[
{
"name": "Hotel Amfora",
"cluster": 4,
"supplier": "ADRIATICA",
"size": 24.61060620890301
},
{
"name": "Hotel Sol Garden Istra",
"cluster": 4,
"supplier": "ADRIATICA",
"size": 21.109749511963543
},
{
"name": "Medulin Hotel",
"cluster": 1,
"supplier": "OHG",
"size": 2.048002925766195
},
{
"name": "Hedera Hotel",
"cluster": 1,
"supplier": "OHG",
"size": 12.632910371853344
},
{
"name": "Narcis Hotel",
"cluster": 1,
"supplier": "OHG",
"size": 12.632910371853344
},
{
"name": "Pinija Hotel",
"cluster": 2,
"supplier": "OHG",
"size": 39.841938286270604
},
{
"name": "Mimosa Hotel",
"cluster": 1,
"supplier": "OHG",
"size": 12.632910371853344
},
{
"name": "Punta Complex - Villa Arausa Arausana Antonina",
"cluster": 2,
"supplier": "OHG",
"size": 11.089439640805963
},
{
"name": "Hotel Aurora",
"cluster": 4,
"supplier": "ADRIATICA",
"size": 32.96218175228375
},
{
"name": "Hotel Opatija",
"cluster": 4,
"supplier": "ADRIATICA",
"size": 9.366215494520816
},
{
"name": "Hotel Minerva",
"cluster": 4,
"supplier": "ADRIATICA",
"size": 10.703440984986498
},
{
"name": "Villa Erna",
"cluster": 5,
"supplier": "OHG",
"size": 6.277442647273768
},
{
"name": "Villa Amfora Dubrovnik",
"cluster": 5,
"supplier": "OHG",
"size": 0.18232526019734197
},
{
"name": "Grand Hotel Park",
"cluster": 5,
"supplier": "OHG",
"size": 4.640514991762963
},
{
"name": "Tragos Hotel",
"cluster": 2,
"supplier": "OHG",
"size": 13.2363827176473
},
{
"name": "Meteor Hotel",
"cluster": 2,
"supplier": "OHG",
"size": 19.312037482297256
},
{
"name": "Jupiter Luxury Hotel",
"cluster": 5,
"supplier": "OHG",
"size": 0.4823466318885768
},
{
"name": "Hotel Uvala",
"cluster": 5,
"supplier": "COSMOS",
"size": 6.2073056676007665
},
{
"name": "Hotel Lapad",
"cluster": 5,
"supplier": "OHG",
"size": 6.1916812917323325
},
{
"name": "Zagreb Hotel",
"cluster": 3,
"supplier": "OHG",
"size": 16.47642695175482
},
{
"name": "Grand Hotel Park",
"cluster": 5,
"supplier": "COSMOS",
"size": 30.490791644173086
},
{
"name": "Valdaliso Hotel",
"cluster": 1,
"supplier": "OHG",
"size": 0.5213332077078686
},
{
"name": "Lafodia Hotel",
"cluster": 3,
"supplier": "OHG",
"size": 30.47965434958792
},
{
"name": "Belvedere Resort",
"cluster": 1,
"supplier": "OHG",
"size": 16.62400066462624
},
{
"name": "Medena Hotel",
"cluster": 2,
"supplier": "OHG",
"size": 26.969918028097315
},
{
"name": "Plat Hotels & Villas",
"cluster": 3,
"supplier": "OHG",
"size": 33.522442201261974
},
{
"name": "Hotel Vis",
"cluster": 3,
"supplier": "ADRIATICA",
"size": 4.478626981391491
},
{
"name": "Hotel Nimfa",
"cluster": 3,
"supplier": "ADRIATICA",
"size": 22.511098571911106
},
{
"name": "Bluesun Hotel Marina",
"cluster": 2,
"supplier": "ADRIATICA",
"size": 3.1252813640385493
},
{
"name": "Hotel Jure",
"cluster": 4,
"supplier": "ADRIATICA",
"size": 23.678692965112322
},
{
"name": "Hotel Niko",
"cluster": 4,
"supplier": "ADRIATICA",
"size": 23.678692965112322
},
{
"name": "Hotel Ivan",
"cluster": 4,
"supplier": "ADRIATICA",
"size": 23.678692965112322
},
{
"name": "Hotel Istra",
"cluster": 4,
"supplier": "ADRIATICA",
"size": 34.739368067844076
},
{
"name": "Bluesun Hotel Bonaca",
"cluster": 3,
"supplier": "ADRIATICA",
"size": 22.511098571911106
},
{
"name": "Bluesun Hotel Elaphusa",
"cluster": 4,
"supplier": "ADRIATICA",
"size": 10.62477891463976
},
{
"name": "H. Valamar Dubrovnik President",
"cluster": 4,
"supplier": "ADRIATICA",
"size": 0.47243083343909387
},
{
"name": "Valamar Club Dubrovnik",
"cluster": 4,
"supplier": "ADRIATICA",
"size": 0.47243083343909387
},
{
"name": "Hotel Tirena",
"cluster": 4,
"supplier": "ADRIATICA",
"size": 0.47243083343909387
},
{
"name": "Hotel Neptun",
"cluster": 4,
"supplier": "ADRIATICA",
"size": 10.62477891463976
},
{
"name": "GH Park",
"cluster": 4,
"supplier": "ADRIATICA",
"size": 10.62477891463976
},
{
"name": "Hotel Adriatica",
"cluster": 3,
"supplier": "ADRIATICA",
"size": 4.478626981391491
},
{
"name": "Hotel Medulin",
"cluster": 4,
"supplier": "ADRIATICA",
"size": 38.301587789412835
},
{
"name": "Hotel Valamar Club Tamaris",
"cluster": 1,
"supplier": "ADRIATICA",
"size": 12.76037163573029
},
{
"name": "Hotel Mediteran",
"cluster": 1,
"supplier": "ADRIATICA",
"size": 2.84722376663398
},
{
"name": "Hotel Zorna",
"cluster": 1,
"supplier": "ADRIATICA",
"size": 2.84722376663398
},
{
"name": "Hotel Plavi",
"cluster": 4,
"supplier": "ADRIATICA",
"size": 27.8674055732669
},
{
"name": "Hotel Laguna Molindrio",
"cluster": 4,
"supplier": "ADRIATICA",
"size": 27.8674055732669
},
{
"name": "Hotel Laguna Albatros",
"cluster": 1,
"supplier": "ADRIATICA",
"size": 7.900930813223489
},
{
"name": "Hotel Pical",
"cluster": 4,
"supplier": "ADRIATICA",
"size": 27.8674055732669
},
{
"name": "Valamar Pinia",
"cluster": 4,
"supplier": "ADRIATICA",
"size": 27.8674055732669
},
{
"name": "Hotel Park ",
"cluster": 1,
"supplier": "ADRIATICA",
"size": 2.0301937382456012
},
{
"name": "Hotel Park Plaza Verudela",
"cluster": 4,
"supplier": "ADRIATICA",
"size": 39.082348629052404
},
{
"name": "Solaris Hotel Ivan",
"cluster": 2,
"supplier": "OHG",
"size": 38.96207223941233
},
{
"name": "Solaris Hotel Jure",
"cluster": 2,
"supplier": "OHG",
"size": 39.23442359652966
},
{
"name": "Solaris Hotel Niko",
"cluster": 2,
"supplier": "OHG",
"size": 39.23442359652966
},
{
"name": "Bluesun Hotel Borak",
"cluster": 2,
"supplier": "OHG",
"size": 13.585315768565081
},
{
"name": "Sagitta Holiday Village",
"cluster": 2,
"supplier": "OHG",
"size": 9.05996665183995
},
{
"name": "Marina Hotel",
"cluster": 1,
"supplier": "OHG",
"size": 0.7491117396977666
},
{
"name": "Croatia Hotel",
"cluster": 3,
"supplier": "OHG",
"size": 5.913317008301845
},
{
"name": "Iberostar Albatros Hotel",
"cluster": 3,
"supplier": "OHG",
"size": 26.570900430595955
},
{
"name": "Iberostar Epidaurus Hotel",
"cluster": 3,
"supplier": "OHG",
"size": 25.859346277723407
},
{
"name": "Astarea 1 Hotel",
"cluster": 3,
"supplier": "OHG",
"size": 18.330111686036705
},
{
"name": "Sumratin Hotel",
"cluster": 3,
"supplier": "OHG",
"size": 7.772950063008145
},
{
"name": "Ariston Hotel",
"cluster": 3,
"supplier": "OHG",
"size": 6.126897062857405
},
{
"name": "Dubrovnik Palace Hotel",
"cluster": 3,
"supplier": "OHG",
"size": 6.290006100548356
},
{
"name": "More Hotel Dubrovnik",
"cluster": 3,
"supplier": "OHG",
"size": 6.11445786615146
},
{
"name": "Rixos Libertas Dubrovnik",
"cluster": 3,
"supplier": "OHG",
"size": 6.000262134393089
},
{
"name": "Lero Hotel",
"cluster": 3,
"supplier": "OHG",
"size": 27.38850534341179
},
{
"name": "Splendid Hotel",
"cluster": 3,
"supplier": "OHG",
"size": 27.99874681803565
},
{
"name": "Uvala Hotel",
"cluster": 3,
"supplier": "OHG",
"size": 27.94578258197135
},
{
"name": "Berkeley Hotel Dubrovnik",
"cluster": 3,
"supplier": "OHG",
"size": 16.822403222505088
},
{
"name": "Dubrovnik Hotel",
"cluster": 3,
"supplier": "OHG",
"size": 16.56979427703395
},
{
"name": "Komodor Hotel",
"cluster": 3,
"supplier": "OHG",
"size": 16.246957641326496
},
{
"name": "Kompas Hotel",
"cluster": 3,
"supplier": "OHG",
"size": 16.500515771648818
},
{
"name": "Admiral Grand Hotel",
"cluster": 3,
"supplier": "OHG",
"size": 6.090988869072623
},
{
"name": "Grand Hotel Orebic",
"cluster": 3,
"supplier": "OHG",
"size": 12.71709577841231
},
{
"name": "Bellevue Hotel Orebic",
"cluster": 2,
"supplier": "OHG",
"size": 11.572370226945752
},
{
"name": "Feral Hotel",
"cluster": 3,
"supplier": "OHG",
"size": 24.27545411917163
},
{
"name": "Marco Polo Hotel",
"cluster": 3,
"supplier": "OHG",
"size": 38.858332989609245
},
{
"name": "Histria Hotel",
"cluster": 1,
"supplier": "OHG",
"size": 0.9001340117385994
},
{
"name": "Palma Hotel",
"cluster": 1,
"supplier": "OHG",
"size": 0.41990062449402066
},
{
"name": "Petalon Resort",
"cluster": 1,
"supplier": "OHG",
"size": 16.781906158949845
},
{
"name": "Pineta Hotel",
"cluster": 1,
"supplier": "OHG",
"size": 0.5513457501545128
},
{
"name": "Conte Hotel",
"cluster": 2,
"supplier": "OHG",
"size": 18.911941678699534
},
{
"name": "Podgorka Hotel",
"cluster": 2,
"supplier": "OHG",
"size": 8.13548974524595
},
{
"name": "Bella Vista Hotel",
"cluster": 3,
"supplier": "OHG",
"size": 31.260251707289125
},
{
"name": "Bluesun Apartments Alan",
"cluster": 2,
"supplier": "OHG",
"size": 41.9148931836185
},
{
"name": "Zora Hotel",
"cluster": 2,
"supplier": "OHG",
"size": 22.03179128774822
},
{
"name": "Solaris Hotel Andrija",
"cluster": 2,
"supplier": "OHG",
"size": 38.739431047432554
},
{
"name": "Solaris Hotel Jakov",
"cluster": 2,
"supplier": "OHG",
"size": 11.6635314996583
},
{
"name": "Olympia Hotel",
"cluster": 2,
"supplier": "OHG",
"size": 40.2256691705552
},
{
"name": "Bluesun Hotel Elaphusa",
"cluster": 2,
"supplier": "OHG",
"size": 33.38184594042418
},
{
"name": "Bluesun Hotel Bonaca",
"cluster": 2,
"supplier": "OHG",
"size": 13.785575284191939
},
{
"name": "Medena Apartments",
"cluster": 2,
"supplier": "OHG",
"size": 41.226181736361184
},
{
"name": "Vranjica Belvedere Apartments",
"cluster": 2,
"supplier": "OHG",
"size": 42.709696026513605
},
{
"name": "Diadem Aparthotel",
"cluster": 2,
"supplier": "OHG",
"size": 22.35428776216786
},
{
"name": "The Residence Hotel",
"cluster": 2,
"supplier": "OHG",
"size": 7.458152672591799
},
{
"name": "The View Hotel",
"cluster": 1,
"supplier": "OHG",
"size": 2.865773849126679
},
{
"name": "Family Apartments NOVI",
"cluster": 1,
"supplier": "OHG",
"size": 3.8683900707646357
},
{
"name": "Aurora Hotel",
"cluster": 1,
"supplier": "OHG",
"size": 34.54555485006444
},
{
"name": "Ambasador Hotel",
"cluster": 1,
"supplier": "OHG",
"size": 3.489570795956313
},
{
"name": "Admiral Hotel",
"cluster": 1,
"supplier": "OHG",
"size": 16.22289292264573
},
{
"name": "Kristal Hotel",
"cluster": 1,
"supplier": "OHG",
"size": 16.17234450634215
},
{
"name": "Cavtat Hotel",
"cluster": 3,
"supplier": "OHG",
"size": 36.55632585863098
},
{
"name": "Adriatic Hotel Dubrovnik",
"cluster": 3,
"supplier": "OHG",
"size": 7.622963667798523
},
{
"name": "Neptun Hotel",
"cluster": 3,
"supplier": "OHG",
"size": 27.458497972473452
},
{
"name": "Vis Hotel",
"cluster": 3,
"supplier": "OHG",
"size": 16.2127868886996
},
{
"name": "Liburna Hotel",
"cluster": 3,
"supplier": "OHG",
"size": 8.749834249527268
},
{
"name": "Eden Hotel",
"cluster": 1,
"supplier": "OHG",
"size": 5.453327504505294
},
{
"name": "Istra Hotel",
"cluster": 1,
"supplier": "OHG",
"size": 5.433722331987239
},
{
"name": "Park Hotel Rovinj",
"cluster": 1,
"supplier": "OHG",
"size": 24.418813973370515
},
{
"name": "Maestral Hotel",
"cluster": 1,
"supplier": "OHG",
"size": 42.35876562362682
},
{
"name": "Laguna Hotel",
"cluster": 1,
"supplier": "OHG",
"size": 10.666943846176304
},
{
"name": "Biokovo Hotel",
"cluster": 2,
"supplier": "OHG",
"size": 23.29933695803927
},
{
"name": "Dalmacija Hotel",
"cluster": 2,
"supplier": "OHG",
"size": 23.357586369608217
},
{
"name": "Minerva Hotel",
"cluster": 2,
"supplier": "OHG",
"size": 8.13548974524595
},
{
"name": "Imperial Hotel",
"cluster": 1,
"supplier": "OHG",
"size": 0.708334815198992
},
{
"name": "Punta Hotel",
"cluster": 2,
"supplier": "OHG",
"size": 40.69890712051586
},
{
"name": "Bluesun Hotel Alan",
"cluster": 2,
"supplier": "OHG",
"size": 14.551349956930878
},
{
"name": "Ilirija Hotel",
"cluster": 2,
"supplier": "OHG",
"size": 44.091236471039544
},
{
"name": "Adriatic Hotel Biograd n/m",
"cluster": 2,
"supplier": "OHG",
"size": 10.247809099147211
},
{
"name": "Miran Hotel",
"cluster": 2,
"supplier": "OHG",
"size": 36.27571566904727
},
{
"name": "Adriatiq Hotel Hvar",
"cluster": 2,
"supplier": "OHG",
"size": 12.143989841740176
},
{
"name": "Waterman Svpetrvs Resort",
"cluster": 2,
"supplier": "OHG",
"size": 29.99225075315804
},
{
"name": "Bluesun Hotel Neptun",
"cluster": 3,
"supplier": "ADRIATICA",
"size": 18.61039471984463
},
{
"name": "Hotel Podgorka",
"cluster": 3,
"supplier": "ADRIATICA",
"size": 4.511785136822055
},
{
"name": "Hotel Lero",
"cluster": 4,
"supplier": "ADRIATICA",
"size": 10.62477891463976
},
{
"name": "Bluesun Hotel Alga",
"cluster": 4,
"supplier": "ADRIATICA",
"size": 12.851712661267783
},
{
"name": "Hotel Meteor",
"cluster": 4,
"supplier": "ADRIATICA",
"size": 0.4018211956465259
},
{
"name": "Hotelsko naselje Waterman ",
"cluster": 4,
"supplier": "ADRIATICA",
"size": 19.504045110591402
},
{
"name": "Hotel Ariston ",
"cluster": 4,
"supplier": "ADRIATICA",
"size": 10.62477891463976
},
{
"name": "Hotel Punta",
"cluster": 3,
"supplier": "ADRIATICA",
"size": 18.29378173592046
},
{
"name": "Villa Katarina",
"cluster": 2,
"supplier": "OHG",
"size": 0.8892048511910845
},
{
"name": "Apartments Marina",
"cluster": 1,
"supplier": "OHG",
"size": 0.6551159053194364
},
{
"name": "Hilton Imperial Dubrovnik",
"cluster": 5,
"supplier": "COSMOS",
"size": 15.193502558710799
},
{
"name": "Hilton Imperial Dubrovnik",
"cluster": 5,
"supplier": "OHG",
"size": 1.021087129770859
},
{
"name": "Grand Villa Argentina",
"cluster": 5,
"supplier": "OHG",
"size": 14.940320409949559
},
{
"name": "Valamar Lacroma Dubrovnik",
"cluster": 5,
"supplier": "OHG",
"size": 29.110330113996316
},
{
"name": "Hotel As",
"cluster": 1,
"supplier": "OHG",
"size": 0.12769391752518458
},
{
"name": "Apartments Ana",
"cluster": 3,
"supplier": "OHG",
"size": 1.1118764817944151
},
{
"name": "Hotel Excelsior",
"cluster": 5,
"supplier": "ADRIATICA",
"size": 14.86169320172874
},
{
"name": "Hotel Dubrovnik Palace",
"cluster": 5,
"supplier": "COSMOS",
"size": 15.51074204296165
},
{
"name": "The Pucic Palace",
"cluster": 5,
"supplier": "OHG",
"size": 3.649397035615403
},
{
"name": "Hotel Luxe",
"cluster": 5,
"supplier": "OHG",
"size": 0.48333426643988514
},
{
"name": "Hotel Excelsior",
"cluster": 6,
"supplier": "ADRIATICA",
"size": 45
},
{
"name": "Hotel Argosy",
"cluster": 5,
"supplier": "ADRIATICA",
"size": 27.686538668486758
},
{
"name": "Kornati Hotel",
"cluster": 2,
"supplier": "OHG",
"size": 44.091236471039544
},
{
"name": "Korcula Hotel",
"cluster": 3,
"supplier": "OHG",
"size": 8.758089957094851
},
{
"name": "Astarea 2 Hotel",
"cluster": 3,
"supplier": "OHG",
"size": 38.80484674385188
},
{
"name": "Hotel Bellevue Dubrovnik",
"cluster": 5,
"supplier": "OHG",
"size": 15.340601395260734
},
{
"name": "Hotel Dubrovnik Palace",
"cluster": 6,
"supplier": "ADRIATICA",
"size": 45
}
]
<!DOCTYPE HTML>
<html lang="en">
<head>
<title>Data-Driven Documents</title>
<script src="http://d3js.org/d3.v3.min.js"></script>
</head>
<body>
<script>
// drawing the graph
var drawthegraphthing = function(data, numclusters) {
// basics
var margin = {top: 0, right: 0, bottom: 0, left: 0},
width = 1352 - margin.left - margin.right,
height = 630 - margin.top - margin.bottom;
var n = data.length,
m = numclusters,
padding = 12,
radius = d3.scale.sqrt().range([0, 8]),
color = d3.scale.category10().domain(d3.range(m));
// cluster coloring
var clusterColours = [];
var getClusterColour = function(clusterName) {
for (var cluster = 0; cluster < clusterColours.length; ++cluster) {
if (clusterColours[cluster].name == clusterName) {
return clusterColours[cluster].colour;
}
}
var colour = {
name: clusterName,
colour: color(clusterColours.length)
};
clusterColours.push(colour);
return colour.colour;
};
// nodes & svg's
var nodes = d3.range(n).map(function(a, b, c, d, e) {
var node = data[a];
return {
data: node,
color: getClusterColour(node.cluster),
radius: radius(node.size)
};
});
function svg() {
this.style("left", function(d) { return d.x + "px"; })
}
// defining the position
function position() {
this.style("left", function(d) { return d.x + "px"; })
.style("top", function(d) { return d.y + "px"; })
.style("width", function(d) { return Math.max(0, d.dx - 1) + "px"; })
.style("height", function(d) { return Math.max(0, d.dy - 1) + "px"; });
}
// forced layout
var force = d3.layout.force()
.nodes(nodes)
.size([width, height])
.gravity(0)
.charge(0)
.linkDistance(20)
.on("tick", tick)
.start();
// declaring
var svg = d3.select("body").append("svg","div", "g")
.append("g")
.attr("width", width + margin.left + margin.right)
.attr("height", height + margin.top + margin.bottom)
.attr("transform", "translate(" + margin.left + "," + margin.top + ")");
var body = d3.selectAll("body")
.call(d3.behavior.zoom().scaleExtent([1, 168]).on("zoom", zoom));
// forming force
var g = svg.selectAll("g")
.data(nodes)
.enter().append("g");
var circle = g
.append("circle")
.attr("r", function(d) { return d.radius; })
.style("fill", function(d) { return d.color; });
// text data
g.insert("text")
.attr("text-anchor", "middle")
.text(function(d) { return d.data.name; })
.style("text-align", "center")
.style("font-size", function(d) { return (2 * d.radius - 12) / this.getComputedTextLength() * 14 + "px"; });
function tick(e) {
g
.each(cluster(10 * e.alpha * e.alpha))
.each(collide(.5))
.attr("transform", function(d) { return "translate(" + d.x + "," + d.y + ")"; });
}
g.call(force.drag)
// Move d to be adjacent to the cluster node.
function cluster(alpha) {
var max = {};
// locating the largest node in each cluster set
nodes.forEach(function(d) {
if (!(d.color in max) || (d.radius > max[d.color].radius)) {
max[d.color] = d;
}
});
return function(d) {
var node = max[d.color],
l,
r,
x,
y,
i = -1;
if (node == d) return;
x = d.x - node.x;
y = d.y - node.y;
l = Math.sqrt(x * x + y * y);
r = d.radius + node.radius;
if (l != r) {
l = (l - r) / l * alpha;
d.x -= x *= l;
d.y -= y *= l;
node.x += x;
node.y += y;
}
};
}
// resolving collisions
function collide(alpha) {
var quadtree = d3.geom.quadtree(nodes);
return function(d) {
var r = d.radius + radius.domain()[1] + padding,
nx1 = d.x - r,
nx2 = d.x + r,
ny1 = d.y - r,
ny2 = d.y + r;
quadtree.visit(function(quad, x1, y1, x2, y2) {
if (quad.point && (quad.point !== d)) {
var x = d.x - quad.point.x,
y = d.y - quad.point.y,
l = Math.sqrt(x * x + y * y),
r = d.radius + quad.point.radius + (d.color !== quad.point.color) * padding;
if (l < r) {
l = (l - r) / l * alpha;
d.x -= x *= l;
d.y -= y *= l;
quad.point.x += x;
quad.point.y += y;
}
}
return x1 > nx2
|| x2 < nx1
|| y1 > ny2
|| y2 < ny1;
});
};
}
// zoom & pan
var x = d3.scale.linear()
.domain([-width / 2, width / 2])
.range([0, width]);
var y = d3.scale.linear()
.domain([-height / 2, height / 2])
.range([height, 0]);
svg.append("div")
.attr("width", width)
.attr("height", height);
function zoom() {
svg.attr("transform", "translate(" + d3.event.translate + ")scale(" + d3.event.scale + ")");
}
}
// building the graph
d3.json('./flare.json', function(err, data, root, error, div) {
var nodeData = [];
/* var clusters = data.children;
for (var cluster = 0; cluster < clusters.length; ++cluster) {
var suppliers = clusters[cluster].children;
for (var supplier = 0; supplier < suppliers.length; ++supplier) {
var products = suppliers[supplier].children;
for (var product = 0; product < products.length; ++product) {
var node = {
cluster: clusters[cluster].name,
supplier: suppliers[supplier].name,
name: products[product].name,
size: suppliers.length
};
nodeData.push(node);
}
}
} */
var jsonData = data;
console.log (jsonData.length);
for (var count = 0; count < jsonData.length; ++ count) {
var node = {
cluster: jsonData[count].cluster,
supplier: jsonData[count].supplier,
name: jsonData[count].name,
size: jsonData[count].size
}
nodeData.push(node);
}
drawthegraphthing(nodeData, jsonData.length);
//console.log(nodeData);
});
</script>
</body>
</html>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment