def _generate_items(self, df, columns):
        if not self.bin:
            super(ColorAttr, self)._generate_items(df, columns)
        else:

            if len(columns) == 1 and ChartDataSource.is_number(df[columns[0]]):

                self.bins = Bins(source=ColumnDataSource(df), column=columns[0],
                                 bin_count=len(self.iterable), aggregate=False)

                if self.sort:
                    self.bins.sort(ascending=self.ascending)

                self.items = [bin.label[0] for bin in self.bins]
            else:
                raise ValueError('Binned colors can only be created for one column of \
                                 numerical data.')
Check whether the SLA has passed or failed
dataset/ETHPy150Open bokeh/bokeh/bokeh/charts/attributes.py/ColorAttr._generate_items--crossover with--dataset/ETHPy150Open linkedin/naarad/src/naarad/reporting/diff.py/Diff.check_sla