Echarts实现中国地图完整示例

Echarts实现中国地图完整示例及js文件

有问题大家可以留言或私信我
公司是有一个产品,销量遍布全国。
近期要求制作一个***中国地图来显示所有省份的销量***,要有一个***滚动显示每个省的销量***。

话不多说先上效果图
图违规了,效果我描述一下吧
1.中国地图大图
2.鼠标悬停显示每个省的数据和省名称
3.数据越大颜色越深
4.左边是滚动的省份及数据

打码模糊下,否则违规

代码:
下面展示一些 内联代码片

// 
// An highlighted block
<%@ page import="tea.entity.Http" %>
<%@ page import="java.util.*" %>
<%@page contentType="text/html; charset=UTF-8" %>
<%
    Http h = new Http(request, response);
    Random random = new Random();
    String cityName = "北京,天津,河北,山西,内蒙古,辽宁,吉林,黑龙江,上海,江苏,浙江,安徽,福建,江西,山东,河南,湖北,湖南,广东,广西,海南,重庆,四川,贵州,云南,西藏,陕西,甘肃,青海,宁夏,新疆";
    String[] split1 = cityName.split(",");
%>
<html>
<head>
    <meta charset="utf-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1">
    <title>中国同辐粒子销量统计</title>
    <link rel="stylesheet" href="/tea/yl/tj/css/bootstrap.css">
    <link rel="stylesheet" href="/tea/yl/tj/css/base.css">
    <link rel="stylesheet" href="/tea/yl/tj/css/style.css">

    <style>
        .t_btn {
    
    
            margin-top: 20px;
        }

        .t_btn li {
    
    
            display: inline-block;
            margin: 0 0px 20px 20px;
        }

        .t_btn button,
        .t_a {
    
    
            display: inline-block;
            padding: 10px 5px;
            width: 80px;
            border-style: solid;
            border-width: 0;
            cursor: pointer;
            font-family: inherit;
            font-weight: bold;
            line-height: normal;
            margin: 0 0 0.5em 0;
            position: relative;
            text-decoration: none;
            text-align: center;
            display: inline-block;
            font-size: 1em;
            background-color: #2C58A6;
            border-color: #0263ff;
            color: white;
            box-shadow: 0 -2px 0 rgba(0, 0, 0, 0.2) inset !important;
            margin-right: 0.5em;
            border-radius: 4px;
        }

        .t_height {
    
    
            line-height: 80px;
            position: absolute;
            right: 28px;
            top: 0;
        }
    </style>
</head>

<body onload="time()">

<div class="header">
    <div class="bg_header">
        <div class="header_nav fl t_title">
            <h1 class="gradient-title">中国同辐股份有限公司销量统计</h1>
        </div>
    </div>
    <div class="header_nav fl">
    </div>
    <div class="header_myself fr t_height">

    </div>
</div>
<div class="data_content">
    <div class="data_main">
        <div class="main_left fl" style="margin-top: -2px;">

            <div class="left_1 t_btn1" style="height: 452px;margin-top:20px;">

                <div class="group-profile shadow-box-bd">
                    <h3><span class="words" id="group-intro-name">中国股份有限公司 </span></h3>
                    <div class="tablebox ">
                        <table id="tableId" border="0" cellspacing="0" cellpadding="0">
                            <thead>
                            <tr>
                                <th>地区</th>
                                <th>销量</th>
                            </tr>
                            </thead>
                            <tbody>
                            <%
                                for (int i = 0; i <split1.length ; i++) {
    
    %>
                            <tr>
                                <td>
                                    <a><%=split1[i]%></a>
                                </td>
                                <td>
                                    <span class="project-status-2"><%=random.nextInt(10000)%></span>
                                </td>
                            </tr>
                            <%}%>

                            </tbody>
                        </table>

                    </div>
                </div>
            </div>


        </div>
        <div id="container" style="height: 80%"></div>
    </div>

</div>
<div style="text-align:center;">

</div>
</body>
<script src="/tea/yl/tj/js/jquery-1.7.js"></script>
<script type="text/javascript" src="https://cdn.jsdelivr.net/npm/echarts/dist/echarts.min.js"></script>
<script type="text/javascript" src="https://cdn.jsdelivr.net/npm/echarts/map/js/china.js"></script>
<script type="text/javascript" src="https://api.map.baidu.com/api?v=2.0&ak=jdlTvGgd7XbePz88gGY5dgoE"></script>

<script>
    // 参数1 tableID,参数2 div高度,参数3 速度,参数4 tbody中tr几条以上滚动
    tableScroll('tableId', 360, 60, 4)
    var MyMarhq;

    function tableScroll(tableid, hei, speed, len) {
    
    
        clearTimeout(MyMarhq);
        $('#' + tableid).parent().find('.tableid_').remove()
        $('#' + tableid).parent().prepend(
            '<table class="tableid_"><thead>' + $('#' + tableid + ' thead').html() + '</thead></table>'
        ).css({
    
    
            'position': 'relative',
            'overflow': 'hidden',
            'height': hei + 'px'
        })
        $(".tableid_").find('th').each(function (i) {
    
    
            $(this).css('width', $('#' + tableid).find('th:eq(' + i + ')').width());
        });
        $(".tableid_").css({
    
    
            'position': 'absolute',
            'top': 0,
            'left': 0,
            'z-index': 9
        })
        $('#' + tableid).css({
    
    
            'position': 'absolute',
            'top': 0,
            'left': 0,
            'z-index': 1
        })

        if ($('#' + tableid).find('tbody tr').length > len) {
    
    
            $('#' + tableid).find('tbody').html($('#' + tableid).find('tbody').html() + $('#' + tableid).find('tbody').html());
            $(".tableid_").css('top', 0);
            $('#' + tableid).css('top', 0);
            var tblTop = 0;
            var outerHeight = $('#' + tableid).find('tbody').find("tr").outerHeight();

            function Marqueehq() {
    
    
                if (tblTop <= -outerHeight * $('#' + tableid).find('tbody').find("tr").length) {
    
    
                    tblTop = 0;
                } else {
    
    
                    tblTop -= 1;
                }
                $('#' + tableid).css('margin-top', tblTop + 'px');
                clearTimeout(MyMarhq);
                MyMarhq = setTimeout(function () {
    
    
                    Marqueehq()
                }, speed);
            }

            MyMarhq = setTimeout(Marqueehq, speed);
            $('#' + tableid).find('tbody').hover(function () {
    
    
                clearTimeout(MyMarhq);
            }, function () {
    
    
                clearTimeout(MyMarhq);
                if ($('#' + tableid).find('tbody tr').length > len) {
    
    
                    MyMarhq = setTimeout(Marqueehq, speed);
                }
            })
        }

    }

    var dom = document.getElementById("container");
    var myChart = echarts.init(dom);
    var app = {
    
    };
    option = null;
    option = {
    
    
        title: {
    
    
            text: '',
            subtext: '',
            left: 'center'
        },
        tooltip: {
    
    
            trigger: 'item'
        },
        legend: {
    
    
            orient: 'vertical',
            left: 'left',
            data: ['iphone']
        },
        visualMap: {
    
    
            min: 0,
            max: 2500,
            left: 'left',
            top: 'bottom',
            text: ['高', '低'],           // 文本,默认为数值文本
            calculable: true
        },
        toolbox: {
    
    
            show: true,
            orient: 'vertical',
            left: 'right',
            top: 'center',
            feature: {
    
    
                mark: {
    
    show: true},
                dataView: {
    
    show: true, readOnly: false},
                restore: {
    
    show: true},
                saveAsImage: {
    
    show: true}
            }
        },
        series: [
            {
    
    
                name: '图钉销量',
                type: 'map',
                mapType: 'china',
                roam: false,
                label: {
    
    
                    normal: {
    
    
                        show: false
                    },
                    emphasis: {
    
    
                        show: true
                    }
                },
                data: [
                    {
    
    name: '北京', value: <%=random.nextInt(10000)%>},
                    {
    
    name: '天津', value: <%=random.nextInt(10000)%>},
                    {
    
    name: '河北', value: <%=random.nextInt(10000)%>},
                    {
    
    name: '山西', value: <%=random.nextInt(10000)%>},
                    {
    
    name: '内蒙古', value: <%=random.nextInt(10000)%>},
                    {
    
    name: '辽宁', value: <%=random.nextInt(10000)%>},
                    {
    
    name: '吉林', value: <%=random.nextInt(10000)%>},
                    {
    
    name: '黑龙江', value: <%=random.nextInt(10000)%>},
                    {
    
    name: '上海', value: <%=random.nextInt(10000)%>},
                    {
    
    name: '江苏', value: <%=random.nextInt(10000)%>},
                    {
    
    name: '浙江', value: <%=random.nextInt(10000)%>},
                    {
    
    name: '安徽', value: <%=random.nextInt(10000)%>},
                    {
    
    name: '福建', value: <%=random.nextInt(10000)%>},
                    {
    
    name: '江西', value: <%=random.nextInt(10000)%>},
                    {
    
    name: '山东', value: <%=random.nextInt(10000)%>},
                    {
    
    name: '河南', value: <%=random.nextInt(10000)%>},
                    {
    
    name: '湖北', value: <%=random.nextInt(10000)%>},
                    {
    
    name: '湖南', value: <%=random.nextInt(10000)%>},
                    {
    
    name: '广东', value: <%=random.nextInt(10000)%>},
                    {
    
    name: '广西', value: <%=random.nextInt(10000)%>},
                    {
    
    name: '海南', value: <%=random.nextInt(10000)%>},
                    {
    
    name: '重庆', value: <%=random.nextInt(10000)%>},
                    {
    
    name: '四川', value: <%=random.nextInt(10000)%>},
                    {
    
    name: '贵州', value: <%=random.nextInt(10000)%>},
                    {
    
    name: '云南', value: <%=random.nextInt(10000)%>},
                    {
    
    name: '西藏', value: <%=random.nextInt(10000)%>},
                    {
    
    name: '陕西', value: <%=random.nextInt(10000)%>},
                    {
    
    name: '甘肃', value: <%=random.nextInt(10000)%>},
                    {
    
    name: '青海', value: <%=random.nextInt(10000)%>},
                    {
    
    name: '宁夏', value: <%=random.nextInt(10000)%>},
                    {
    
    name: '新疆', value: <%=random.nextInt(10000)%>}
                ]
            }
        ]
    };
    if (option && typeof option === "object") {
    
    
        myChart.setOption(option, true);
    }
</script>

</html>

猜你喜欢

转载自blog.csdn.net/lzq_20120119/article/details/114031025