准备用于散景消耗的数据帧

时间:2019-05-13 22:58:05

标签: python bokeh

尝试使用数据框使用Bokeh进行绘图,但是绘图显示为空。初学者在这里;缺少一些基本知识。

如果我对一些基本的X和Y变量进行硬编码,那么我的绘图就可以工作,所以我知道问题与试图用作源的数据帧有关。

...

df = pd.DataFrame(j)

df.columns = ['Team','Type','Date','SLA_MET']

df['SLA_MET']= df['SLA_MET'].round(2)

pd.set_option('display.max_columns', 10)
print(df)   

enter image description here

source = ColumnDataSource(df)



p = figure(background_fill_color='gray',
     background_fill_alpha=0.5,
     border_fill_color='blue',
     border_fill_alpha=0.25,
     plot_height=600,
     plot_width=1000,
     x_axis_label='Month',
     x_axis_location='below',
     y_axis_label='% SLA Met',
     y_axis_location='left',
     title='Percentage of SLA Met',
     title_location='above',
     toolbar_location='below',
     tools='save')

p.line(source=source,x='Date',y='SLA_MET')

show(p)

enter image description here

决定通过清晰的清单进行绘制

for index, row in df.iterrows(): 
    if row[2] =='Service Request': 
        sr_list.append(row[3]) 
    else: 
        inc_list.append(row[3]) 
        date_list.append(row[1])  # Only need 1 list of dates

问题是科学计数法中的日期,日期不正确。 enter image description here

1 个答案:

答案 0 :(得分:0)

Bokeh不知道如何处理Date列中的字符串。您有两种选择:

  • 将此列转换为真实的python / numpy / pandas(数字)日期时间值,并在您的x_axis_type="datetime"调用中设置figure,或

  • 使用字符串值作为categorical factors

不清楚您的意图是什么,所以我不推荐一个。