#echarts#折线图#饼图

python 复制代码
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>折线图</title>
</head>
<body>
    <div id="app" style="width:100%;height:100%;">
        <div id="chart-container" style="width:1000px;height:800px;"></div>
    </div>
    <script src="./vue.js"></script>
    <script src="./echarts.js"></script>
    <script src="./sales.js"></script>
    <script>
        Vue.createApp({
            data(){
                return{
                    salesData:salesData,
                    salesCount:[]
                }
            },
            created(){
                this.salesData.forEach(data => {
                    let item = this.salesCount.find(ele => ele.name==data.storeName)
                    if(item){
                        item.count++
                    } else {
                        this.salesCount.push({
                            name:data.storeName,
                            count:1
                        })
                    }
                });
                console.log(this.salesCount)
            },
            mounted(){
                var chartDom = document.getElementById("chart-container");
                var myChart = echarts.init(chartDom);
                var option = {
                    title:{
                        text : "门店数量",
                        left : "center"
                    },
                    tooltip:{
                        trigger:"item"
                    },
                    xAxis:[{
                        type:"category",
                        data:this.salesCount.map(data => data.name),
                    }],
                    yAxis:[{
                        type:"value"
                    }],
                    series:[{
                        name:"hah",
                        type:"line",
                        data:this.salesCount.map(data => data.count)
                    }]
                };
                option && myChart.setOption(option)
            },
            methods:{}
        }).mount('#app');
    </script>
</body>
</html>

饼图:

python 复制代码
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>饼图</title>
</head>
<body>
    <div id="app" style="width:100%; height:100%;">
        <div id="chart-container" style="width:500px; height:400px;"></div>
    </div>
    <script src="./vue.js"></script>
    <script src="./echarts.js"></script>
    <script src="./sales.js"></script>
    <script>
        Vue.createApp({
            data() {
                return {
                    salesData:salesData,
                    salesCount: []
                }
            },
            created() {
                this.salesData.forEach(data => {
                    if (data.productType == "家具产品") {
                        let item = this.salesCount.find(ele => ele.name == data.storeName)
                        if(item) {
                            item.value++
                        } else {
                            this.salesCount.push({
                                name:data.storeName,
                                value:1
                            });
                        }
                    }
                })
                console.log(this.salesCount);
            },
            mounted() {
                var chartDom = document.getElementById("chart-container");
                var myChart = echarts.init(chartDom);
                var option = {
                    title:{
                        text:"家具产品门店数",
                        subtext:'',
                        left:"center"
                    },
                    tooltip:{
                        trigger:"item",
                        formatter:'{a} <br/> {b}:{c}({d}%)'
                    },
                    legend:{
                        orient:"vertical",
                        right:"right",
                        top:"middle"
                    },
                    series:[{
                        name:"direct",
                        type:"pie",
                        data:this.salesCount,
                    }]
                };
                option && myChart.setOption(option);
            },
            methods: {}
        }).mount('#app');


    </script>

</body>
</html>
相关推荐
程序员Forlan3 分钟前
fiddler+手机或模拟器进行APP抓包
前端·智能手机·fiddler
aidou13145 分钟前
Vue3自定义实现日期选择器(可单选或多选)
前端·javascript·vue.js·日期选择器·transition
绝世唐门三哥27 分钟前
OpenClaw 安装 + 手动配置 DeepSeek 模型(2026.4.5 版)
前端·oepn claw
来一颗砂糖橘28 分钟前
吃透 ES6 扩展运算符(...):从表面语法到底层逻辑,避开所有坑
前端·javascript·es6·扩展运算符·前端进阶
前端小D33 分钟前
JS模块化
开发语言·前端·javascript
Muen41 分钟前
iOS开发-适配XCode26、iOS26
前端
ByteCraze41 分钟前
JavaScript 深拷贝完全指南:从入门到精通
开发语言·javascript·ecmascript
用户84298142418101 小时前
3个Html加密工具
javascript
卸任1 小时前
Electron霸屏功能总结
前端·react.js·electron
fengci.1 小时前
ctfshow黑盒测试前半部分
前端