1. 程式人生 > 程式設計 >Django與pyecharts結合的例項程式碼

Django與pyecharts結合的例項程式碼

一、建立Application

轉到manage.py的同級目錄,執行:

py manage.py startapp NLP

在sitting.py中註冊該Application:

# Application definition
#包含專案中啟用的所有Django應用
INSTALLED_APPS = [
 'polls.apps.PollsConfig',#將建立的polls新增到專案中
 'NLP'
 'django.contrib.admin','django.contrib.auth','django.contrib.contenttypes','django.contrib.sessions','django.contrib.messages','django.contrib.staticfiles',]

二、編寫檢視

開啟系統生成的NLP資料夾,開啟檔案views.py,輸入如下程式碼,新建了一個名叫index的檢視

from django.http import HttpResponse
 
def index(request):
 return HttpResponse("Hello,world. You're at the NLP index.")

三、編寫URLconf

1、為了使得編寫的index檢視有一個URL對映,在同級目錄下新建一個urls.py檔案,在其中輸入如下程式碼:

from django.urls import path
from . import views
urlpatterns = [
 path('',views.index,name='index'),]

path()函式的用法:

route(必須)

route 是一個匹配 URL 的準則(類似正則表示式)。當 Django 響應一個請求時,它會從 urlpatterns 的第一項開始,按順序依次匹配列表中的項,直到找到匹配的項。

view(必須)

當 Django 找到了一個匹配的準則,就會呼叫這個特定的檢視函式,並傳入一個HttpRequest 物件作為第一個引數,被“捕獲”的引數以關鍵字引數的形式傳入。

name(可選)

為 URL 取名能使你在 Django 的任意地方唯一地引用它,尤其是在模板中。這個有用的特性允許你只改一個檔案就能全域性地修改某個 URL 模式。

kwargs(可選)

任意個關鍵字引數可以作為一個字典傳遞給目標檢視函式.

2、在根URLconf中建立剛剛新建的NLP的urls模組,開啟mysit/urls.py,並在其urlpatterns模組中插入一個include():

from django.contrib import admin
from django.urls import path,include
 
urlpatterns = [
 path('admin/',admin.site.urls),path('NLP',include('NLP.urls')),#包含app NLP的所有url
]

函式 inclde()允許引用其它 URLconfs。每當 Django 遇到 :func:~django.urls.include 時,它會截斷與此項匹配的 URL 的部分,並將剩餘的字串傳送到 URLconf 以供進一步處理。

四、執行檢視

現在就可以看看效果了,執行:

py manage.py runserver

開啟本地站點檢視

補充知識:pyecharts多圖表同一頁顯示

視覺化是本人弱項,加強加強。。。。

顏控,喜歡pyecharts

今天跑回歸時,需要直觀的去看一下資料,奈何資料量太大,測試集有將近2萬條資料,一張圖無法完成的情況下,查了一下pyechart多圖表顯示問題

pyechart提供了一個介面Page,只需要呼叫方法add("待新增圖表名")即可

以下為官方提供的介面呼叫示例:

  from pyecharts import Page,Line,Bar
  page = Page()
  line = Line('Demo Line')
  # ... Add data to line
  page.add_chart(line,name='line')
  bar = Bar('Demo kline')
  # ... Add data to bar
  page.add_chart(bar)

本人例項:

  from pyecharts import Page,Line
  page = Page()
  attr = list(range(1,(len(X_test)+1)))
  v1 = list(y_test)
  v2 = list(y_pred)
  for i in range(0,2):
    line = Line()
    att = attr[100*i:100*(i+1)+1]
    v_test = v1[100*i:100*(i+1)+1]
    v_pred = v2[100*i:100*(i+1)+1]
    line.add("實際",att,v_test,is_smooth=True)
    line.add("預測",v_pred,is_smooth=True)
    page.add_chart(line)
  page

再次感嘆一下,有了pyecharts,媽媽再也不用擔心我不會畫圖了

以上這篇Django與pyecharts結合的例項程式碼就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支援我們。