当“字符串”类型在Bokeh中转换为“int”时,无法正确绘制图形

时间:2017-11-09 11:16:23

标签: python pandas bokeh

我从xml中获取一些属性值,这些属性值本质上是数字但是作为类型'string'

我正在将'字符串'类型转换为'int',并尝试在Bokeh中绘制条形图。 图表未正确填充(附加)Bokeh Graph。有什么建议吗?

以下是代码

import pandas as pd
from bokeh.charts import Bar, output_file, show
#String values fetched from xml
var='5'
var1='6'
#Converting string to int
var=int(var)
var1=int(var1)

#Creating a dataframe
d = {'col1': [var], 'col2': [var1]}
df=pd.DataFrame(data=d)
print df

#Output
#   col1  col2
#0     0     4

#Displaying with Bokeh

p=Bar(df)
output_file("bar.html")
show(p)

1 个答案:

答案 0 :(得分:1)

首先关闭:adapter.loadWithNewData(newDataCollectedFromDatabase); 是旧的,已弃用的Bar API的一部分,该API已从核心Bokeh中完全删除。它仍然可以作为bokeh.charts包使用,但 完全无法维护且不受支持 。此时不应该用于任何新工作。

但是,最近的工作大大改善了使用稳定的受支持bkcharts API对条形图和其他分类图的支持。有large new User's Guide Section纯粹致力于解释和演示许多简单和复杂的条形图。此外,现在使用标准bokeh.plotting调用很容易制作条形图,general guidance and documentation for hover tools现在也适用。

从您的示例代码中我不太清楚您要完成的任务。这是一个非常精简的版本,可能类似:

bokeh.plotting

该代码产生此输出:

enter image description here

以下是使用pandas统计信息的简单条形图的更完整示例(类似于from bokeh.io import output_file, show from bokeh.plotting import figure p = figure(x_range=['col1', 'col2']) p.vbar(x=['col1', 'col2'], top=[5, 6], width=0.8) output_file("bar.html") show(p) 将要执行的操作)和使用“cars”示例数据和Bar API的悬停工具:

bokeh.plotting

产生以下结果

enter image description here