Django集成pyecharts实现多图表同页展示实战
本文详细介绍如何在Django项目中集成pyecharts库,实现多图表在同一页面中的展示。内容涵盖从创建Django应用、编写视图函数到配置URLconf的完整流程,并重点解析利用pyecharts的Page接口处理大规模数据(如近2万条测试集)时的分页显示技巧,帮助开发者解决大数据量下的可视化难题。
Django应用创建与配置
一、创建Application
进入与manage.py文件同级目录,执行以下命令:
py manage.py startapp NLP
随后在settings.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路由配置详解
三、编写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
]
include()函数允许引用其他URLconf文件。当Django遇到django.urls.include时,它会截断与该路径匹配的部分,并将剩余的字符串发送给被引用的URLconf进行进一步处理。
服务运行与效果验证
四、运行查看
完成上述配置后,即可验证效果,执行以下命令启动服务:
py manage.py runserver
随后打开本地站点地址进行查看。
pyecharts多图表同页展示实战
补充知识:pyecharts多图表同一页显示
可视化能力是我的短板,需要加强练习。
出于对颜值的追求,我选择了pyecharts。
今天进行回归分析时,需要直观观察数据表现,但由于数据量巨大,测试集包含将近2万条数据,单张图表无法完整展示,因此查阅了pyecharts多图表显示的相关问题。
pyecharts提供了一个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结合的实例代码就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持本站。
免责声明:本文内容仅供参考,不代表本站观点。转载或引用请注明出处。









