public double[] getNumericLabelsFromMethod(Object o)
	{
		LOG.trace("Retrieving double[] for method based labels");
		if(this.numericLabelMethods == null)
		{
			this.initNumericLabelMethods();
			
			if(this.numericLabelMethods == null || this.numericLabelMethods.size() == 0)
			{
				LOG.trace("No numeric label methods found.");
				return null;
			}
		}
		ResizableDoubleArray arr = new ResizableDoubleArray();
		
		for(String methodName : this.numericLabelMethods) {
			LOG.trace("Entering " + methodName);
			Method m = null;
			try
			{
				LOG.trace("Retreiving data from " + methodName);
				m = o.getClass().getDeclaredMethod(methodName);
				
			}
			catch (SecurityException e1)
			{
				LOG.error(e1);
			}
			catch (NoSuchMethodException e)
			{
				LOG.error(e);
			}
			
			
			try {
				
				arr.addElement((Double)m.invoke(o));
			} catch (IllegalArgumentException e) {
				
				LOG.error(e);
			} catch (IllegalAccessException e) {
				
				LOG.error(e);
			}
			catch (InvocationTargetException e)
			{
				LOG.error(e);
			}
			
		}
		return arr.getElements();
	}