如何在Flask中实现可视化?

简介: 如何在Flask中实现可视化?

大家好,我是kuls。

今天这篇文章源于我最近接的一个小外包,里面需要用到一些web端的可视化。

其实很多朋友也希望自己能够在web端实现可视化,但是却不知道怎么下手。


1.jpg


今天来给大家说说

首先,我们web端想要去显示一些可视化的数据,我们肯定调用别人写好的库是最好的,有哪些呢?

首推charts.js这个库里面的图表也算是比较丰富的


2.jpg


https://chartjs.bootcss.com/

但是很多朋友不知道怎么调用,这你就得好好补习前端知识啦

这里给大家举个小案例,教大家如何去使用这些web端的可视化控件。

一般比较完整的开源控件都会有官方文档


3.jpg


我们先找到官方文档中的安装,然后我们找到相应的js文件进行下载


4.jpg


在这里我们找到CDNJS,cdn就不多说了,你可以简单理解为某个网站中存储了charts.js文件,我们只需要去引用。


5.jpg


进入页面有我们可以复制相应的代码,例如


<script src="https://cdnjs.cloudflare.com/ajax/libs/Chart.js/3.3.0/chart.min.js" integrity="sha512-yadYcDSJyQExcKhjKSQOkBKy2BLDoW6WnnGXCAkCoRlpHGpYuVuBqGObf3g/TdB86sSbss1AOP4YlGSb6EKQPg==" crossorigin="anonymous" referrerpolicy="no-referrer"></script>


当然k哥在这里不是非常建议使用cdn的形式导入,因为有些时候cdn会挂掉,这会导致我们无法正常使用。

所以我们在项目中新建一个charts.js文件


6.png


然后访问js的地址,把里面的内容复制到我们创建的文件中。

然后我们在html中导入我们的charts.js文件


<script src="../static/plugins/chartjs/Chartv1.min.js"></script>


我们接着看文档中是如何使用的

其中文档给了我们这样一些代码:


<canvas id="myChart" width="400" height="400"></canvas>
<script>
var ctx = document.getElementById("myChart");
var myChart = new Chart(ctx, {
    type: 'bar',
    data: {
        labels: ["Red", "Blue", "Yellow", "Green", "Purple", "Orange"],
        datasets: [{
            label: '# of Votes',
            data: [12, 19, 3, 5, 2, 3],
            backgroundColor: [
                'rgba(255, 99, 132, 0.2)',
                'rgba(54, 162, 235, 0.2)',
                'rgba(255, 206, 86, 0.2)',
                'rgba(75, 192, 192, 0.2)',
                'rgba(153, 102, 255, 0.2)',
                'rgba(255, 159, 64, 0.2)'
            ],
            borderColor: [
                'rgba(255,99,132,1)',
                'rgba(54, 162, 235, 1)',
                'rgba(255, 206, 86, 1)',
                'rgba(75, 192, 192, 1)',
                'rgba(153, 102, 255, 1)',
                'rgba(255, 159, 64, 1)'
            ],
            borderWidth: 1
        }]
    },
    options: {
        scales: {
            yAxes: [{
                ticks: {
                    beginAtZero:true
                }
            }]
        }
    }
});
</script>


也就是说我们html标签只需要写一个canvas即可,然后通过js来渲染数据。大致的思路搞清楚了,我们就来看看js中哪里是导入数据的。


datasets: [{
    label: '# of Votes',
    data: [12, 19, 3, 5, 2, 3],


不难发现data正是数据源。这时我们回到后端flask。

我们只需要创建一个接口,然后在这个函数中对数据进行分析获取,然后通过list列表传给前端html即可。


7.png


8.png


因为Flask默认使用的是Jinja2的模板,所以我们可以通过下面的方式来在js中调用后端传入的数据。


....
var ctx = $("#myChart");
var myChart = new Chart(ctx, {
    type: 'bar',
    data: {
      labels: ["积极", "中立", "消极"],
      datasets: [{
          label: '数据表',
          data: {{all_number | tojson}}, //注意这里
    :
    [
....


9.png


最终我们就可以在flask中实现可视化操作。

其实今天的文章如果了解前后端的朋友可能会觉得并不难,但是还是有很多的小伙伴会问到,所以也给大家总结了一下。

好了,今天的文章就到这啦,我们下期见。

相关文章
|
13天前
|
搜索推荐 数据可视化 数据挖掘
基于Python flask框架的招聘数据分析推荐系统,有数据推荐和可视化功能
本文介绍了一个基于Python Flask框架的招聘数据分析推荐系统,该系统具备用户登录注册、数据库连接查询、首页推荐、职位与城市分析、公司性质分析、职位需求分析、用户信息管理以及数据可视化等功能,旨在提高求职者的就业效率和满意度,同时为企业提供人才匹配和招聘效果评估手段。
基于Python flask框架的招聘数据分析推荐系统,有数据推荐和可视化功能
|
13天前
|
数据采集 数据可视化 关系型数据库
基于Python flask MySQL 猫眼电影可视化系统设计与实现
本文介绍了一个基于Python Flask框架、MySQL数据库和Layui前端框架的猫眼电影数据采集分析与可视化系统,该系统通过爬虫技术获取数据,利用Python开源数据分析库处理数据,并使用Echart可视化工具展示统计图表,旨在提供对电影市场情况和趋势的深入了解。
基于Python flask MySQL 猫眼电影可视化系统设计与实现
|
12天前
|
数据可视化 前端开发 数据挖掘
【优秀python大屏】基于python flask的广州历史天气数据应用与可视化大屏
本文介绍了一个基于Python Flask框架的广州历史天气数据应用与可视化大屏系统,该系统通过数据采集、处理、分析和可视化技术,提供了丰富的气象数据展示和决策支持,帮助用户快速了解和应对气象变化。
【优秀python大屏】基于python flask的广州历史天气数据应用与可视化大屏
|
12天前
|
数据采集 自然语言处理 数据可视化
优秀python系统案例】基于python Flask的电影票房数据爬取与可视化系统的设计与实现
本文介绍了一个基于Python Flask框架开发的电影票房数据爬取与可视化系统,该系统利用网络爬虫技术从豆瓣电影网站抓取数据,通过Python进行数据处理和分析,并采用ECharts等库实现数据的可视化展示,为电影行业从业者提供决策支持。
优秀python系统案例】基于python Flask的电影票房数据爬取与可视化系统的设计与实现
|
13天前
|
数据可视化 前端开发 数据挖掘
Python +flask+echart实现高校数据分析可视化系统
该博客文章介绍了如何使用Python、Flask框架和ECharts库实现高校数据分析可视化系统,包括工程创建、数据可视化和页面展示等步骤。
Python +flask+echart实现高校数据分析可视化系统
|
12天前
|
数据采集 数据可视化 关系型数据库
【优秀python web设计】基于Python flask的猫眼电影可视化系统,可视化用echart,前端Layui,数据库用MySQL,包括爬虫
本文介绍了一个基于Python Flask框架、MySQL数据库和Layui前端框架的猫眼电影数据采集分析与可视化系统,该系统通过爬虫技术采集电影数据,利用数据分析库进行处理,并使用Echart进行数据的可视化展示,以提供全面、准确的电影市场分析结果。
|
12天前
|
数据采集 数据可视化 大数据
【优秀python大屏案例】基于python flask的前程无忧大数据岗位分析可视化大屏设计与实现
本文介绍了一个基于Python Flask框架的前程无忧大数据岗位分析可视化大屏系统,该系统通过爬虫技术采集招聘数据,利用机器学习算法进行分析,并以可视化大屏展示,旨在提高招聘市场数据分析的效率和准确性,为企业提供招聘决策支持和求职者职业规划参考。
|
13天前
|
存储 数据采集 数据可视化
基于Python flask+MySQL+echart的电影数据分析可视化系统
该博客文章介绍了一个基于Python Flask框架、MySQL数据库和ECharts库构建的电影数据分析可视化系统,系统功能包括猫眼电影数据的爬取、存储、展示以及电影评价词云图的生成。
|
13天前
|
数据采集 存储 数据可视化
基于Python flask的猫眼电影票房数据分析可视化系统,可以定制可视化
本文介绍了一个基于Python Flask框架开发的猫眼电影票房数据分析可视化系统,该系统集成了数据爬取、存储处理、可视化展示和用户交互功能,使用户能够直观地分析和展示电影票房数据,具有高度定制性。
基于Python flask的猫眼电影票房数据分析可视化系统,可以定制可视化
|
13天前
|
数据采集 数据可视化 算法
基于Python flask的boss直聘数据分析与可视化系统案例,能预测boss直聘某个岗位某个城市的薪资
本文介绍了一个基于Python Flask框架的Boss直聘数据分析与可视化系统,系统使用selenium爬虫、MySQL和csv进行数据存储,通过Pandas和Numpy进行数据处理分析,并采用模糊匹配算法进行薪资预测。
基于Python flask的boss直聘数据分析与可视化系统案例,能预测boss直聘某个岗位某个城市的薪资