用散景绘制可变数量的线/曲线

时间:2019-06-24 22:17:41

标签: pandas bokeh

我生成具有许多“ y”列(y1,y2,y3 ...)和一个“ x”列的熊猫数据框。 x列始终相同。我希望在同一张图上绘制所有这些x-y线/曲线。

我是否可以使bokeh将行数绘制为数据框中有多少个“ y”列的函数?这样脚本的绘制部分不依赖于固定数量的“ y”列,并且可以与列数为“ n”的任何数据框一起使用吗?

1 个答案:

答案 0 :(得分:1)

您可以循环播放:

import pandas as pd

df = pd.DataFrame({
  'x'  : [1,2,3],
  'y0' : [1,3,2],
  'y1' : [2,1,3],
})

colors = ['red', 'blue']

from bokeh.io import show
from bokeh.models import ColumnDataSource
from bokeh.plotting import figure

source = ColumnDataSource(df)
p = figure(plot_height=250)

i = 0
for name in df.columns:
    if not name.startswith('y'): continue
    p.line('x', name, color=colors[i], source=source)
    i += 1

show(p)

enter image description here