原生html引入axios及echarts

突发奇想:你写个报表总不能直接建个vue项目去弄吧,直接一个html就搞定了

echarts官网: Examples - Apache ECharts

 1.引入axios

 CDN引入axios:<script src="https://unpkg.com/axios/dist/axios.min.js"></script>

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
    <script src="https://unpkg.com/axios/dist/axios.min.js"></script>
</head>
<body>
    <script>
        window.onload=()=>{
            axios({
                method:'get',
                url:'http://localhost:9000/Os'
            }).then(res=>{
                console.log(res.data)
            })
        }
    </script>
</body>
</html>

2.引入echarts

    <script crossorigin="anonymous" integrity="sha512-RuUMLxuB8daxj+iqjuwA7u2lFFFQNlbnFnerb0FPhfZ761E0Wn6wD4f5vZskYgbxu+wSu36vfFHCUDaKaHHhUQ==" src="http://lib.baomitu.com/echarts/5.0.2/echarts.common.js"></script>

3.axios联合echarts使用 

 接口是自己写的

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
    <script src="https://unpkg.com/axios/dist/axios.min.js"></script>
    <script crossorigin="anonymous" integrity="sha512-RuUMLxuB8daxj+iqjuwA7u2lFFFQNlbnFnerb0FPhfZ761E0Wn6wD4f5vZskYgbxu+wSu36vfFHCUDaKaHHhUQ==" src="http://lib.baomitu.com/echarts/5.0.2/echarts.common.js"></script>
</head>
<body>
    <script>
            let xdata = []
            let total=0
            axios
            ({
                method: 'get',
                url: 'http://localhost:9000/Pg'
            }).then(res => {
                res.data.forEach(item => {
                    xdata.push({name:item.year+'',value:item.count})
                    total+=item.count
                })
                xdata.forEach(item=>{
                    item.value = Math.round((item.value/total)*100*100)/100
                })
                const OsE1 = echarts.init(document.getElementById('Ppv'), 'dark', {renderer: "svg"});
                OsE1.setOption({
                    title: {
                        text: '人口增长占比表',
                        left: 'center',
                        top:'4',
                    },
                    tooltip: {
                        trigger: 'item'
                    },
                    legend: {
                        orient: 'vertical',
                        left: '20',
                        top:'30'
                    },
                    series: [
                        {
                            name: '人口增长占比',
                            type: 'pie',
                            radius: '65%',
                            center:['65%','55%'],
                            data:xdata,
                            emphasis: {
                                itemStyle: {
                                    shadowBlur: 10,
                                    shadowOffsetX: 0,
                                    shadowColor: 'rgba(0, 0, 0, 0.5)'
                                }
                            }
                        }
                    ]
                })
            })
    </script>
    <div id="Ppv">

    </div>
    <style>
        body{
            padding: 0;
            margin: 0;
        }
        #Ppv{
            width: 400px;
            height: 300px;
        }
    </style>
</body>
</html>

 结果

  • 2
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值