Kuidas Bokehiga joonistades joonistada värvipaleti automaatselt?
When Plotting With Bokeh
Lahendus:
Tõenäoliselt on kõige lihtsam värvide loend lihtsalt hankida ja seda ise kasutadatööriistad:
importige numpy np -na bokeh -st. joonistage impordifiguur, output_file, show # valige palett bokeh -st. paletid impordivad Dark2_5 paletina # itertools tegeleb jalgrattasõidu importimisega itertools output_file ('bokeh_cycle_colors.html') p = joonis (laius = 400, kõrgus) = 400) x = np.linspace (0, 10) # loo värvide iteraatori värvid = itertools.cycle (palett) m jaoks, värv zip (vahemik (10), värvid): y = m * x p.line ( x, y, legend = 'm = {}'. formaat (m), värv = värv) p.legend.location = 'top_left' show (p) 
Kaks väikest muudatust muudavad Python 3 jaoks eelneva vastuse.
muudetud:m, värv zip (vahemik (10), värvid):
enne:m, värv itertools.izip (xrange (10), värvid):
Saate määratleda lihtsa generaatori, mis muudab teie jaoks värve.
Pythonis 3:
alates bokeh.palettes import Kategooria 10 import itertools def color_gen (): itertools.cycle (kategooria10 [10]) saagis color = color_gen ()või pythonis 2 (või 3):
alates bokeh.palettes import Kategooria 10 impordi tööriistad def color_gen (): c jaoks itertools.cycle (Kategooria 10 [10]): saagikus c color = color_gen ()ja kui vajate uut värvi, tehke järgmist.
p.line (x, y1, line_width = 2, color = color) p.line (x, y2, line_width = 2, color = color)Siin on ülaltoodud näide:
p = joonis (laius = 400, kõrgus = 400) x = np.linspace (0, 10) m, c in zip (vahemik (10), värv): y = m * x p.line (x, y, legend = 'm = {}'. formaat (m), värv = c) p.legend.location = 'top_left' show (p) 