使用pyecharts,pandas,pywebio(flask) ,sklearn完成数据的分析和预测

使用pyecharts,pandas,pywebio(flask) ,sklearn的库完成,一个数据分析和预测的网页。

  • 给你找了一篇非常好的博客,你可以看看是否有帮助,链接:Flask_pyecharts的图形可视化
  • 除此之外, 这篇博客: python(基于Flask的任务清单管理系统)中的 基于Flask和pyecharts的图形可视化 部分也许能够解决你的问题, 你可以仔细阅读以下内容或跳转源博客中阅读:
  • Flask 是python web开发的微框架,Echarts酷炫的功能主要是javascript起作用,将两者结合起来,发挥的作用更大。

    • 静态请求实现步骤
      1). 去官网下载Echarts
      2). 引入看Echarts官网文档的教程
    • 动态请求步骤: 使用json和ajax请求
      1). 什么是ajax?
      AJAX = Asynchronous JavaScript and XML(异步的 JavaScript 和 XML)。AJAX 是一种用于创建快速动态网页的技术。通过在后台与服务器进行少量数据交换,AJAX 可以使网页实现异步更新。这意味着可以在不重新加载整个网页的情况下,对网页的某部分进行更新。
      2). 什么是json?
      JSON:JavaScript Object Notation (JavaScript 对象表示法)。JSON 是存储和交换文本信息的语法。类似 XML。
    # ajax中url路由对应的视图函数
    # 前端获取后台数据
    @app.route('/getdata')
    def get_data():
        language = ['python', 'java', 'c', 'c++', 'c#', 'php']
        value = ['100', '150', '100', '90', '80', '90']
        return json.dumps({'language':language,'value':value},ensure_ascii=False) 
        #如果有中文的话,就需要ensure_ascii=False
    
    
    
    # 编写在scripts标签里面,$(function() {});是$(document).ready(function(){ })的简写 
     $(function () {
                // 基于准备好的dom,初始化echarts实例
                var myChart = echarts.init(document.getElementById('main'));
                $.ajax({
                    url:'/getdata',
                    success:function (data) {
                        # 相当于python里面的将json格式解析为字典;
                        json_data=JSON.parse(data)
    
                        console.info(json_data['language'])
                        console.info(json_data['value'])
    
                        // 指定图表的配置项和数据
                        var option = {
                            title: {
                                text: '学习语言人数统计'
                            },
                            tooltip: {},
                            legend: {
                                data:['销量']
                            },
                            xAxis: {
                                data: json_data['language']
                            },
                            yAxis: {},
                            series: [{
                                name: '销量',
                                type: 'bar',
                                data: json_data['value']
                            }]
                        };
                        // 使用刚指定的配置项和数据显示图表。
                        myChart.setOption(option);
    
                    }
                })
            })