Visualization-Press: Das WordPress-Plugin Wp-D3 erlaubt es, Visualisierungen mit D3 in Posts einzubauen.
Content Management Systeme sind von jeher die natürlichen Feinde aller, die sich mit Datenvisualisierungen beschäftigen. Die Technologien dahinter sind in der Mehrzahl so neu, dass die meisten CMS nicht mit ihnen zurecht kommen. Das gilt auch für WordPress, das bekanntlich schon mit Javascript in Posts seine Schwierigkeiten hat. Bis jetzt mussten sich Nutzer mit Workarounds wie zum Beispiel iframes behelfen. Ruben von figurebelow hat nun aber ein simples Plugin geschrieben, das das Einbetten von D3-Scripts in Posts erlaubt.
Beispiel: ZJONSSONs Newton’s Balls.
[d3-link]d3.z.collide
style_balls
[/d3-link]
[d3-source canvas=“nballs“]
var w=600,h=300;
svg=d3.select(„.nballs“)
.append(„svg:svg“)
.attr(„height“,h)
.attr(„width“,w)
nodes = d3.range(15).map(function(d,i) {
radius = Math.random()*20+5;
x=Math.random()*(w-radius)+radius
y=Math.random()*(h-radius)+radius
return {radius:radius,mass:radius,x:x,y:y,px:x+Math.random()*10-5,py:y+Math.random()*10-5}
})
ball = svg.selectAll(„.ball“).data(nodes)
ball.enter()
.append(„circle“)
.attr(„class“,“ball“)
.attr(„r“,function(d) { return d.radius})
force = d3.layout.force()
.friction(1)
.nodes(nodes)
.charge(0).gravity(0)
.on(„tick.redraw“,redraw)
.start()
ball.call(force.drag)
d3.z.collide(force)
d3.z.deflect(force,0,0,w,h)
function redraw() {
ball.attr(„cx“,function(d) { return d.x})
ball.attr(„cy“,function(d) { return d.y})
force.resume()
}
[/d3-source]