I created a multiple line plot in Bokeh using a for loop (code below).
In the ouput example there are only two curves. In this case I can set a list of colors for each curve. But, How can I use one of the Bokeh palettes (e.g. Paired) if I need to plot a large number of curves? I'd like to automate this in order to avoid having to make color lists every time I increase the number of lines to be plotted.
import pandas as pd
import numpy as np
from bokeh.core.properties import value
from bokeh.plotting import figure, show
from bokeh.io import output_notebook
from bokeh.models import ColumnDataSource, CDSView, GroupFilter, HoverTool
from bokeh.palettes import Paired
bokeh_test=pd.read_excel(data, 'bokeh line plot')
display(bokeh_test)
x   y
item        
A   4   0.0000
A   5   0.0000
A   36  39.8879
A   66  46.2022
A   97  32.9306
A   127 25.7896
A   158 21.9209
A   189 18.6405
B   6   4.4775
B   7   1.1710
B   8   0.0000
B   38  45.7007
B   68  61.6806
B   98  43.1121
B   129 25.0558
B   160 33.9727
B   190 32.0657
B   221 29.2204
B   251 24.9480
output_notebook()
source=ColumnDataSource(data=bokeh_test)
list1=np.unique(source.data['item']).tolist() # Getting a list for using with CDSView filters
# result = ['A', 'B']
tools = 'save, pan, box_zoom, reset, wheel_zoom,tap'
    
           
p = figure(plot_height=400, 
           plot_width=400,
           x_axis_label='x', 
           y_axis_label='y',
           toolbar_location='above',
           tools=tools
           )
color=['red', 'blue', 'green']
for i in range(len(list1)):
    view=CDSView(source=source, filters=[GroupFilter(column_name='item', group=list1[i])])
    p.line(x='x', 
           y='y',
           source=source,
           line_color=color[i],
           view=view,
           legend=list1[i],
           line_width=2
          )
hover=HoverTool(tooltips = [('Item', '@item'), ('X', '@x'), ('Y', '@y')], mode='mouse')
p.add_tools(hover)
p.legend.location = "top_right"
p.legend.title= "Item"
show(p)

 
     
    
