     svg = d3.select(@element).select("svg")
     return unless svg?
     data = @get('data')
-    padding = 5
-    width = height = 600 - 2 * padding
+    width = height = @get('size') - 2 * @get('padding')
     tip = d3.tip()
       .attr('class', 'd3-tip')
       .html((d) -> d.data.name)

      .outerRadius(outerRadius)
      .cornerRadius(5)
    g = svg.append("g")
      .attr("transform", "translate(#{width/2 + padding}, #{height/2 + padding})")
    gEnter = g.append("g")
      .selectAll("path")
      .data(pie(data))

      .attr("d", arc)
      .attr("fill-opacity", (d) -> opacityScale(d.data.risk))
      .on("click", (d) =>
        category = @get('patient.categoryDisplay').findBy('name', d.data.name)
        svg.selectAll(".category").classed("active", false)
        if (@get('selectedCategory') == (category))
          @set('selectedCategory', null)
        else
          svg.selectAll(".category#{d.data.name}").classed("active", true)
          @set('selectedCategory', category)
      )
    svg.selectAll(".outer").data(pie(@data))
      .attr("fill-opacity", (d) -> opacityScale(d.data.risk))
