Comment faire pivoter un objet autour du centre d3.js

J'ai deux objets simples dans d3.js ils devraient être des cercles autour du centre de la fenêtre d'affichage (comme les planètes autour du soleil).

Je suis nouvelle d3.js et je sais que je dois utiliser des transitions mais comme les planètes ont de cercle, tout le temps, et pas seulement sur l'entrée ou à la sortie, je ne sais pas où et comment la transition.

Voici mon code actuel:

var planets = [
    {d:100,r:2},
    {d:150,r:4}
];

var w = 500, h = 400, svg, circle;

function init(){

    svg = d3.select("#drawArea").append("svg").attr({width: w, height: h});

    var center = {
        x: Math.floor(w/2),
        y: Math.floor(h/2)
    };

    svg.append('circle').attr({
        'cx': center.x,
        'cy': center.y,
        'r': 10,
        'class': 'sun'
    });

    circle = svg.selectAll(".planet")
        .data(planets)
        .enter()
            .append("circle")
                .attr("class", "planet")
                .attr("r", function(s){return s.r});

    circle.attr({
        //distance from the center
        'cx': function(s){ return center.x - s.d; },
        //center of the screen
        'cy': function(s){ return center.y; }
    });

}

Et voici une jsfiddle de jouer.

OriginalL'auteur Marc | 2013-02-14