def _get_constrained_labels(self,remove_dimensions=False,**kwargs):
        """
            returns labels which have updated minima and maxima,
            depending on the kwargs supplied to this
        """
        new_labels = []
        for label_no,label in enumerate(self.labels):
            new_label = LabelDimension(label)
            remove = False
            for k in kwargs:
                if k == label.name:
                    new_label.max = kwargs[k]
                    new_label.min = kwargs[k]
                    remove = True
                if k == label.name+'__lt':
                    if new_label.units == '1':
                        new_label.max = np.min([new_label.max,kwargs[k]-1]) # is this right?
                    else:
                        new_label.max = np.min([new_label.max,kwargs[k]])
                    #remove = True
                if k == label.name+'__lte':
                    new_label.max = np.min([new_label.max,kwargs[k]])
                    #remove = True
                if k == label.name+'__gt':
                    if new_label.units == '1':
                        new_label.min = np.max([new_label.min,kwargs[k]+1])
                    else:
                        new_label.min = np.max([new_label.min,kwargs[k]])
                    #remove = True
                if k == label.name+'__gte':
                    new_label.min = np.max([new_label.min,kwargs[k]])
                    #remove = True
                if k == label.name+'__evals':
                    remove = True
            if remove_dimensions:
                if remove:
                    # skipping removed labels
                    continue
            new_labels.append(new_label)
        return new_labels
def _get_constrained_labels ( self , remove_dimensions = False , ** kwargs ) : new_labels = [ ] for label_no , label in enumerate ( self . labels ) : new_label = LabelDimension ( label ) remove = False for k in kwargs : if k == label . name : new_label . max = kwargs [ k ] new_label . min = kwargs [ k ] remove = True if k == label . name + '__lt' : if new_label . units == '1' : new_label . max = np . min ( [ new_label . max , kwargs [ k ] - 1 ] ) else : new_label . max = np . min ( [ new_label . max , kwargs [ k ] ] ) if k == label . name + '__lte' : new_label . max = np . min ( [ new_label . max , kwargs [ k ] ] ) if k == label . name + '__gt' : if new_label . units == '1' : new_label . min = np . max ( [ new_label . min , kwargs [ k ] + 1 ] ) else : new_label . min = np . max ( [ new_label . min , kwargs [ k ] ] ) if k == label . name + '__gte' : new_label . min = np . max ( [ new_label . min , kwargs [ k ] ] ) if k == label . name + '__evals' : remove = True if remove_dimensions : if remove : continue new_labels . append ( new_label ) return new_labels
returns labels which have updated minima and maxima,
            depending on the kwargs supplied to this