• 今日总结


    2021年3月15日:
    今天完成了体温app的最后一个第三阶段,用的是网上的echarts,以下是我的完整页面代码:

    map2.xml:

    <!DOCTYPE html>
    <html lang="en">

    <head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>信1905-2学生体温地图</title>
    </head>

    <body>
    <div id="main" style=" 600px; height: 400px; margin: 100px auto"></div>
    <script src="./static/js/china.js"></script>
    <script src="./static/js/echarts.min.js"></script>
    <script src="./static/js/utils.js"></script>
    <script type="text/javascript">
    let list = {
    '宁夏': 'ningxia',
    '江苏': "jiangsu"
    }
    function get(url) {
    return fetch(url).then(res => res.json())
    }

    let container = document.getElementById('main')
    var myChart = echarts.init(container);

    myChart.on('click', async function (params) {
    let provinceName = convertProvinceCN2EN(params.name).toLowerCase()
    let provinceMapData = await get(`./static/js/map/json/province/${provinceName}.json`)
    echarts.registerMap(provinceName, provinceMapData)
    let chinaData = await get('./data2.json')
    let proviceData = chinaData.find(r => r.provinceShortName === params.name)
    let { cities } = proviceData
    let data = cities.map(r => {
    return {
    name: fmtCityName(r.cityName),
    value: [r.zongrenshu, r.tiwenzhengchang, r.weishangbao,
    r.tiwenyichang]
    }
    })
    var option = {
    visualMap: {
    dimension: 0,
    pieces : [ {
    gte : 11,
    lte : 47,
    label : '>=11',
    color : '#4e160f'
    }, {
    gte : 6,
    lte : 10,
    label : '人数6-10',
    color : '#974236'
    }, {
    gte : 3,
    lte : 5,
    label : '人数3-5',
    color : '#ee7263'
    }, {
    gte : 1,
    lte : 2,
    label : '人数为1-2',
    color : '#f5bba7'
    }, {
    gte : 0,
    lte : 0,
    label : '人数为0',
    color : '#ccff99'
    },]
    },
    title: {
    text: params.name + "信1905-2学生体温省级地图",
    link: "http://baidu.com",
    textStyle: {
    fontSize: 30
    },
    left: "center",
    padding: 15
    },
    //悬浮提示
    tooltip: {
    formatter(res) {
    let { data, marker } = res
    if (data)
    return `
    ${data.name}<br>
    总人数:${data.value[0]}<br>
    体温正常:${data.value[1]}<br>
    未上报:${data.value[2]}<br>
    体温异常:${data.value[3]}<br>
    `
    }
    },
    toolbox : {
    show : true,
    orient : 'vertical',
    left : 'right',
    top : 'center',
    feature : {
    mark : {
    show : true
    },
    dataView : {
    show : true,
    title:"数据视图",
    readOnly : false,
    lang: ['数据视图', '关闭', '刷新']
    },
    restore : {
    show : true,
    title: "还原"
    },
    saveAsImage : {
    show : true
    }
    }
    },
    roamController : {
    show : true,
    left : 'right',
    mapTypeControl : {
    provinceName : true
    }
    },
    series: [
    {
    name: "信1905-2学生体温省级地图",
    type: 'map',
    map: provinceName,
    data
    }
    ]
    };
    // 使用刚指定的配置项和数据显示图表。
    myChart.setOption(option);

    });


    async function initChina() {
    let chinaData = await get('./static/js/map/json/china.json')
    echarts.registerMap('china', chinaData)
    initProvinceData()
    }

    initChina()

    async function initProvinceData() {
    let proviceData = await get('./data2.json')
    let data = proviceData.map(r => {
    return {
    name: r.provinceShortName,
    value: [r.zongrenshu, r.tiwenzhengchang, r.weishangbao,
    r.tiwenyichang]
    }
    })

    var option = {
    visualMap: {
    dimension: 0,
    pieces: [ {
    gte : 11,
    lte : 47,
    label : '>=11',
    color : '#4e160f'
    }, {
    gte : 6,
    lte : 10,
    label : '人数6-10',
    color : '#974236'
    }, {
    gte : 3,
    lte : 5,
    label : '人数3-5',
    color : '#ee7263'
    }, {
    gte : 1,
    lte : 2,
    label : '人数为1-2',
    color : '#f5bba7'
    }, {
    gte : 0,
    lte : 0,
    label : '人数为0',
    color : '#ccff99'
    }, ]
    },
    title: {
    text: "信1905-2学生体温中国地图",
    link: "http://baidu.com",
    textStyle: {
    fontSize: 30
    },
    left: "center",
    padding: 15
    },
    //悬浮提示
    tooltip: {
    formatter(res) {
    let { data, marker } = res
    return `
    ${data.name}<br>
    总人数:${data.value[0]}<br>
    体温正常:${data.value[1]}<br>
    未上报:${data.value[2]}<br>
    体温异常:${data.value[3]}<br>
    `
    }
    },
    toolbox : {
    show : true,
    orient : 'vertical',
    left : 'right',
    top : 'center',
    feature : {
    mark : {
    show : true
    },
    dataView : {
    show : true,
    title:"数据视图",
    readOnly : false,
    lang: ['数据视图', '关闭', '刷新']
    },
    restore : {
    show : true,
    title: "还原"
    },
    saveAsImage : {
    show : true
    }
    }
    },
    roamController : {
    show : true,
    left : 'right',
    mapTypeControl : {
    'china' : true
    }
    },
    series: [
    {
    name: "信1905-2学生体温中国地图",
    type: 'map',
    map: "china",
    data
    }
    ]
    };
    // 使用刚指定的配置项和数据显示图表。
    myChart.setOption(option);
    }
    </script>
    </body>

    </html>

  • 相关阅读:
    JavaScript原型、闭包、继承和原型链等等总结
    JS创建对象的几种方式整理
    js中 给json对象添加属性和json数组添加元素
    JSON 数组
    httpclient封装
    java 数字和日期处理
    jmeter所有版本下载路径
    idea的使用
    Java环境的搭建
    Axure8.0可用的授权码
  • 原文地址:https://www.cnblogs.com/yitiaokuailedexiaojingyu/p/14539750.html
Copyright © 2020-2023  润新知