当前位置:首页 >> 脚本专栏

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("预测",att,v_pred,is_smooth=True)
    page.add_chart(line)
  page

再次感叹一下,有了pyecharts,妈妈再也不用担心我不会画图了

以上这篇Django与pyecharts结合的实例代码就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。