此篇文章通常是詳細(xì)介紹了pyecharts結(jié)合flask架構(gòu),通常是詳細(xì)介紹怎樣在Flask架構(gòu)使得用pyecharts,文中根據(jù)實(shí)例編碼為大家介紹得非常詳盡,需用的小伙伴可以參考一下
詳細(xì)介紹
文中通常是詳細(xì)介紹怎樣在Flask架構(gòu)使得用pyecharts,有關(guān)Flask架構(gòu)應(yīng)用這兒不去做詳細(xì)詳細(xì)說明~
Flask模版3D渲染
首先要建立一個flask項(xiàng)目,flask項(xiàng)目對目錄結(jié)構(gòu)要求較低,但如果是前端后端混和新項(xiàng)目的情況下,模板文件需用儲放在templates文件夾下,不然視圖函數(shù)回到模板文件時會提醒找不著相對應(yīng)的文檔。下邊是flask項(xiàng)目地簡易目錄結(jié)構(gòu):
.
├──server.py └──templates
下述代碼是server.py中的示例的代碼:
from flask import Flask from jinja2 import Markup,Environment,FileSystemLoader from pyecharts import options as opts from pyecharts.charts import Bar app=Flask(__name__,static_folder="templates") def bar_base()->Bar: c=( Bar() .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.TitleOpts(title="Bar-基本示例",subtitle="我是副標(biāo)題")) ) return c app.route("/") def index(): c=bar_base() return Markup(c.render_embed()) if __name__=="__main__": app.run()
運(yùn)行上述代碼,使用瀏覽器打開http://127.0.0.1:5000即可訪問服務(wù),具體效果如下圖所示:
Flask前后端分離
創(chuàng)建flask項(xiàng)目和上述文件目錄保持一致,前后端分離的情況下,就需要后端將pyecharts生成的圖表返回給前端,方法就是可以將圖表生成到一個html文件中,然后返回給前端即可。
需要新建HTML文件保存位于項(xiàng)目根目錄的templates文件夾,這里以如下index.html為例.主要用到了jquery和pyecharts管理的echarts.min.js依賴。
下述是index.html中的代碼:
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>Awesome-pyecharts</title> <script src="https://cdn.bootcss.com/jquery/3.0.0/jquery.min.js"></script> <script type="text/javascript"src="https://assets.pyecharts.org/assets/echarts.min.js"></script> </head> <body> <div id="bar"style="width:1000px;height:600px;"></div> <script> $( function(){ var chart=echarts.init(document.getElementById('bar'),'white',{renderer:'canvas'}); $.ajax({ type:"GET", url:"http://127.0.0.1:5000/barChart", dataType:'json', success:function(result){ chart.setOption(result); } }); } ) </script> </body> </html>
然后就需要編寫后端的代碼了,包括flask服務(wù)以及pyecharts生成圖表,目錄結(jié)構(gòu)和模板渲染一致,這里需要注意一個問題,目前由于json數(shù)據(jù)類型的問題,無法將pyecharts中的JSCode類型的數(shù)據(jù)轉(zhuǎn)換成json數(shù)據(jù)格式返回到前端頁面中使用。因此在使用前后端分離的情況下盡量避免使用JSCode進(jìn)行畫圖。
下面是server.py中的后端代碼:
from random import randrange from flask import Flask,render_template from pyecharts import options as opts from pyecharts.charts import Bar app=Flask(__name__,static_folder="templates") def bar_base()->Bar: c=( Bar() .add_xaxis(["襯衫","羊毛衫","雪紡衫","褲子","高跟鞋","襪子"]) .add_yaxis("商家A",[randrange(0,100)for _ in range(6)]) .add_yaxis("商家B",[randrange(0,100)for _ in range(6)]) .set_global_opts(title_opts=opts.TitleOpts(title="Bar-基本示例",subtitle="我是副標(biāo)題")) ) return c app.route("/") def index(): return render_template("index.html") app.route("/barChart") def get_bar_chart(): c=bar_base() return c.dump_options_with_quotes() if __name__=="__main__": app.run()
匯總
兩篇僅僅詳細(xì)介紹了pyecharts模塊某些簡易應(yīng)用,在官方文檔中還有一些升階應(yīng)用,常常開展數(shù)據(jù)分析圖表的開發(fā)者們可以參考一下官方文檔開展學(xué)習(xí)。
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://www.ezyhdfw.cn/yun/128769.html
摘要:在談中框架和框架的區(qū)別之前,我們需要先探討如下幾個問題。通過大數(shù)據(jù)統(tǒng)計(jì)分析全球著名的網(wǎng)站對和這兩個框架的調(diào)查分析。從全球著名的代碼托管平臺上的和數(shù)量上分別為,分別為。 在談Python中Django框架和Flask框架的區(qū)別之前,我們需要先探討如下幾個問題。 一、為什么要使用框架? showImg(https://segmentfault.com/img/remote/14600000...
摘要:對個月份進(jìn)行抓取后再匯總,就得到了北京年全年的天氣數(shù)據(jù),包括最高溫度最低溫度天氣狀況風(fēng)向等信息。按月查看溫度走勢日期天氣狀況分布天氣狀況晴天和多云是北京一年中主要的天氣。北京的降水天數(shù)不多,主要在月份。 本文來自 @范洺源 投稿,在其基礎(chǔ)上做了點(diǎn)修改 最近在學(xué)爬蟲和數(shù)據(jù)分析,看到 天氣網(wǎng) 上有國內(nèi)城市一年的天氣歷史數(shù)據(jù),想以此為數(shù)據(jù)源練習(xí)一下,于是就有了這個項(xiàng)目。今天在此簡單介紹一下實(shí)...
小編寫這篇文章的主要目的,主要是用來進(jìn)行繪制折線圖,在繪制的時候,用到的是Python這門語言,主要應(yīng)用到的技能是Python pyecharts,利用它去進(jìn)行繪制折線圖,下面小編就以案例的形式,去給大家詳細(xì)的做個介紹?! ∏把浴 ∠嘈庞泻芏嗟男』锇榭戳巳绱硕鄠€案例之后肯定有所發(fā)現(xiàn),每一個案例都對應(yīng)著每一個配置,如果是官方配置文檔,說實(shí)話看起來真的很難,這樣通過案例實(shí)現(xiàn)來解決各種參數(shù)的配置,我...
摘要:根據(jù)一個大神的操作,鏈接是地址放在運(yùn)行,然后再一次安裝升級再次鍵入安裝這下在就可以引用啦 第一步:升級python 作為一個進(jìn)軍python的新菜鳥,我遇到了一個問題,在Jupyter Notebook里面我無法使用pyecharts,所以需要安裝,我百度了一個常用方法,在win10下,管理員運(yùn)行cmd,然后輸入:pip install pyecharts運(yùn)行之后發(fā)現(xiàn)安裝不了,出現(xiàn)以下...
閱讀 1066·2023-01-14 11:38
閱讀 1062·2023-01-14 11:04
閱讀 902·2023-01-14 10:48
閱讀 2378·2023-01-14 10:34
閱讀 1147·2023-01-14 10:24
閱讀 1026·2023-01-14 10:18
閱讀 654·2023-01-14 10:09
閱讀 733·2023-01-14 10:02