• 欢迎访问搞代码网站,推荐使用最新版火狐浏览器和Chrome浏览器访问本网站!
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏搞代码吧

Django使用echarts进行可视化展示的实践

python 搞代码 4年前 (2022-01-07) 64次浏览 已收录 0个评论
文章目录[隐藏]

可视化是将数据转换成图形或图像在屏幕上显示出来,本文主要介绍了Django使用echarts进行可视化展示的实践,感兴趣的可以了解一下

本文以学生成绩折线图展示为例

条件准备

  • 电脑上有myslq数据库
  • 有 echarts 的 js 文件

连接mysql

 # settings.py 文件 DATABASES = { 'default': { 'ENGINE': 'django.db.backends.mysql', # mysql 数据库名 'NAME': 'chaochao', # mysql 登陆用户名 'USER<strong style="color:transparent">来源gao@daima#com搞(%代@#码网</strong>': 'root', # myslq 登陆密码 'PASSWORD': 'chaochao666', 'HOST': '', 'PORT': '', } } 

Django 连接 mysql 数据库教程在其他文章中,这里不再细说

Django连接mysql数据库文章地址:https://www.gaodaima.com/article/176066.htm

导入数据

可以直接在 mysql 数据库中添加数据,也可以使用超级用户在 admin 管理页面中添加数据

 # models.py 文件 class Person(models.Model): # 姓名 str类型 name = models.CharField(max_length=20,verbose_name='姓名') # 年龄 int型 age=models.IntegerField(verbose_name='年龄') # 成绩 float类型 score = models.FloatField(verbose_name='成绩') 

数据库内容:

使用echarts可视化展示

设置静态文件目录(即 static 目录)

 # settings.py 文件 STATICFILES_DIRS=(os.path.join(BASE_DIR,'static'),) 

创建如下目录结构:

js 目录中为 echarts的 js 文件,大家可以在 echarts官网下载自己需要的版本

css 目录中为 展示页面用到的 css 文件

在 echarts 官网找到想展示的实例代码

这里使用的折线图的官网地址为:https://echarts.apache.org/examples/zh/editor.html?c=line-simple

实例代码:

 option = { xAxis: { type: 'category', data: ['Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat', 'Sun'] }, yAxis: { type: 'value' }, series: [{ data: [820, 932, 901, 934, 1290, 1330, 1320], type: 'line' }] }; 

index.css 文件内容:

 #chart{ height: 500px; width: 500px; } 

echarts 展示的图表需要和 html 中的 div 元素 联系起来,并且该 div 元素必须指定 height 和 width 属性

index.html 文件内容

现在使用的 echarts 官网实例中的静态数据,下面将修改为使用mysql数据库中的数据

   <title>我的第一个django展示页面</title> <h1>学生成绩简单可视化</h1><div id="chart"></div>

现在使用的静态数据,先来看一下页面效果

已经可以看到图表了

现在,我们来修改为 myslq 数据库中的数据

首先,编写 views.py 文件,将数据库中的数据传到前端页面中

 from django.shortcuts import render from .models import Person # Create your views here. def index(request): # 查询出Person对象信息,也就是数据表中的所有数据 # 一行数据就是一个对象,一个格子的数据就是一个对象的一个属性值 objs = Person.objects.all() # locals函数可以将该函数中出现过的所有变量传入到展示页面中,即index.html文件中 return render(request,'index.html',locals()) 

修改 index.html 页面,引用数据库中的信息

只需要修改了 js 内容即可,以下为 script标签中的内容

 

现在,我们来看一下展示效果

没有图表

不要慌,打开控制台看下报错信息

这是因为Django的模板文件中,js代码接受数据库的数据时,不会判断当前数据的数据类型

也就是这里它把 “超超” 这个字符串当作了变量名

解决办法很简单,在 js 接受数据时添加上一对双引号

 

双引号的位置是:

{% for stu in objs %}
series_data.push({{ stu.score }})
{#注意这里的双引号#}
xAxis_data.push(“{{ stu.name}}”)
{% endfor %}

现在可以看到,x轴坐标变为了数据库中的学生姓名,y轴变为了数据库中的学生成绩

如果需要使用其他的 echarts 图表进行可视化展示,只需修改 script 中的代码即可

到此这篇关于Django使用echarts进行可视化展示的实践的文章就介绍到这了,更多相关Django echarts可视化内容请搜索gaodaima搞代码网以前的文章或继续浏览下面的相关文章希望大家以后多多支持gaodaima搞代码网

以上就是Django使用echarts进行可视化展示的实践的详细内容,更多请关注gaodaima搞代码网其它相关文章!


搞代码网(gaodaima.com)提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发送到邮箱[email protected],我们会在看到邮件的第一时间内为您处理,或直接联系QQ:872152909。本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:Django使用echarts进行可视化展示的实践

喜欢 (0)
[搞代码]
分享 (0)
发表我的评论
取消评论

表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址