本篇文章为大家展示了如何在python中使用Bokeh可视化包,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。
python的五大特点是什么
python的五大特点:1.简单易学,开发程序时,专注的是解决问题,而不是搞明白语言本身。2.面向对象,与其他主要的语言如C++和Java相比, Python以一种非常强大又简单的方式实现面向对象编程。3.可移植性,Python程序无需修改就可以在各种平台上运行。4.解释性,Python语言写的程序不需要编译成二进制代码,可以直接从源代码运行程序。5.开源,Python是 FLOSS(自由/开放源码软件)之一。
问题:需要把pandas的数据绘图并通过网页显示,matplotlib需要先保存图像,不合适。
解决:在网上搜了一下,找到一篇介绍文章 python可视化工具概述,其中介绍了几个python包,总结如下:
Pandas对于简单绘图,可以随手用,但你需要学习定制matplotlib。
Seaborn可以支持更多复杂的可视化方式,但仍然需要matplotlib知识,上色功能是个亮点。
ggplot有很多功能,但还需要发展。
bokeh是一个有效的工具,如果你想建立一个可视化的服务器,这几乎是杀鸡用牛刀的事情。
pygal独立运行,可用来生成交互的svg图表和png文件。它没有基于matploglib的方案那样灵活。
Plotly可生成大多数可交互图表。你可以保存为离线文件,然后建立丰富的基于web的可视化。
感觉Bokeh比较合适,就认真研究了一下,找到一篇简单介绍Bokeh使用的文章 交互式数据可视化,在Python中用Bokeh实现,Bokeh可以直接跟Jinja2集成,将生成的图像在网页中直接显示,正满足需求。大体流程如下:
1、生成图像
p = figure(title = code, plot_width=1024, plot_height=600, x_axis_type='datetime')
p.line(x=trd_df['date'], y=trd_df['close'])
script, div = components(p)
2、在flask中传递参数
return render_template('show_stock.html',
bk_js = bokeh.resources.INLINE.render_js(),
bk_css = bokeh.resources.INLINE.render_css(),
p_script = script, div = p_div)
3、在html中调用显示
<!doctype html>
<html lang="en">
<head>
<meta charset='utf-8' />
<meta http-equiv='content-type' content='text/html; charset=utf-8' />
<title>Embed Demo</title>
{{ js_resources|indent(4)|safe }}
{{ css_resources|indent(4)|safe }}
{{ p_script|indent(4)|safe }}
</head>
<body>
{{ p_div|indent(4)|safe }}
</body>
</html>
上述内容就是如何在python中使用Bokeh可视化包,你们学到知识或技能了吗?如果还想学到更多技能或者丰富自己的知识储备,欢迎关注天达云行业资讯频道。