 				
 		private function updateKeys():void
 		{
-			getAllKeys(_keySet,[xColumn,yColumn,radiusColumn,colorColumn]);
+			_keySet.replaceKeys(getAllKeys(xColumn, yColumn, radiusColumn, colorColumn));
 		}
 	}
 }

		public function get radiusColumn():DynamicColumn { return circlePlotter.screenRadius; }
		public function get zoomToSubset():LinkableBoolean { return circlePlotter.zoomToSubset; }
		
		private function getAllKeys(outputKeySet:KeySet, inputKeySets:Array):void
		{
			outputKeySet.delayCallbacks();
			if (inputKeySets.length > 0)
				outputKeySet.replaceKeys((inputKeySets[0] as IKeySet).keys);
			else
				outputKeySet.clearKeys();
			for (var i:int = 1; i < inputKeySets.length; i++)
			{
				outputKeySet.addKeys((inputKeySets[i] as IKeySet).keys);
			}
			outputKeySet.resumeCallbacks();			
		}
		
		override public function getDataBoundsFromRecordKey(recordKey:IQualifiedKey):Array

package weave.visualization.plotters
{
	import flash.display.BitmapData;
	import flash.utils.Dictionary;
	
	import mx.utils.ObjectUtil;
	
