欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Python中Django與Echarts的結(jié)合用法圖文詳解

 更新時(shí)間:2022年10月26日 10:27:26   作者:Amoor123  
ECharts是一個(gè)第三方控件,下面這篇文章主要給大家介紹了關(guān)于Python中Django與Echarts的結(jié)合用法,文中通過圖文介紹的非常詳細(xì),需要的朋友可以參考下

前言

今天為大家分享Echarts在Python 的Django框架中的使用

項(xiàng)目倉(cāng)庫(kù)為https://gitcode.net/sabian2/myechartdemo.git

公開倉(cāng)庫(kù),大家可以通過如下命令獲取項(xiàng)目文件

git clone https://gitcode.net/sabian2/myechartdemo.git

什么是Echarts

Echarts是一款基于JavaScript的數(shù)據(jù)可視化圖表庫(kù),提供直觀,生動(dòng),可交互,可個(gè)性化定制的數(shù)據(jù)可視化圖表。官網(wǎng)地址為https://echarts.apache.org/zh/index.html。在官網(wǎng)的示例欄目可以找到很多有用的示例,總有一款適合你。今天的分享也主要以示例為主。

選一個(gè)示例-簡(jiǎn)單的餅圖

這里選擇一個(gè)簡(jiǎn)單餅圖作為我們此次分享的第一個(gè)簡(jiǎn)單示例

https://echarts.apache.org/examples/zh/editor.html?c=pie-simple

圖形分析

圖形是一個(gè)餅圖,左側(cè)有圖例,上方有圖表標(biāo)題和副標(biāo)題,鼠標(biāo)挪動(dòng)到圖表上還會(huì)顯示當(dāng)前項(xiàng)目的數(shù)據(jù)

前端核心代碼分析

這個(gè)echarts主要的部分就是寫option,這是圖形的配置參數(shù)。

其中title配置標(biāo)題部分,tooltip配置鼠標(biāo)移上去的操作,legend配置圖例,series配置數(shù)據(jù)

作為初學(xué)者,主要是仿照各種示例,將數(shù)據(jù)構(gòu)造出來。

圖形的生成基本步驟

將示例文件下載后在pycharm或者其他工具中打開源代碼

上半部分向我們展示了文件的結(jié)構(gòu),我們的圖形主要是依托于一個(gè)id為container的div進(jìn)行的。后續(xù)就全是腳本,先是導(dǎo)入cdn上的echarts.min.js.

后面就是核心配置的js代碼,先取得容器元素,再初始化,填寫配置,最后是加載配置

使用myChart.setOption(option)加載配置。

綜合下來最主要的就是做option的配置,即便是加上函數(shù)用ajax定時(shí)刷新數(shù)據(jù),也是在不斷修改option的值,并執(zhí)行setOption函數(shù),以刷新頁(yè)面的數(shù)據(jù)。

那么在django中,我的思路就是只需要構(gòu)造series或者構(gòu)造series中的data,這樣在后臺(tái)直接渲染給頁(yè)面即可。

django的操作

數(shù)據(jù)構(gòu)造

這個(gè)餅圖的數(shù)據(jù)較為簡(jiǎn)單,我直接在django的視圖函數(shù)中按照示例的格式構(gòu)造數(shù)據(jù)

渲染關(guān)鍵點(diǎn)

此時(shí)渲染到模板中的data是需要加safe修飾的,不然會(huì)解析成如下的網(wǎng)頁(yè)格式,導(dǎo)致渲染圖表失敗。

最終效果

給頁(yè)面加好路由后訪問

稍復(fù)雜示例-河流圖

河流圖示例地址為
https://echarts.apache.org/examples/zh/editor.html?c=themeRiver-basic

圖形分析

每一類數(shù)據(jù)就是一條河流,寬度代表了那個(gè)時(shí)刻的流量

前端核心代碼分析

前端主要是配置數(shù)據(jù),對(duì)于仿照者而言,我們主要是修改legend和series中的data部分?jǐn)?shù)據(jù),對(duì)照同樣的格式來傳數(shù)據(jù)。

django操作

數(shù)據(jù)構(gòu)造

原有數(shù)據(jù)很清晰,只需要在視圖函數(shù)中構(gòu)造一樣格式的數(shù)據(jù)即可,然后在legend和series的兩個(gè)data出分別傳入names和data。

最終效果

添加示例沒有的標(biāo)題

從上一個(gè)示例中把title復(fù)制過來,調(diào)整下left的位置,避免和圖例沖突

即可取得標(biāo)題

添加時(shí)間軸的縮放

這個(gè)在另外一個(gè)示例中遇到的,感覺很好用,可以修改后放到這里

參考示例地址:https://echarts.apache.org/examples/zh/editor.html?c=custom-profile給河流圖的配置加上這樣的參數(shù),就可以縮放了

縮放欄的位置由dataZoom中的位置參數(shù)調(diào)整,可以根據(jù)實(shí)際擺放。鼠標(biāo)中軸也可以控制放大和縮小。

操控示例-獲得沒有示例的堆疊柱狀圖

官方示例有堆疊條形圖,但是沒有堆疊柱狀圖,這里教大家怎么調(diào)整

其實(shí)非常簡(jiǎn)單,只需要把兩個(gè)坐標(biāo)軸名稱互換,xAxis和yAxis換個(gè)位置,馬上就倒過來了!

其他

配色調(diào)整

根據(jù)官方文檔,顏色調(diào)整可以用調(diào)色盤,預(yù)先給定一系列顏色,讓系統(tǒng)選用,系統(tǒng)會(huì)按照顏色出現(xiàn)的順序選用。

還有就是直接在數(shù)據(jù)中擬合顏色參數(shù)

比如在單個(gè)柱子顏色的示例中

https://echarts.apache.org/examples/zh/editor.html?c=bar-data-color

單個(gè)柱子的顏色直接在data數(shù)據(jù)里用itemStyle調(diào)整,我們可以在django后臺(tái)預(yù)先定義一組顏色,然后用random.choice 函數(shù)隨機(jī)選擇一個(gè)。

數(shù)據(jù)擬合注意點(diǎn)

在擬合數(shù)據(jù)時(shí),js的字典對(duì)象名稱是不帶引號(hào)的,在我們后端傳入數(shù)據(jù)時(shí),Python字典鍵是可以帶引號(hào)的,這個(gè)并不會(huì)影響解析。比如第一個(gè)示例中餅圖和他的數(shù)據(jù)。

更多的圖形大家就參照著示例擬合數(shù)據(jù),傳給前端就可以了!

總結(jié)

到此這篇關(guān)于Python中Django與Echarts結(jié)合用法的文章就介紹到這了,更多相關(guān)Python中Django與Echarts結(jié)合用法內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • python函數(shù)裝飾器之帶參數(shù)的函數(shù)和帶參數(shù)的裝飾器用法示例

    python函數(shù)裝飾器之帶參數(shù)的函數(shù)和帶參數(shù)的裝飾器用法示例

    這篇文章主要介紹了python函數(shù)裝飾器之帶參數(shù)的函數(shù)和帶參數(shù)的裝飾器用法,結(jié)合實(shí)例形式分析了Python函數(shù)裝飾器中函數(shù)帶多個(gè)參數(shù)以及裝飾器帶有多個(gè)參數(shù)的具體原理與實(shí)現(xiàn)方法,需要的朋友可以參考下
    2019-11-11
  • Python匿名函數(shù)及應(yīng)用示例

    Python匿名函數(shù)及應(yīng)用示例

    這篇文章主要介紹了Python匿名函數(shù)及應(yīng)用,結(jié)合實(shí)例形式分析了Python匿名函數(shù)的功能、定義及函數(shù)作為參數(shù)傳遞的相關(guān)應(yīng)用操作技巧,需要的朋友可以參考下
    2019-04-04
  • Python3.7中安裝openCV庫(kù)的方法

    Python3.7中安裝openCV庫(kù)的方法

    這篇文章主要介紹了Python3.7中安裝openCV庫(kù)的方法,非常不錯(cuò),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2018-07-07
  • Python作用域(局部?全局)及global關(guān)鍵字使用詳解

    Python作用域(局部?全局)及global關(guān)鍵字使用詳解

    這篇文章主要為大家介紹了Python作用域(局部?全局)及global關(guān)鍵字使用詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-10-10
  • python深度學(xué)習(xí)tensorflow入門基礎(chǔ)教程示例

    python深度學(xué)習(xí)tensorflow入門基礎(chǔ)教程示例

    這篇文章主要為大家介紹了python深度學(xué)習(xí)tensorflow入門基礎(chǔ)教程示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-06-06
  • 關(guān)于pycharm?python3.7成功安裝dlib庫(kù)的問題

    關(guān)于pycharm?python3.7成功安裝dlib庫(kù)的問題

    這篇文章主要介紹了pycharm?python3.7成功安裝dlib庫(kù)的解決方法,本文分步驟給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2021-12-12
  • Python閉包及裝飾器運(yùn)行原理解析

    Python閉包及裝飾器運(yùn)行原理解析

    這篇文章主要介紹了python閉包及裝飾器運(yùn)行原理解析,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-06-06
  • 解讀Python中degrees()方法的使用

    解讀Python中degrees()方法的使用

    這篇文章主要介紹了Python中degrees()方法的使用,是Python入門中的基礎(chǔ)知識(shí),需要的朋友可以參考下
    2015-05-05
  • 如何使用五行Python代碼輕松實(shí)現(xiàn)批量摳圖

    如何使用五行Python代碼輕松實(shí)現(xiàn)批量摳圖

    簡(jiǎn)單來說,摳圖就是將照片的主體人或物品從圖片中摳出來,以便貼到別處使用,下面這篇文章主要給大家介紹了關(guān)于如何使用五行Python代碼輕松實(shí)現(xiàn)批量摳圖的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2022-04-04
  • 淺析python表達(dá)式4+0.5值的數(shù)據(jù)類型

    淺析python表達(dá)式4+0.5值的數(shù)據(jù)類型

    在本篇文章里小編給大家整理的是一篇關(guān)于python表達(dá)式4+0.5值的數(shù)據(jù)類型的知識(shí)點(diǎn)內(nèi)容,需要的的朋友們學(xué)習(xí)下。
    2020-02-02

最新評(píng)論