<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          Flask結(jié)合ECharts實現(xiàn)在線可視化效果,超級詳細(xì)!

          共 6727字,需瀏覽 14分鐘

           ·

          2021-08-06 23:34


          一、Flask框架基本使用

          在開始可視化之前,先讓大家對Flask有一個大概了解和基本使用

          Flask和Django都是Python最常用的兩個網(wǎng)站框架,其中Flask更加輕巧,精簡,便捷。

          本文也將使用Flask作為演示案例,下面教大家Flask的基本使用

          1.Flask安裝

          通過下面這個命令可以直接安裝python

          pip install flask
          pip install flask_cors

          2.Flask代碼套路


          之所以叫代碼套路,是因為用Flask的時候,這些是必須寫的,可以說是固定的


          from flask_cors import *
          from flask import Flask,render_template,request,Response,redirect,url_for
          #內(nèi)網(wǎng)ip
          app = Flask(__name__)

          if __name__ == "__main__":    
              """初始化,debug=True"""
              app.run(host='127.0.0.1', port=5000,debug=True)


          這里host是網(wǎng)站ip,端口設(shè)為5000,開啟debug模式(如果在真正上線的情況下可以去掉這個)


          CORS(app, supports_credentials=True)


          如果需要前后端分離或者在其他地方使用異步請求的時,需要加上這一行,解決跨域問題。



          3.URL路由


          第一種:跳轉(zhuǎn)頁面帶參數(shù)

          #跳轉(zhuǎn)頁面帶參數(shù)
          @app.route('/pie-nest')
          def index():
              return render_template('pie-nest.html', roomid = roomid)


          roomid是要傳過去的參數(shù)值


          第二種:跳轉(zhuǎn)頁面不帶參數(shù)

          #跳轉(zhuǎn)頁面不帶參數(shù)
          @app.route('/pie-nest')
          def index():
              return render_template('pie-nest.html')


          第三種:Api接口返回Json數(shù)據(jù)

          #Api接口返回Json數(shù)據(jù)
          @app.route('/pie_nest_data')
          def pie_nest_data():
              data_list = {}
              data1 = ['公眾號:Python研究者','直達(dá)''營銷廣告''搜索引擎''郵件營銷''聯(lián)盟廣告''視頻廣告''百度''谷歌''必應(yīng)''其他']
              data_list['data1'] = data1
              return Response(json.dumps(data_list), mimetype='application/json')



          第四種:獲?。▊鬟f)參數(shù)

          ###獲取(傳遞)參數(shù)
          @app.route('/alldata')
          def alldata():
              d = request.args.get('d')
              return Response(json.dumps(d), mimetype='application/json')


          其中d作為傳遞的參數(shù)


          二、ECharts的使用

          直接百度ECharts或者通過下面鏈接都有可以找到ECharts官網(wǎng)
          https://echarts.apache.org/examples/zh/index.html#chart-type-globe


          可以看到很多的可視化圖表,下面教大家如何引入到Flask中,并且可以通過Flask去修改數(shù)據(jù),在網(wǎng)頁端更新可視化中數(shù)據(jù)。

          下面以這個圖例為例
          https://echarts.apache.org/examples/zh/editor.html?c=pie-nest


          點擊右上角的:下載實例

          下載之后就是一個html文件

          在和py文件同級目錄下新建templates文件夾,將下載好的html文件夾放進(jìn)去

          在py文件中編寫url路由
          #進(jìn)入頁面
          @app.route('/pie-nest')
          def index():
              return render_template('pie-nest.html')

          訪問一下鏈接就可以出來可視化效果
          http://127.0.0.1:5000/pie-nest



          三、Flask結(jié)合ECharts

          上面已經(jīng)將html和放到Flask中,但是數(shù)據(jù)是固定的



          為了讓數(shù)據(jù)是動態(tài)的,下面通過Flask去修改數(shù)據(jù),然后更新到html網(wǎng)頁可視化中

          #pie-nest-data
          @app.route('/pie_nest_data')
          def pie_nest_data():
              data_list = {}
              data1 = ['公眾號:Python研究者','直達(dá)''營銷廣告''搜索引擎''郵件營銷''聯(lián)盟廣告''視頻廣告''百度''谷歌''必應(yīng)''其他']
              data_list['data1'] = data1
              data2 = [
                          {'value'2000'name''Python研究者''selected'True},
                          {'value'1548'name''搜索引擎'},
                          {'value'775'name''直達(dá)'},
                          {'value'679'name''營銷廣告'}
                      ]
              data_list['data2'] = data2
              data3 =[
                          {'value'1048'name''百度'},
                          {'value'335'name''直達(dá)'},
                          {'value'310'name''郵件營銷'},
                          {'value'251'name''谷歌'},
                          {'value'234'name''聯(lián)盟廣告'},
                          {'value'147'name''必應(yīng)'},
                          {'value'135'name''視頻廣告'},
                          {'value'102'name''其他'}
                      ]
              data_list['data3'] = data3
              return Response(json.dumps(data_list), mimetype='application/json')


          訪問下面這個鏈接就可以獲取到j(luò)son數(shù)據(jù)

          http://127.0.0.1:5000/pie_nest_data



          修改html


          首先引入jquery文件,后面異步ajax請求需要用到

          在py統(tǒng)計目錄下新建static/js

          <script type="text/javascript" src="../static/js/jquery-2.1.4.min.js"></script>


          添加異步請求代碼

          $.ajax({
              type:'GET',
              url:"http://127.0.0.1:5000/pie_nest_data",
              dataType:'json',
              success:function(data){
                    console.log(data);
                    //html原本的js代碼
              }
          });


          修改html原本中的js代碼(三處)






          這樣我們就修改好了。


          然后在訪問一下

          http://127.0.0.1:5000/pie-nest



          ok,這樣html可視化就是動態(tài)的,也成功將Flask和ECharts結(jié)合在一起

          四、總結(jié)

          如何利用Flask框架結(jié)合ECharts,將采集的數(shù)據(jù)實現(xiàn)在線可視化效果



          最后推薦一下我們的星球:由菜鳥學(xué)Python原班人馬建了一個投資星球,匯聚一批喜歡投資的朋友一起分享投資的技巧,不限于基金,股票等其他品種,提高自己的財商,一起讀書打卡,歡迎加入。






          推薦閱讀:

          入門: 最全的零基礎(chǔ)學(xué)Python的問題  | 零基礎(chǔ)學(xué)了8個月的Python  | 實戰(zhàn)項目 |學(xué)Python就是這條捷徑


          干貨:爬取豆瓣短評,電影《后來的我們》 | 38年NBA最佳球員分析 |   從萬眾期待到口碑撲街!唐探3令人失望  | 笑看新倚天屠龍記 | 燈謎答題王 |用Python做個海量小姐姐素描圖 |碟中諜這么火,我用機(jī)器學(xué)習(xí)做個迷你推薦系統(tǒng)電影


          趣味:彈球游戲  | 九宮格  | 漂亮的花 | 兩百行Python《天天酷跑》游戲!


          AI: 會做詩的機(jī)器人 | 給圖片上色 | 預(yù)測收入 | 碟中諜這么火,我用機(jī)器學(xué)習(xí)做個迷你推薦系統(tǒng)電影


          小工具: Pdf轉(zhuǎn)Word,輕松搞定表格和水?。?/a> | 一鍵把html網(wǎng)頁保存為pdf!|  再見PDF提取收費! | 用90行代碼打造最強(qiáng)PDF轉(zhuǎn)換器,word、PPT、excel、markdown、html一鍵轉(zhuǎn)換 | 制作一款釘釘?shù)蛢r機(jī)票提示器! |60行代碼做了一個語音壁紙切換器天天看小姐姐!


          年度爆款文案


          點閱讀原文,領(lǐng)廖雪峰視頻資料!

          瀏覽 15
          點贊
          評論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報
          評論
          圖片
          表情
          推薦
          點贊
          評論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  走光无码一区二区三区 | 91人人澡人人爽人人看 | 中国三级片91 | 亚洲精选一区二区三区 | 亚洲无码成人在线观看 |