add a new general evaluate() function to evaluate histograms, functions, graphs and splines over a numpy array