pyecharts与flask结合做前端,python中pyecharts模块
本文主要介绍pyecharts与flask框架的结合,以及如何在Flask框架中使用pyecharts。本文通过示例代码给大家做了非常详细的介绍,有需要的朋友可以参考一下。
00-1010烧瓶模板介绍渲染烧瓶前端分离总结
目录
本文主要介绍如何在Flask框架中使用pyecharts,这里没有关于Flask框架使用的具体说明~
介绍
首先,你需要创建一个flask项目。flask项目对目录结构要求不高,但如果是前端和后端混合的项目,模板文件必须存放在templates文件夹中,否则当view函数返回模板文件时会提示找不到对应的文件。以下是flask项目的简单目录结构:
服务器. py
模板
以下代码是server.py中示例的代码:
从烧瓶进口烧瓶
从jinja2导入标记、环境、文件系统加载器
从pyecharts将选项作为选项导入
从pyecharts.charts导入栏
app=Flask(__name__,static_folder=templates )
def bar_base() - Bar:
c=(
酒吧()。add_xaxis([衬衫,毛衣,雪纺衫,裤子,高跟鞋,袜子])。add_yaxis(商家A ,[5,20,36,10,75,90])。add_yaxis(商家B ,[15,25,16,55,48,8])。set _ global _ opts(title _ opts=opts . title pts(title= bar-basic example ,subtitle=我是字幕))
)
返回c
@app.route(/)
定义索引():
c=bar_base()
返回标记(c.render_embed())
if __name__==__main__:
app.run()
运行上面的代码,用浏览器打开http://127.0.0.1:5000访问服务。具体效果如下图所示:
Flask模板渲染
创建的flask项目与上述文件目录一致。当前端和后端分离时,后端需要将pyecharts生成的图表返回给前端。方法是将图表生成为html文件,然后返回到前端。
您需要创建一个新的HTML文件来保存位于项目根目录下的templates文件夹。这里,以下面的index.html为例。主要使用jquery和pyecharts管理的echarts.min.js依赖。
以下是index.html中的代码:
!声明文档类型
超文本标记语言
头
meta charset=UTF-8
titleAwesome-pyecharts/title
script src= https://cdn . bootcss.com/jquery/3 . 0 . 0/jquery . min . js /script
script type= text/JavaScript src= https://assets . pye charts . org/assets/echarts . min . js /script
/头
身体
div id= bar style= width :1000 px;身高:600 px;/div
脚本
$(
函数(){
var chart=echarts . init(document . getelementbyid( bar ), white ,{ renderer : canvas });
$.ajax({
键入: GET ,
URL : http://127 . 0 . 0 . 0,1:5000/条形图,
数据类型: json ,
success:函数(结果){
chart.setOption(结果);
}
});
}
)
/脚本
/body
/html
然后需要写后端代码,包括flask服务和pyecharts的图表生成。目录结构与模板渲染一致。这里有一个问题需要注意。目前由于json数据类型的问题,无法将pyecharts中的JSCode数据转换成json数据格式返回前端页面使用。所以尽量避免在前后端分离的情况下用JSCode绘图。
下面是server.py中的后端代码:
从随机导入randrange
从烧瓶导入烧瓶,渲染模板
从pyecharts将选项作为选项导入
从pyecharts.charts导入栏
app=Flask(__name__,static_folder=templates )
def bar_base() - Bar:
c=(
酒吧()。add_xaxis([衬衫,毛衣,雪纺衫,裤子,高跟鞋,袜子])。add_yaxis(商家a ,[rand range (0,100) for _ inrange (6)])。add_yaxis(商家B ,[rand range (0,100) for _ inrange (6)])。set _ global _ opts(title _ opts=opts . title pts(title= bar-basic example ,subtitle=我是字幕))
)
返回c
@app.route(/)
定义索引():
返回render_template(index.html )
@ app . route(/条形图)
def get_bar_chart():
c=bar_base()
return c . dump _ options _ with _ quotes()
if __name__==__main__:
app.run()
同样,运行项目,用浏览器打开http://127.0.0.133605000访问服务。
Flask前后端分离
两篇文章只介绍了pyecharts模块的一些简单用法,官方文档中还有很多高级用法。经常做图表分析的开发者可以参考官方文档进行学习。
关于pyecharts结合flask框架的使用,本文到此结束。有关pyechartsflask框架的更多信息,请搜索热门IT软件开发工作室之前的文章或继续浏览下面的相关文章。希望大家以后多多支持热门IT软件开发工作室!
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。