title: How to create satellite nodes to a main node in D3.js force layout graphs
body: <p>I am attempting to create satellite nodes to main graph nodes under a force layout. Each node should have <strong>one or more corresponding satellite</strong> node attached to it.</p>
  
  <p>Here is a jsfiddle that shows the intent ( this example has a fixed  position and no force ruling the satellite node.</p>
  
  <p><a href="http://jsfiddle.net/guidoextras/zLt2sne3/1/" rel="nofollow">http://jsfiddle.net/guidoextras/zLt2sne3/1/</a></p>
  
  <pre><code>        node.append("circle")
          .attr("class", "planet_node")
          .attr("r", function(d) { return d.weight * 2 + 12; })
          .style("fill", function(d) { return color(1/d.rating); });
  
  
      node.append("circle")
          .attr("r", 5)
          .attr("class", "satellite_node")
          .attr("cx", function(d) { return d.weight * 2 + 25; })
          .attr("cy", 0)
          .style("stroke-width", "1")
          .style("stroke", "black")
          .style("fill", "cyan");
  </code></pre>
  
  <p>Satellite nodes should:</p>
  
  <ul>
  <li>be attached to the main node through a link at a fixed shorter distance. The link distance should be fixed. </li>
  <li>be under a force that comes form its main node (planet) and not get influenced by others ( this should probably not be an issue if the link's distance is always fixed )</li>
  <li>when more satellite nodes exist for the same planet node, it is expected that they can repulse each other so they don't ocupy the same position.</li>
  </ul>
  
  <p>I am thinking that to achieve this I must:</p>
  
  <ul>
  <li>consider all satellite nodes as normal nodes in the same data set</li>
  <li>enforce the linkdistance of the links between satellite nodes and planet nodes to be shorter (or fixed) &lt;- not sure how this can be done on specific links/nodes</li>
  </ul>