code: function (hash) {
  		var wrapper = this;
  
  		each(['x', 'y', 'r', 'start', 'end', 'width', 'height', 'innerR'], function (key) {
  			wrapper[key] = pick(hash[key], wrapper[key]);
  		});
  
  		wrapper.attr({
  			d: wrapper.renderer.symbols[wrapper.symbolName](
  					mathRound(wrapper.x * 2) / 2, // Round to halves. Issue #274.
  					mathRound(wrapper.y * 2) / 2,
  					wrapper.r,
  					{
  						start: wrapper.start,
  						end: wrapper.end,
  						width: wrapper.width,
  						height: wrapper.height,
  						innerR: wrapper.innerR
  					}
  			)
  		});
  	}
docs: If one of the symbol size affecting parameters are changed,
  check all the others only once for each call to an element's
  .attr() method
  @param {Object} hash