国产久_亚欧精品一区_久久亚洲美女_99精品在线观看_日韩成人三级_久久精品久久久久

BIGEMPA Js API示例中心

3D柱狀圖數(shù)據(jù)展示源代碼展示

代碼編輯區(qū) 運(yùn)行 下載 還原
                                    <!DOCTYPE html>
<html lang="en">

<style>
    body {
        background-image: url('./xk.jpg');
        background-repeat: no-repeat;
    }

    .tip {
        height: 100px;
        width: 200px;
        position: absolute;
        z-index: 00;
        top: 10px;
        left: 20px;
        color: wheat;
    }
</style>

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <!--
                以下CSS地址請(qǐng)?jiān)诎惭b軟件了替換成本地的地址
                CSS地址請(qǐng)使用:
                http://localhost:9000/bigemap.js/v2.1.0/bigemap.css
                軟件下載地址 http://www.bt68f.cn/reader/download/detail201802017.html
            -->
    <link href='http://www.bt68f.cn:9000/bigemap.js/v2.1.0/bigemap.css' rel='stylesheet' />
    <!--
                JS地址請(qǐng)使用:
                http://localhost:9000/bigemap.js/v2.1.0/bigemap.js
            -->
    <script src='http://www.bt68f.cn:9000/bigemap.js/v2.1.0/bigemap.js'></script>
    <script src="http://www.bt68f.cn/Public/common/js/jquery.min.js"></script>
    <script src="http://www.bt68f.cn/Public/js/d3.min.js"></script>

</head>

<body>
    <div class="d3"></div>
    <div class="tip">成都市XXXXXXX數(shù)據(jù)展示 如需其他城市 請(qǐng)前往Bigemap下載器下載地圖</div>
</body>
<script>
    //軟件配置信息地址,軟件安裝完成之后使用本地地址,如:http://localhost:9000
    BM.Config.HTTP_URL = 'http://www.bt68f.cn:9000';
    // 在ID為map的元素中實(shí)例化一個(gè)地圖,并設(shè)置地圖的ID號(hào)為 bigemap.zhongkexingtu,ID號(hào)程序自動(dòng)生成,無(wú)需手動(dòng)配置,并設(shè)置地圖的投影為百度地圖 ,中心點(diǎn),默認(rèn)的級(jí)別和顯示級(jí)別控件
    // var map = BM.map('map', 'bigemap.zhongkexingtu', { center: [33, 80], zoom: 4, zoomControl: true, attributionControl: false });

    // 基礎(chǔ)數(shù)據(jù)初始化

    var width = 800
    var height = 750

    d3.json('/Public/d3json/sichuanxiaji.geojson').then((data) => {
        console.log(data);
        var mapColor = d3.scaleOrdinal(d3.schemeCategory10)
        var mapLineColor = '#0d67c7';
        // 繪制
        var svg = d3.select('.d3').append('svg')
            .attr('width', width).attr('height', height);
        // 定義地圖的投影
        var projection = d3.geoMercator()
            .center([103.991184, 31])
            .scale(20000);
        // 定義地理路徑生成器
        var path = d3.geoPath()
            .projection(projection);

        var darkmap = svg.append('g').attr('class', 'darkmap');

        var mapGroups = svg.append('g')
            .attr('class', 'mapGroups');


        //制作數(shù)據(jù)
        var mapdata = []
        BM.geoJson(data, {
            onEachFeature: function (feature, layer) {

                var latlngs = layer.getBounds().getCenter()
                mapdata.push([
                    {
                        'name': feature.properties.name,
                        'log': latlngs.lng,
                        'lat': latlngs.lat,
                        'num': Math.random() * 10,
                        'unit': '%'
                    },
                ])
            }
        })
        console.log(mapdata);
        //繪制陰影
        darkmap.selectAll('path')
            .data(data.features)
            .enter()
            .append('path')
            .attr('class', 'map-path')
            .style('fill', '#2f2727')
            .attr('stroke', 'white')
            .attr('d', path)
            .attr('transform', 'translate(20,10)');
        // 地圖路徑繪制
        console.log(data.features);
        mapGroups.selectAll('path')
            .data(data.features)
            .enter()
            .append('path')
            .attr('class', 'map-path')
            .style('fill', (d, i) => {
                return mapColor(i)
            })
            .attr('stroke', 'white')
            .attr('d', path);

        // // text地理名稱(chēng)
        mapGroups.selectAll('text')
            .data(mapdata)
            .enter()
            .append('text')
            .text((d) => d[0].name)
            .attr('font-size', '10')
            .attr('transform', (d) => {
                var coor = projection([d[0].log, d[0].lat]);
                return 'translate(' + coor[0] + ',' + coor[1] + ')';
            });;

        //繪制矩形
        var rectWidth = 13;
        var rectHeight = 60;   // 應(yīng)根據(jù)計(jì)算得出,先默認(rèn)柱體高度為60
        var rectColor = '#14a8f394';
        var rectLineColor = '#12ddda';

        var rect3dGroups = svg.append('g')
            .attr('class', 'rect3dGroups');
        var rect3d = rect3dGroups.selectAll('rect3d')
            .data(mapdata)
            .enter()
            .append('g')
            .attr('class', 'rect3d')
            .style('transform', (d, i) => {
                if (i === 15) {    // 都江堰市
                    return `translate(${0}px, ${-4 + 25}px)`;
                }
                if (i === 18) {    // 崇州市
                    return `translate(${0}px, ${-4 + -10}px)`;
                }
                if (i === 8) {    // 溫江市
                    return `translate(${0}px, ${-4 + 30}px)`;
                }
                return 'translate(-20   px, -4px)';
            });
        // 定義柱體高度比例尺
        var maxData = d3.max(mapdata.map((item) => item[0].num));  // 最大增長(zhǎng)率對(duì)應(yīng)高度為60
        var rectHScale = d3.scaleLinear()   // 設(shè)置線性比例尺
            .domain([0, maxData])
            .range([0, 60]);
        // 繪制頂面
        rect3d.append('path')
            .transition()
            .duration(2000)
            .delay((d, i) => {
                return i * 200
            })
            .attr('d', (d) => {
                let rectHeight = 0;
                for (let i = 0; i < mapdata.length; i += 1) {
                    if (d[0].name.indexOf(mapdata[i][0].name.slice(0, -1)) !== -1) {
                        rectHeight = rectHScale(mapdata[i][0].num);
                    }
                }
                var coor = projection([d[0].log, d[0].lat]);
                return `M${coor[0]} ${coor[1] - rectHeight}l${rectWidth} ${-rectWidth}l${-rectWidth} ${-rectWidth}l${-rectWidth} ${rectWidth}z`
            })
            .attr('fill', rectColor)
            .attr('stroke', rectLineColor)
            .attr('stroke-width', 1)
            .attr('shape-rendering', 'crispedges')

        // 繪制側(cè)面
        rect3d.append('path')
            .transition()
            .duration(1000)
            .delay((d, i) => {
                return i * 200
            })
            .attr('d', (d) => {
                let rectHeight = 0;
                for (let i = 0; i < mapdata.length; i += 1) {
                    if (d[0].name.indexOf(mapdata[i][0].name.slice(0, -1)) !== -1) {
                        rectHeight = rectHScale(mapdata[i][0].num);
                    }
                }
                var coor = projection([d[0].log, d[0].lat]);
                return `M${coor[0]} ${coor[1]} l0 ${-rectHeight} l${rectWidth} ${-rectWidth} l0 ${rectHeight} l${-rectWidth} ${rectWidth} l${-rectWidth} ${-rectWidth} l0 ${-rectHeight} l${rectWidth} ${rectWidth} z`
            })
            .attr('fill', rectColor)
            .attr('stroke', rectLineColor)
            .attr('stroke-width', 1)
            .attr('shape-rendering', 'crispedges')

        //定義豬蹄數(shù)據(jù)
        // // text地理名稱(chēng)
        mapGroups.selectAll('.zhutext')
            .data(mapdata)
            .enter()
            .append('text')
            .attr('class', 'zhutext')
            .text((d) => {
                var num = d[0].num
                return num.toFixed(1) + '%'
            })
            .attr('font-size', '15')
            .attr('transform', (d) => {
                var coor = projection([d[0].log, d[0].lat]);
                return 'translate(' + (coor[0] + 20) + ',' + (coor[1] - 20) + ')';
            })
            .attr('fill', 'blue');
    })

</script>

</html>                                                                                                                        
国产久_亚欧精品一区_久久亚洲美女_99精品在线观看_日韩成人三级_久久精品久久久久
<code id="kseui"><acronym id="kseui"></acronym></code>
  • <abbr id="kseui"><tbody id="kseui"></tbody></abbr>
  • <button id="kseui"></button>
  • 日韩视频精品| 好吊色欧美一区二区三区四区| 夜夜嗨av一区二区三区网站四季av| 欧美人成网站| 亚洲精品四区| 91成人理论电影| 欧美福利一区二区三区| 亚洲午夜在线观看| 91久久精品www人人做人人爽| 亚洲少妇一区| 国模精品娜娜一二三区| 一区二区不卡在线观看| 校园春色综合网| 久久久久久欧美精品色一二三四| 日本不卡一二三区| 亚洲国产日韩欧美| 国产中文一区二区| 国产精品大片免费观看| 久久久99爱| 亚洲成人午夜在线| 日韩亚洲视频在线| 久久久久久久久一区二区| 精品69视频一区二区三区Q| 91九色露脸| 欧美日本国产精品| 国产午夜精品在线| 国产欧美欧美| 欧美在线网址| 久久久久久久免费| 国产精品久久久对白| 亚洲激情一区二区| 波多野结衣久草一区| 激情综合电影网| 日本免费高清不卡| 久久五月天婷婷| 一本色道久久综合亚洲精品不| 三区精品视频| 欧美三级不卡| 欧美成人亚洲| 麻豆成人av| 亚洲高清二区| 午夜性色一区二区三区免费视频| 99在线观看免费视频精品观看| 午夜国产精品视频| 一本久道久久综合| 日韩欧美一区二区三区四区| 欧美h视频在线| 久久久久久久有限公司| 国产一区二区三区黄| 国产精品区一区| 先锋影音一区二区三区| 国产伦精品一区二区三区视频黑人| 亚洲全部视频| 国产伦精品一区二区三区四区免费 | 香蕉久久夜色| 久久国产欧美精品| 波多野结衣精品久久| 香蕉久久夜色| 国产一区二区三区色淫影院| 欧美大陆一区二区| 视频在线99| 欧美日产一区二区三区在线观看| 韩日精品在线| 另类av一区二区| 韩国成人一区| 伊人久久大香线蕉精品| 影音先锋国产精品| 韩国一区二区三区美女美女秀| 亚洲乱码一区二区三区| 一区二区三区不卡在线| 欧美日韩蜜桃| 国产女优一区| 欧美日韩在线精品| 欧美精品日韩| 久久久久综合| 亚洲成人网上| aa日韩免费精品视频一| http;//www.99re视频| 免费在线成人av| 欧美xxx在线观看| 久久久久99| 亚洲在线欧美| 欧美精品综合| 久久精品日产第一区二区三区精品版 | 国模一区二区三区私拍视频| 中文字幕一区二区三区最新| 99视频+国产日韩欧美| 久久99国产精品99久久| 国产精品mv在线观看| 国产精品theporn88| 国内精品二区| 在线观看免费91| 国产乱人伦精品一区二区| 久久久久九九九| 在线免费观看欧美| 国产精品一区在线播放| 欧美日韩精品免费看| 国产一区二区三区奇米久涩| 欧美另类综合| 噜噜噜噜噜久久久久久91| 亚洲美女一区| 亚洲人成网站在线播放2019| 99国产在线| 亚洲国产裸拍裸体视频在线观看乱了中文 | av一区二区三区免费| 女生裸体视频一区二区三区| 999久久久| 亚洲黄色在线| 亚洲一区二区三区免费看| 99久久精品无码一区二区毛片 | 亚洲三级影院| 久久国产精品免费一区| 国产亚洲永久域名| 欧美日韩99| 色就是色欧美| 久久99热只有频精品91密拍| 亚洲一区激情| 亚洲激情一区二区三区| 亚洲在线观看一区| 久久伊人资源站| caoporen国产精品| 亚洲一区二区精品在线| 欧美日本国产精品| 视频一区视频二区视频三区高| 国产精品久久久久久久久久久久冷| 一本一本久久| 极品少妇一区二区三区| 久久免费看av| 亚洲在线不卡| 极品中文字幕一区| 欧美精品亚洲| 影音先锋欧美资源| 亚洲精品日韩成人| 欧美亚洲免费在线| 免费久久99精品国产自| 国产偷久久久精品专区| 老牛嫩草一区二区三区日本| 国产精品手机视频| 国产精品美女黄网| 国产精品五区| 久久国产高清| 91麻豆精品秘密入口| 久久综合亚州| 久久久久久久欧美精品| 亚洲国产婷婷| 一区二区视频在线观看| 欧美视频1区| 国产综合欧美在线看| 国一区二区在线观看| 激情欧美一区| 亚洲三级国产| 国产农村妇女精品一区二区| 亚洲欧美日韩专区| 91久久精品一区二区别| 亚洲欧美日韩专区| 久久精品成人| 国产精品乱码| 欧洲av一区| 伊人久久大香线蕉av一区| 清纯唯美一区二区三区| 欧美中日韩一区二区三区| 午夜精品美女久久久久av福利| 欧美在线播放一区| 亚洲第一伊人| 亚洲欧洲一区二区在线观看| 久久精品日韩| 欧美日韩免费精品| 欧美精品成人一区二区在线观看| 亚洲国产精品一区在线观看不卡 | 久久婷婷开心| 午夜欧美一区二区三区免费观看| 午夜久久福利| 亚洲综合99| 久久综合福利| 国产精品yjizz| 欧美日韩一区二区三| 亚洲精品1区2区| 久久综合激情| 色综合久久88色综合天天提莫| 国产综合色产| 99久久久久国产精品免费| 欧美资源一区| 亚洲精品日本| 麻豆91av| 影院欧美亚洲| 国产亚洲欧美一区二区三区| 一本久道久久综合| 免费在线观看成人av| 51国偷自产一区二区三区| 亚洲国产激情一区二区三区| 一区二区三区免费看| 国产综合 伊人色| 国产一区久久| 久久精品欧美| 一本久久综合| 国产91精品一区二区绿帽| 香蕉久久免费影视| 国产精选一区二区| 亚洲国产精品综合| 久久综合九色99|