全网最详细教写可视化面板(js、css3、html5)(三)

本文涉及的产品
云原生数据库 PolarDB 分布式版,标准版 2核8GB
简介: 全网最详细教写可视化面板(js、css3、html5)(三)

js:

$.ajax({
    type: "GET",
    url: "json/index.json",
    data: {},
    success: function (res) {
        // console.log(res);
        if (res != null) {
            fn(res[0].first);
            tx(res[1]);
            xr(res[0].first);
            dindan(res[2])
            xianxhang();
            shuju();
            wcl();
            yuan();
            pinpai();
            qsfx();
        } else {
            alert('请求失败');
        }
    }
})
let names = [];
let datas = [];
let yf = [];
let fz = [];
let zs = [];
let sp = [];
let fzs = [];
let dx = [17050, 21900, 17900, 21100, 18910];
function fn(data) {
    // 月份
    yf = [];
    // 服装
    fz = [];
    fzs = [];
    // 装饰
    zs = [];
    // 食品
    sp = [];
    names = [];
    value = [];
    for (let i = 0; i < data[0].data.length; i++) {
        yf[yf.length] = data[0].data[i].name;
    }
    for (let a = 0; a < data.length; a++) {
        for (let j = 0; j < data[a].data.length; j++) {
            let obj = {
                names: data[a].data[j].name,
                value: data[a].data[j].value,
            }
            fz.push(obj);
        }
    }
    for (let q = 5; q < 10; q++) {
        zs[zs.length] = fz[q];
    }
    for (let q = 10; q < 15; q++) {
        sp[sp.length] = fz[q];
    }
    for (let q = 0; q < 5; q++) {
        fzs[fzs.length] = fz[q];
    }
    box();
}
let COLORS = ['#61a0a8', '#d48265', '#91c7ae', '#749f83'];
function box() {
    // 基于准备好的dom,初始化echarts实例
    var myChart = echarts.init(document.getElementsByClassName('top')[0]);
    // 指定图表的配置项和数据
    var option = {
        title: {
            show: true,
            text: '营业额数据统计',
            textStyle: {
                color: '#fff'
            },
            textAlign: "left",
            textVerticalAlign: "top",
            padding: [15, 0, 0, 20]
        },
        tooltip: {
            top: 0,
            feature: {
                //点击图表可直接将柱形图与折线图进行切换
                magicType: {
                    show: true,
                    type: ['line', 'bar']
                },
            }
        },
        legend: {
            top: '30px',
            right: '70px',
            textStyle: {
                color: '#fff'
            }
        },
        xAxis: {
            data: yf,
            splitLine: {
                show: false
            },
            axisLine: {
                show: true,
                lineStyle: {
                    color: "#fff"
                }
            },
            axisTick: {
                show: false
            }
        },
        yAxis: {
            splitLine: {
                show: false
            },
            axisLine: {
                show: true,
                lineStyle: {
                    color: "#fff"
                }
            },
            axisTick: {
                show: true
            }
        },
        series: [{
            itemStyle: {
                color: '#00BAFF'
            },
            name: '服装',
            type: 'bar',
            stack: 'Ad',
            emphasis: {
                focus: 'series'
            },
            data: fzs
        }, {
            itemStyle: {
                color: '#ADDBEA'
            },
            name: '装饰',
            type: 'bar',
            stack: 'Ad',
            emphasis: {
                focus: 'series'
            },
            data: zs
        },
        {
            itemStyle: {
                color: '#41DDEA'
            },
            name: '食品',
            type: 'bar',
            stack: 'Ad',
            emphasis: {
                focus: 'series'
            },
            data: sp
        },
        {
            type: 'line',
            data: dx,
            emphasis: {
                focus: 'series'
            },
        }
        ]
    }
    // 使用刚指定的配置项和数据显示图表。
    myChart.setOption(option);
}
let sj = [100]
function tx(data) {
    let a = document.getElementsByClassName('ratio')[0];
    let b = a.getElementsByTagName('span')[0];
    let c = a.getElementsByTagName('span')[2];
    b.innerHTML = data.value;
    c.innerHTML = data.mave;
    // 基于准备好的dom,初始化echarts实例
    var myChart = echarts.init(document.getElementsByClassName('xr')[0]);
    var option = {
        series: [{
            type: 'pie',
            hoverAnimation: false,
            radius: ['90%', '82%'],
            labelLine: {
                show: false
            },
            itemStyle: {
                color: "#04F4F6"
            },
            data: sj
        }]
    };
    // 使用刚指定的配置项和数据显示图表。
    myChart.setOption(option);
    var myCharts = echarts.init(document.getElementsByClassName('xrs')[0]);
    var options = {
        series: [{
            type: 'pie',
            hoverAnimation: false,
            radius: ['90%', '82%'],
            labelLine: {
                show: false
            },
            itemStyle: {
                color: "#04F4F6"
            },
            data: sj
        }]
    };
    // 使用刚指定的配置项和数据显示图表。
    myCharts.setOption(options);
}
function xr(data) {
    console.log(document.getElementsByClassName('tus')[0]);
    yf = [];
    for (let i = 0; i < data[0].data.length; i++) {
        yf[yf.length] = data[0].data[i].name;
    }
    // 基于准备好的dom,初始化echarts实例
    var myChart = echarts.init(document.getElementsByClassName('tus')[0]);
    option = {
        title: {
            text: '单位(单)',
            textStyle: {
                color: "#fff"
            },
            top: '20px',
            left: '10px'
        },
        tooltip: {
            trigger: 'axis',
            axisPointer: {
                type: 'cross',
                label: {
                    backgroundColor: '#6a7985'
                }
            }
        },
        legend: {
            data: ['收益', '支出'],
            top: '20px',
            right: '70px',
            textStyle: {
                color: '#fff'
            }
        },
        grid: {
            left: '3%',
            right: '4%',
            bottom: '3%',
            containLabel: true
        },
        xAxis: [{
            data: yf,
            axisLine: {
                show: true,
                lineStyle: {
                    color: "#fff"
                }
            },
            splitLine: {
                show: true
            },
            boundaryGap: false,
            type: 'category'
        }],
        yAxis: [{
            axisLine: {
                show: true,
                lineStyle: {
                    color: "#fff"
                }
            },
            splitLine: {
                show: true
            },
            type: 'value'
        }],
        series: [{
            itemStyle: {
                color: '#FF8538'
            },
            name: '收益',
            type: 'line',
            // 同一层级
            // stack: 'Total',
            // 头部圆化
            smooth: true,
            // 头部边框
            lineStyle: {
                width: 2
            },
            // 头部点
            showSymbol: false,
            areaStyle: {
                // 背景透明度
                opacity: 0.5,
            },
            // 隐藏
            emphasis: {
                focus: 'series'
            },
            data: [140, 232, 101, 264, 90, 340, 250]
        }, {
            itemStyle: {
                color: '#20BBF0'
            },
            name: '支出',
            type: 'line',
            // 同一层级
            // stack: 'Total',
            // 头部圆化
            smooth: true,
            // 头部边框
            lineStyle: {
                width: 2
            },
            // 头部点
            showSymbol: false,
            areaStyle: {
                // 背景透明度
                opacity: 0.5,
            },
            // 隐藏
            emphasis: {
                focus: 'series'
            },
            data: [240, 22, 201, 24, 190, 30, 20]
        }]
    };
    // 使用刚指定的配置项和数据显示图表。
    myChart.setOption(option);
}
// 开始的值,结束的值,在那个盒子,几秒跳一次
// 数字跳动
addNumber(3456.5, 9981, 'szs');
function addNumber(start, end, id) {
    var o = document.getElementsByClassName('szs')[0];
    var i = start;
    var Interval;
    if (i == end) {
        i = 3456.5;
    } else {
        if (i < end) {
            Interval = setInterval(function () {
                i += 1;
                if (i > end) {
                    clearInterval(Interval);
                    o.innerHTML = end.toLocaleString();
                    i = 0;
                } else {
                    o.innerHTML = i.toLocaleString();
                }
            }, 60);
        }
    }
}
// 名字
let monicker = [];
// 存周,月,年
let week = [];
let month = [];
let year = [];
let monickers = [];
let weeks = [];
let months = [];
let years = [];
function dindan(data) {
    monicker = [];
    // 存周,月,年
    week = [];
    month = [];
    year = [];
    monickers = [];
    weeks = [];
    months = [];
    years = [];
    console.log(data.data[1].data[0].data);
    // 一个两个对象,两个三个对象,三个数组包对象数据
    for (let i = 0; i < data.data[0].data[0].data.length; i++) {
        week[week.length] = data.data[0].data[0].data[i];
    }
    for (let i = 0; i < data.data[1].data[0].data[0].data.length; i++) {
        weeks[weeks.length] = data.data[1].data[0].data[0].data[i];
    }
    for (let i = 0; i < data.data[0].data[0].data.length; i++) {
        month[month.length] = data.data[0].data[1].data[i];
    }
    for (let i = 0; i < data.data[1].data[0].data[0].data.length; i++) {
        months[months.length] = data.data[1].data[0].data[1].data[i];
    }
    for (let i = 0; i < data.data[0].data[2].data.length; i++) {
        year[year.length] = data.data[0].data[2].data[i];
    }
    for (let i = 0; i < data.data[1].data[0].data[2].data.length; i++) {
        years[years.length] = data.data[1].data[0].data[2].data[i];
    }
    weekFirst();
    information();
    fenxi();
    message();
    qushi();
    let jt = document.getElementsByClassName('dates')[0];
    jt.addEventListener('click', function (e) {
        let nr = e.target;
        if (nr.innerHTML == '周') {
            weekFirst();
            changliang(0);
        } else if (nr.innerHTML == '月') {
            monthFirst();
            changliang(1);
        } else if (nr.innerHTML == '年') {
            yearFirst();
            changliang(2);
        }
    })
}
let sjs = [0, 0, 0, 0, 100, 20, 0, 0, 0, 0, 0, 0, 0];
function weekFirst() {
    changliang(0);
    changs(0);
    liangs(0);
    lianges(0);
    let str = '';
    let ddls = '';
    let yjzb = '';
    let yyes = '';
    console.log(document.getElementsByClassName('sz'));
    str = `<div class="zb">
    <span class="fp">${week[0].wan}</span>
    <span class="fp">${week[0].tu}</span>
    <span class="fp">${week[0].sui}</span>
    <span class="fp">${week[0].fo}</span>
    <span class="fp">${week[0].fai}</span>
    <span class="fp">${week[0].sks}</span>
    <b class="wyh">万元</b>
    <b class="bfb">${week[1].value}</b>
    <b class="bfb">%</b>
    <b class="bfb"><img src="./img/向上.svg" alt=""></b>
</div>`;
    $('.performance').html(str);
    ddls = `<span>${week[2].value}</span>`;
    document.getElementsByClassName('sz')[4].innerHTML = ddls;
    yjzb = `<div class="zb">
    <span class="fp">${weeks[0].wan}</span>
    <span class="fp">${weeks[0].tu}</span>
    <span class="fp">${weeks[0].sui}</span>
    <span class="fp">${weeks[0].fo}</span>
    <span class="fp">${weeks[0].fai}</span>
    <span class="fp">${weeks[0].sks}</span>
    <b class="wyh">万元</b>
    <b class="bfb">${weeks[1].value}</b>
    <b class="bfb">%</b>
    <b class="bfb"><img src="./img/向上.svg" alt=""></b>
</div>`;
    $('.indicator').html(yjzb);
    yyes = `<span>${weeks[2].value}</span>`;
    document.getElementsByClassName('sz')[5].innerHTML = yyes;
    // 基于准备好的dom,初始化echarts实例
    var myChart = echarts.init(document.getElementsByClassName('ddl')[0]);
    var option = {
        series: [{
            type: 'pie',
            hoverAnimation: false,
            radius: ['90%', '79%'],
            labelLine: {
                show: false
            },
            data: [0, 0, 0, 0, 100, 0, 0, 0, 0, 30, 0, 0, 0]
        }]
    };
    // 使用刚指定的配置项和数据显示图表。
    myChart.setOption(option);
    var myCharts = echarts.init(document.getElementsByClassName('jye')[0]);
    var options = {
        series: [{
            type: 'pie',
            hoverAnimation: false,
            radius: ['90%', '79%'],
            labelLine: {
                show: false
            },
            data: [0, 0, 0, 0, 100, 0, 0, 0, 0, 60, 0, 0, 0]
        }]
    };
    // 使用刚指定的配置项和数据显示图表。
    myCharts.setOption(options);
}
function monthFirst() {
    let str = '';
    let ddls = '';
    let yjzb = '';
    let yyes = '';
    console.log(document.getElementsByClassName('sz'));
    str = `<div class="zb">
    <span class="fp">${month[0].wan}</span>
    <span class="fp">${month[0].tu}</span>
    <span class="fp">${month[0].sui}</span>
    <span class="fp">${month[0].fo}</span>
    <span class="fp">${month[0].fai}</span>
    <span class="fp">${month[0].sks}</span>
    <b class="wyh">万元</b>
    <b class="bfb">${month[1].value}</b>
    <b class="bfb">%</b>
    <b class="bfb"><img src="./img/向上.svg" alt=""></b>
</div>`;
    $('.performance').html(str);
    ddls = `<span>${month[2].value}</span>`;
    document.getElementsByClassName('sz')[4].innerHTML = ddls;
    yjzb = `<div class="zb">
    <span class="fp">${months[0].wan}</span>
    <span class="fp">${months[0].tu}</span>
    <span class="fp">${months[0].sui}</span>
    <span class="fp">${months[0].fo}</span>
    <span class="fp">${months[0].fai}</span>
    <span class="fp">${months[0].sks}</span>
    <b class="wyh">万元</b>
    <b class="bfb">${months[1].value}</b>
    <b class="bfb">%</b>
    <b class="bfb"><img src="./img/向上.svg" alt=""></b>
</div>`;
    $('.indicator').html(yjzb);
    yyes = `<span>${months[2].value}</span>`;
    document.getElementsByClassName('sz')[5].innerHTML = yyes;
    // 基于准备好的dom,初始化echarts实例
    var myChart = echarts.init(document.getElementsByClassName('ddl')[0]);
    var option = {
        series: [{
            type: 'pie',
            hoverAnimation: false,
            radius: ['90%', '79%'],
            labelLine: {
                show: false
            },
            data: [0, 0, 0, 0, 100, 0, 0, 0, 0, 30, 0, 0, 0]
        }]
    };
    // 使用刚指定的配置项和数据显示图表。
    myChart.setOption(option);
    var myCharts = echarts.init(document.getElementsByClassName('jye')[0]);
    var options = {
        series: [{
            type: 'pie',
            hoverAnimation: false,
            radius: ['90%', '79%'],
            labelLine: {
                show: false
            },
            data: [0, 0, 0, 0, 100, 0, 0, 0, 0, 60, 0, 0, 0]
        }]
    };
    // 使用刚指定的配置项和数据显示图表。
    myCharts.setOption(options);
}
function yearFirst() {
    let str = '';
    let ddls = '';
    let yjzb = '';
    let yyes = '';
    console.log(document.getElementsByClassName('sz'));
    str = `<div class="zb">
    <span class="fp">${year[0].wan}</span>
    <span class="fp">${year[0].tu}</span>
    <span class="fp">${year[0].sui}</span>
    <span class="fp">${year[0].fo}</span>
    <span class="fp">${year[0].fai}</span>
    <span class="fp">${year[0].sks}</span>
    <b class="wyh">万元</b>
    <b class="bfb">${year[1].value}</b>
    <b class="bfb">%</b>
    <b class="bfb"><img src="./img/向上.svg" alt=""></b>
</div>`;
    $('.performance').html(str);
    ddls = `<span>${year[2].value}</span>`;
    document.getElementsByClassName('sz')[4].innerHTML = ddls;
    yjzb = `<div class="zb">
    <span class="fp">${years[0].wan}</span>
    <span class="fp">${years[0].tu}</span>
    <span class="fp">${years[0].sui}</span>
    <span class="fp">${years[0].fo}</span>
    <span class="fp">${years[0].fai}</span>
    <span class="fp">${years[0].sks}</span>
    <b class="wyh">万元</b>
    <b class="bfb">${years[1].value}</b>
    <b class="bfb">%</b>
    <b class="bfb"><img src="./img/向上.svg" alt=""></b>
</div>`;
    $('.indicator').html(yjzb);
    yyes = `<span>${years[2].value}</span>`;
    document.getElementsByClassName('sz')[5].innerHTML = yyes;
    // 基于准备好的dom,初始化echarts实例
    var myChart = echarts.init(document.getElementsByClassName('ddl')[0]);
    var option = {
        series: [{
            type: 'pie',
            hoverAnimation: false,
            radius: ['90%', '79%'],
            labelLine: {
                show: false
            },
            data: [0, 0, 0, 0, 100, 0, 0, 0, 0, 30, 0, 0, 0]
        }]
    };
    // 使用刚指定的配置项和数据显示图表。
    myChart.setOption(option);
    var myCharts = echarts.init(document.getElementsByClassName('jye')[0]);
    var options = {
        series: [{
            type: 'pie',
            hoverAnimation: false,
            radius: ['90%', '79%'],
            labelLine: {
                show: false
            },
            data: [0, 0, 0, 0, 100, 0, 0, 0, 0, 60, 0, 0, 0]
        }]
    };
    // 使用刚指定的配置项和数据显示图表。
    myCharts.setOption(options);
}
function changliang(a) {
    let dates = document.getElementsByClassName('dates')[0];
    dates = dates.getElementsByTagName('span');
    for (let i = 0; i < dates.length; i++) {
        dates[i].style.border = ""
        dates[i].style.color = "#fff"
    }
    dates[a].style.border = "solid #00FFFB 0.5px"
    dates[a].style.color = "#00FFFB"
}
function changliangss() {
    let dates = document.getElementsByClassName('dates')[0];
    dates = dates.getElementsByTagName('span');
    dates[0].style.border = "solid #00FFFB 0.5px"
    dates[0].style.color = "#00FFFB"
}
function chang(a) {
    console.log(a);
    let dates = document.getElementsByClassName('dates')[1];
    dates = dates.getElementsByTagName('span');
    for (let i = 0; i < dates.length; i++) {
        dates[i].style.border = ""
        dates[i].style.color = "#fff"
    }
    dates[a].style.border = "solid #00FFFB 0.5px"
    dates[a].style.color = "#00FFFB"
}
function changs() {
    let dates = document.getElementsByClassName('dates')[1];
    dates = dates.getElementsByTagName('span');
    dates[0].style.border = "solid #00FFFB 0.5px"
    dates[0].style.color = "#00FFFB"
}
function fenxi() {
    let yuefen = document.getElementsByClassName('dates')[1];
    yuefen.addEventListener('click', function (e) {
        let nr = e.target;
        if (nr.innerHTML == '周') {
            chang(0);
            information();
        } else if (nr.innerHTML == '月') {
            chang(1);
            informations();
        } else if (nr.innerHTML == '年') {
            chang(2);
            informationss();
        }
    })
}
function information() {
    let sz = document.getElementsByClassName('sz')[6].innerHTML = 9120;
    // 基于准备好的dom,初始化echarts实例
    var myChart = echarts.init(document.getElementsByClassName('sc')[0]);
    option = {
        color: ['#80FFA5', '#00DDFF', '#37A2FF', '#FF0087', '#FFBF00'],
        legend: {
            top: '-2%',
            left: 'right',
            width: '35%',
            itemGap: 35,
            textStyle: {
                color: '#fff'
            }
        },
        series: [
            {
                label: {
                    show: false
                },
                hoverAnimation: false,
                labelLine: {
                    show: false
                },
                type: 'pie',
                radius: ['90%', '60%'],
                itemStyle: {
                    borderColor: '#353654',
                    borderWidth: 10
                },
                data: [
                    { value: 1048, name: '数据一' },
                    { value: 735, name: '数据二' },
                    { value: 580, name: '数据三' },
                    { value: 484, name: '数据四' },
                    { value: 300, name: '数据五' }
                ]
            }
        ]
    };
    // 使用刚指定的配置项和数据显示图表。
    myChart.setOption(option);
}
function informations() {
    let sz = document.getElementsByClassName('sz')[6].innerHTML = 17120;
    // 基于准备好的dom,初始化echarts实例
    var myChart = echarts.init(document.getElementsByClassName('sc')[0]);
    option = {
        color: ['#80FFA5', '#00DDFF', '#37A2FF', '#FF0087', '#FFBF00'],
        legend: {
            top: '-2%',
            left: 'right',
            width: '35%',
            itemGap: 35,
            textStyle: {
                color: '#fff'
            }
        },
        series: [
            {
                label: {
                    show: false
                },
                hoverAnimation: false,
                labelLine: {
                    show: false
                },
                type: 'pie',
                radius: ['90%', '60%'],
                itemStyle: {
                    borderColor: '#353654',
                    borderWidth: 10
                },
                data: [
                    { value: 548, name: '数据一' },
                    { value: 235, name: '数据二' },
                    { value: 980, name: '数据三' },
                    { value: 884, name: '数据四' },
                    { value: 700, name: '数据五' }
                ]
            }
        ]
    };
    // 使用刚指定的配置项和数据显示图表。
    myChart.setOption(option);
}
function informationss() {
    let sz = document.getElementsByClassName('sz')[6].innerHTML = 97120;
    // 基于准备好的dom,初始化echarts实例
    var myChart = echarts.init(document.getElementsByClassName('sc')[0]);
    option = {
        color: ['#80FFA5', '#00DDFF', '#37A2FF', '#FF0087', '#FFBF00'],
        legend: {
            top: '-2%',
            left: 'right',
            width: '35%',
            itemGap: 35,
            textStyle: {
                color: '#fff'
            }
        },
        series: [
            {
                label: {
                    show: false
                },
                hoverAnimation: false,
                labelLine: {
                    show: false
                },
                type: 'pie',
                radius: ['90%', '60%'],
                itemStyle: {
                    borderColor: '#353654',
                    borderWidth: 10
                },
                data: [
                    { value: 948, name: '数据一' },
                    { value: 535, name: '数据二' },
                    { value: 980, name: '数据三' },
                    { value: 784, name: '数据四' },
                    { value: 900, name: '数据五' }
                ]
            }
        ]
    };
    // 使用刚指定的配置项和数据显示图表。
    myChart.setOption(option);
}
function shuju() {
    // 基于准备好的dom,初始化echarts实例
    var myChart = echarts.init(document.getElementsByClassName('sheet')[0]);
    var option = {
        series: [{
            type: 'pie',
            hoverAnimation: false,
            radius: ['100%', '70%'],
            labelLine: {
                show: false
            },
            data: [0, 0, 0, 0, 100, 0, 0, 0, 0, 30, 0, 0, 0]
        }]
    };
    // 使用刚指定的配置项和数据显示图表。
    myChart.setOption(option);
}
function liang(a) {
    console.log(a);
    let dates = document.getElementsByClassName('dates')[2];
    dates = dates.getElementsByTagName('span');
    for (let i = 0; i < dates.length; i++) {
        dates[i].style.border = ""
        dates[i].style.color = "#fff"
    }
    dates[a].style.border = "solid #00FFFB 0.5px"
    dates[a].style.color = "#00FFFB"
}
function liangs() {
    let dates = document.getElementsByClassName('dates')[2];
    dates = dates.getElementsByTagName('span');
    dates[0].style.border = "solid #00FFFB 0.5px"
    dates[0].style.color = "#00FFFB"
}
function xianxhang() {
    let yuefen = document.getElementsByClassName('dates')[2];
    console.log(yuefen);
    yuefen.addEventListener('click', function (e) {
        let nr = e.target;
        if (nr.innerHTML == '周') {
            liang(0);
            message();
        } else if (nr.innerHTML == '月') {
            liang(1);
            messages();
        } else if (nr.innerHTML == '年') {
            liang(2);
            messagess();
        }
    })
}
function message() {
    let sz = document.getElementsByClassName('wd')[0];
    console.log(sz);
    sz = sz.getElementsByTagName('span')[0].innerHTML = 25;
    let str = '';
    str = ` <!-- 上 -->
    <div class="eshu">
        <p><span>今日线上运营额数:</span><b>18,654.12</b><span>元</span></p>
    </div>
    <!-- 下 -->
    <div class="fxrs">
        <!-- 左 -->
        <div class="sjfx">
            <p class="sjfxrs">数据分析人数</p>
            <p class="sks"><span>2432</span><span>人</span></p>
        </div>
        <!-- 右 -->
        <div class="yinyee">
            <p class="yiny">营业额</p>
            <p class="skss"><span>25,345.00</span><span>元</span></p>
        </div>
    </div>`;
    $('.wenzi').html(str);
}
function messages() {
    let sz = document.getElementsByClassName('wd')[0];
    console.log(sz);
    sz = sz.getElementsByTagName('span')[0].innerHTML = 18.5;
    let str = '';
    str = ` <!-- 上 -->
    <div class="eshu">
        <p><span>今日线上运营额数:</span><b>98,654.12</b><span>元</span></p>
    </div>
    <!-- 下 -->
    <div class="fxrs">
        <!-- 左 -->
        <div class="sjfx">
            <p class="sjfxrs">数据分析人数</p>
            <p class="sks"><span>10432</span><span>人</span></p>
        </div>
        <!-- 右 -->
        <div class="yinyee">
            <p class="yiny">营业额</p>
            <p class="skss"><span>105,345.00</span><span>元</span></p>
        </div>
    </div>`;
    $('.wenzi').html(str);
}
function messagess() {
    let sz = document.getElementsByClassName('wd')[0];
    console.log(sz);
    sz = sz.getElementsByTagName('span')[0].innerHTML = 32;
    let str = '';
    str = ` <!-- 上 -->
    <div class="eshu">
        <p><span>今日线上运营额数:</span><b>108,654.12</b><span>元</span></p>
    </div>
    <!-- 下 -->
    <div class="fxrs">
        <!-- 左 -->
        <div class="sjfx">
            <p class="sjfxrs">数据分析人数</p>
            <p class="sks"><span>20432</span><span>人</span></p>
        </div>
        <!-- 右 -->
        <div class="yinyee">
            <p class="yiny">营业额</p>
            <p class="skss"><span>285,345.00</span><span>元</span></p>
        </div>
    </div>`;
    $('.wenzi').html(str);
}
function wcl() {
    // 基于准备好的dom,初始化echarts实例
    var myChart = echarts.init(document.getElementsByClassName('canvas')[0]);
    var option = {
        series: [{
            type: 'pie',
            hoverAnimation: false,
            radius: ['75%', '90%'],
            labelLine: {
                show: false
            },
            data: [0, 0, 0, 0, 100, 0, 0, 0, 0, 50, 0, 0, 0]
        }]
    };
    // 使用刚指定的配置项和数据显示图表。
    myChart.setOption(option);
    var myCharts = echarts.init(document.getElementsByClassName('canvas')[1]);
    var options = {
        series: [{
            type: 'pie',
            hoverAnimation: false,
            radius: ['75%', '90%'],
            labelLine: {
                show: false
            },
            data: [0, 0, 0, 0, 100, 0, 0, 0, 0, 30, 0, 0, 0]
        }]
    };
    // 使用刚指定的配置项和数据显示图表。
    myCharts.setOption(options);
}
function pinpai() {
    let arr2 = [{
        "yAxisleftdata": ['品牌一', '品牌二'],
        "yAxisrightvaluedata": [75, 80],
        "seriesdatamax": [100, 100]
    }]
    var myChart = echarts.init(document.getElementsByClassName('heng')[0]);
    var option = {
        // 标题
        title: {
            text: '完成情况',
            left: 'left',
            top: "2%",
            padding: [25, 0, 0, 40],
            textStyle: {
                color: '#fff',
                fontSize: "20",
                fontWeight: "400"
            }
        },
        // 横向条形图的位置
        grid: {
            // left: "-10%",
            // right: "10%",
            width: "80%",
            bottom: "1%",
            top: "30%",
            containLabel: true
        },
        xAxis: {
            type: "value",
            splitLine: {
                show: false
            },
            axisLabel: {
                show: false
            },
            axisTick: {
                show: false
            },
            axisLine: {
                show: false
            }
        },
        yAxis: [{
            // y轴文字
            data: arr2[0].yAxisleftdata,
            axisLabel: {
                textStyle: {
                    show: true,
                    fontSize: "16",
                    fontWeight: "400",
                    fontFamily: '微软雅黑',
                    color: "#fff",
                },
            },
            type: "category",
            inverse: true,
            axisLine: {
                show: false
            },
            axisTick: {
                show: false
            },
        },
        // 右侧数据
        {
            type: "category",
            inverse: true,
            axisTick: "none",
            axisLine: "none",
            show: true,
            axisLabel: {
                textStyle: {
                    // color: 'rgb(6,182,254)',
                    fontSize: "18",
                    fontWeight: "800"
                }
            },
            //------------------右侧展示的具体内容
            data: [{
                value: `${arr2[0].yAxisrightvaluedata[0]}%`,
                textStyle: {
                    color: "rgb(246,154,20)"
                }
            },
            {
                value: `${arr2[0].yAxisrightvaluedata[1]}%`,
                textStyle: {
                    color: "rgb(6,180,254)"
                }
            }
            ],
        },
        ],
        series: [{
            zlevel: 1,
            type: "bar",
            barWidth: "13px",
            animationDuration: 1500,
            //------------------数据及其样式----------------------------
            data: [{
                value: arr2[0].yAxisrightvaluedata[0],
                itemStyle: {
                    color: "rgb(239,134,41)"
                }
            },
            {
                value: arr2[0].yAxisrightvaluedata[1],
                itemStyle: {
                    color: "rgb(38,149,254)"
                }
            }
            ],
            align: "center",
            itemStyle: {
                normal: {
                    barBorderRadius: 10
                }
            }
        },
        {
            type: "bar",
            barWidth: 13,
            barGap: "-100%",
            margin: "20",
            //------------------背景按最大值----------------------------
            data: arr2[0].seriesdatamax,
            textStyle: {
                //图例文字的样式
                fontSize: 10,
                color: "black"
            },
            itemStyle: {
                normal: {
                    color: "rgba(241,241,241,0.4)",
                    //width:"100%",
                    fontSize: 10,
                    barBorderRadius: 30
                },
            }
        }
        ]
    };
    myChart.setOption(option);
}
function yuan() {
    // 基于准备好的dom,初始化echarts实例
    var myChart = echarts.init(document.getElementsByClassName('yanLeft')[0]);
    option = {
        title: {
            text: `${75}%`,
            textStyle: {
                color: 'rgb(69,121,255)',
                fontSize: "20"
            },
            subtext: '完成率',
            subtextStyle: {
                color: '#fff',
                fontSize: '16'
            },
            itemGap: 50, // 主副标题距离
            left: 'center',
            top: 'center'
        },
        angleAxis: {
            max: 100,
            clockwise: true, // 逆时针还是顺时针旋转
            // 隐藏刻度线
            axisLine: {
                show: false
            },
            axisTick: {
                show: false
            },
            axisLabel: {
                show: false
            },
            splitLine: {
                show: false
            }
        },
        radiusAxis: {
            type: 'category',
            // 隐藏刻度线
            axisLine: {
                show: false
            },
            axisTick: {
                show: false
            },
            axisLabel: {
                show: false
            },
            splitLine: {
                show: false
            }
        },
        polar: {
            center: ['50%', '50%'],
            radius: '110%' //图形大小
        },
        series: [{
            type: 'bar',
            data: [{
                name: '完成率',
                value: 75,
                itemStyle: {
                    // 这里设置圆环的渐变颜色-----------------------
                    normal: {
                        color: new echarts.graphic.LinearGradient(1, 0, 0, 0, [{
                            offset: 0,
                            color: '#F69816'
                        }, {
                            offset: 1,
                            color: '#E05C5B'
                        }])
                    }
                },
            }],
            coordinateSystem: 'polar',
            roundCap: true,
            barWidth: 8,
            barGap: '-100%', // 两环重叠
            z: 2,
        }, { // 灰色环
            type: 'bar',
            data: [{
                value: 100,
                itemStyle: {
                    color: '#1C2136',
                    shadowColor: 'rgba(0, 0, 0, 0.2)',
                    shadowBlur: 5,
                    shadowOffsetY: 2
                }
            }],
            coordinateSystem: 'polar',
            roundCap: true,
            barWidth: 5,
            barGap: '-100%', // 两环重叠
            z: 1
        }]
    }
    myChart.setOption(option);
    // 基于准备好的dom,初始化echarts实例
    var myCharts = echarts.init(document.getElementsByClassName('yanRight')[0]);
    options = {
        title: {
            text: `${80}%`,
            textStyle: {
                color: 'rgb(69,121,255)',
                fontSize: "20"
            },
            subtext: '完成率',
            subtextStyle: {
                color: '#fff',
                fontSize: '16'
            },
            itemGap: 50, // 主副标题距离
            left: 'center',
            top: 'center'
        },
        angleAxis: {
            max: 100,
            clockwise: true, // 逆时针还是顺时针旋转
            // 隐藏刻度线
            axisLine: {
                show: false
            },
            axisTick: {
                show: false
            },
            axisLabel: {
                show: false
            },
            splitLine: {
                show: false
            }
        },
        radiusAxis: {
            type: 'category',
            // 隐藏刻度线
            axisLine: {
                show: false
            },
            axisTick: {
                show: false
            },
            axisLabel: {
                show: false
            },
            splitLine: {
                show: false
            }
        },
        polar: {
            center: ['50%', '50%'],
            radius: '110%' //图形大小
        },
        series: [{
            type: 'bar',
            data: [{
                name: '完成率',
                value: 80,
                itemStyle: {
                    // 这里设置圆环的渐变颜色-----------------------
                    normal: {
                        color: new echarts.graphic.LinearGradient(1, 0, 0, 0, [{
                            offset: 0,
                            color: '#05B7FE'
                        }, {
                            offset: 1,
                            color: '#5966FF'
                        }])
                    }
                },
            }],
            coordinateSystem: 'polar',
            roundCap: true,
            barWidth: 8,
            barGap: '-100%', // 两环重叠
            z: 2,
        }, { // 灰色环
            type: 'bar',
            data: [{
                value: 100,
                itemStyle: {
                    color: '#1C2136',
                    shadowColor: 'rgba(0, 0, 0, 0.2)',
                    shadowBlur: 5,
                    shadowOffsetY: 2
                }
            }],
            coordinateSystem: 'polar',
            roundCap: true,
            barWidth: 5,
            barGap: '-100%', // 两环重叠
            z: 1
        }]
    }
    myCharts.setOption(options);
}
function qsfx() {
    let yuefen = document.getElementsByClassName('cut')[0];
    console.log(yuefen);
    yuefen.addEventListener('click', function (e) {
        let nr = e.target;
        if (nr.innerHTML == '周') {
            liange(0);
            qushi();
        } else if (nr.innerHTML == '月') {
            liange(1);
            qushis();
        } else if (nr.innerHTML == '年') {
            liange(2);
            qushiss();
        }
    })
}
function liange(a) {
    console.log(a);
    let dates = document.getElementsByClassName('cut')[0];
    dates = dates.getElementsByTagName('span');
    for (let i = 0; i < dates.length; i++) {
        dates[i].style.border = ""
        dates[i].style.color = "#fff"
    }
    dates[a].style.border = "solid #00FFFB 0.5px"
    dates[a].style.color = "#00FFFB"
}
function lianges() {
    let dates = document.getElementsByClassName('cut')[0];
    dates = dates.getElementsByTagName('span');
    dates[0].style.border = "solid #00FFFB 0.5px"
    dates[0].style.color = "#00FFFB"
}
let riqi;
let zou;
let zous;
let yue;
let yues;
let yzhou = [];
function qushis() {
    riqi = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 189, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30];
    zou = [3580, 5200, 1640, 3200, 4210, 2500, 4280, 6700, 3000, 3800, 5210, 2200, 3300, 6700, 3000, 3800, 5210, 2200, 3300, 3580, 5200, 1640, 3200, 4210, 2200, 3300, 6700, 3000, 3800, 5210];
    zous = [4280, 6700, 3000, 3800, 5210, 2200, 3300, 3580, 5200, 1640, 3200, 4210, 2500, 5210, 2200, 3300, 6700, 3000, 3800, 5210, 2200, 3300, 3300, 6700, 3000, 3800, , 3580, 5200, 1640, 3200];
    yzhou = ['10000', '20000', '30000', '40000', '50000', '60000', '70000', '80000', '90000', '100000'];
    yue = '';
    yues = '';
    boxs();
}
function qushiss() {
    riqi = ['一月', '二月', '三月', '四月', '五月', '六月', '七月', '八月', '九月', '十月', '十一月', '十二月'];
    zou = [3580, 5200, 1640, 3200, 4210, 2500, 1300, 6700, 3000, 3800, 5210, 2200,];
    zous = [4280, 6700, 3000, 3800, 5210, 2200, 3300, 1640, 3200, 4210, 2500, 1300];
    yzhou = ['100', '200', '300', '400', '500', '600', '700', '800', '900', '1000'];
    yue = zou;
    yues = zous;
    boxs();
}
function qushi() {
    riqi = ['周一', '周二', '周三', '周四', '周五', '周六', '周日'];
    zou = [3580, 5200, 1640, 3200, 4210, 2500, 1300];
    zous = [4280, 6700, 3000, 3800, 5210, 2200, 3300];
    yzhou = ['1000', '2000', '3000', '4000', '5000', '6000', '7000', '8000', '9000', '10000'];
    yue = '';
    yues = '';
    boxs();
}
function boxs() {
    // 基于准备好的dom,初始化echarts实例
    var myChart = echarts.init(document.getElementsByClassName('contentss')[0]);
    // 指定图表的配置项和数据
    var option = {
        title: {
            show: true,
            text: '单位(元)',
            textStyle: {
                color: '#fff'
                , fontWeight: "400",
                fontSize: 17
            },
            textAlign: "left",
            textVerticalAlign: "top",
            padding: [15, 0, 0, 50]
        },
        tooltip: {
            top: 0,
            feature: {
                //点击图表可直接将柱形图与折线图进行切换
                magicType: {
                    show: true,
                    // type: ['line', 'bar']
                },
            }
        },
        legend: {
            top: '30px',
            right: '70px',
            textStyle: {
                color: '#fff'
            }
        },
        xAxis: {
            data: riqi,
            splitLine: {
                show: false
            },
            axisLine: {
                show: true,
                lineStyle: {
                    color: "#fff"
                }
            },
            axisTick: {
                show: false
            }
        },
        yAxis: {
            data: yzhou,
            type: 'value',
            splitLine: {
                show: true,
                boundaryGap: true
            },
            axisLine: {
                show: false,
                lineStyle: {
                    color: "#fff"
                }
            },
            axisTick: {
                show: false
            }
        },
        series: [{
            itemStyle: {
                barBorderRadius: [20, 20, 0, 0],
                color: '#FF8538'
            },
            name: '成本',
            type: 'bar',
            emphasis: {
                focus: 'series',
            },
            data: zou
        }, {
            itemStyle: {
                barBorderRadius: [20, 20, 0, 0],
                color: '#20BBF0'
            },
            name: '收益',
            type: 'bar',
            emphasis: {
                focus: 'series'
            },
            data: zous
        },
        {
            itemStyle: {
                color: '#FF8538'
            },
            type: 'line',
            data: yue,
            emphasis: {
                focus: 'series'
            },
        },
        {
            itemStyle: {
                color: '#20BBF0'
            },
            type: 'line',
            data: yues,
            emphasis: {
                focus: 'series'
            },
        }
        ]
    }
    // 使用刚指定的配置项和数据显示图表。
    myChart.setOption(option);
}


相关实践学习
跟我学:如何一键安装部署 PolarDB-X
《PolarDB-X 动手实践》系列第一期,体验如何一键安装部署 PolarDB-X。
相关文章
|
2天前
|
JavaScript Java 测试技术
Java项目基于ssm+vue.js的可视化高校公寓管理系统附带文章和源代码设计说明文档ppt
Java项目基于ssm+vue.js的可视化高校公寓管理系统附带文章和源代码设计说明文档ppt
8 0
|
3天前
|
JavaScript Java 测试技术
基于springboot+vue.js的基于HTML5的问卷调查系统附带文章和源代码设计说明文档ppt
基于springboot+vue.js的基于HTML5的问卷调查系统附带文章和源代码设计说明文档ppt
7 0
|
5天前
|
存储 JavaScript 前端开发
笔.COOL,一个功能完备、使用便捷的在线HTML/CSS/JS以及Vue编辑器和作品分享平台
笔.COOL是一个新兴的在线 HTML/CSS/JS 及 Vue 编辑器,提供实时预览和云端存储功能。用户可以随时随地编写和保存代码,同时分享作品给他人预览和学习。它也是一个实用的 BUG 复现工具,支持嵌入编辑器到博客,促进代码交流。社区活跃,适合开发者展示作品、获取灵感和学习。
|
5天前
|
存储 移动开发 前端开发
使用HTML5和CSS3构建现代网页:技术详解与实践
【5月更文挑战第28天】本文详细介绍了使用HTML5和CSS3构建现代网页的技术与实践。HTML5新增语义化标签、多媒体支持、本地存储和表单验证等功能,提升了网页开发效率和用户体验。CSS3则带来了更多选择器、盒模型改进、背景与边框样式以及动画过渡效果,使网页设计更具视觉冲击力。通过实例展示了如何结合两者创建结构清晰、交互丰富、响应式的现代网页。
|
7天前
|
移动开发 API UED
html5和css3
【5月更文挑战第26天】html5和css3
20 2
尚硅谷html5+css3(4)浮动
尚硅谷html5+css3(4)浮动
|
9天前
|
前端开发
尚硅谷html5+css3(3)布局
尚硅谷html5+css3(3)布局
|
9天前
|
缓存 前端开发 JavaScript
尚硅谷html5+css3(2)CSS5基本知识
尚硅谷html5+css3(2)CSS5基本知识
|
9天前
|
移动开发 搜索推荐 HTML5
尚硅谷html5+css3(1)html相关知识
尚硅谷html5+css3(1)html相关知识
|
11天前
|
Web App开发 监控 JavaScript
JS 实现鼠标框选(页面选择)时返回对应的 HTML 或文案内容
实现JavaScript鼠标框选内容上报,需关注`Range`和`Selection`对象,处理各种元素选择情况,如文本、图片、输入框等。事件监听包括`mousedown`、`mouseup`、`selectionchange`等,用`debounce`防止频繁触发。通过`Range`获取选中内容,判断是否包含特定标签,决定返回HTML或文本。完整代码示例展示了如何实现这一功能。
18 0
JS 实现鼠标框选(页面选择)时返回对应的 HTML 或文案内容